Version control for step tempates

(Alan) #1

Hi, are there any plans to integrate OD with a source control system (TFS, Git) in order to version control step templates?
With version 3.X, are there any hooks in place that would allow us to write a plug in to basically allow people to check in/out step template scripts during editing?

Thanks,
Alan

(Daniel Fischer) #2

Hi Alan,

Thanks for getting in touch! Currently there are no options for directly integrating OD with source control. You are however, able export it from Octopus and then import it into your source control.
This is not an automated process, however, you would be able to script something yourself. You would lose the UI but be able to manage it at your own level, how you wish to.

As a part of subscriptions coming in 3.5 you will be able trigger a push based of an audit event that you could use to script and export the templates. You could store the template change in source control once exported.
This will provide some automation but you will need to do the scripting for it.

Regards,
Daniel

(Micheal Schexnayder) #3

This is something that can be added to a future release?

I see two major benefits to this:

  1. First with real version control, it becomes very easy to see what has changed between versions, especially if there is some kind of diff’ing tool include. Much like modern Git or Subversion clients provide.
  2. (and personally most important) Prevent forcing of users to upgrade to latest version of a step template/script module to update settings.

#2 above has really forced us to re-evaluate how modifications to step templates occur on our systems; not just from a development standpoint but an impact to our customers standpoint. Essentially we’ve moved to a model where we artificially version the step templates with a version embedded in the name:

  • My template (v1.0)
  • My Template (v1.1)

In this model step templates become immutable (except to fix bugs). New features are added as a new version of the template, there by not disturbing those who are using the older versions but making the new one available to those who want/need to use it.

Adding a version control system under the covers and allowing users to choose which versions of a template to use, during process setup, would go a long way to helping with this issue.

(Daniel Fischer) #4

Hi Micheal,

Thanks for getting back! We agree that this is something that many users would benefit from and it looks like the community feels the same way. I have added this to an existing UserVoice suggestion as it would probably be done at the same time. Best thing you can do here is vote and leave a comment with your thoughts. :slight_smile:
Link: https://octopusdeploy.uservoice.com/forums/170787-general/suggestions/15698781-version-control-configuration

Let me know if you have any further questions or if you run into any issues.

Regards,
Daniel

(system) closed #6