Project template

Is it possible to make a project template that i can base new projects on. So for example with some default variables and steps in it.

Not exactly, but you can set up one project as your template and then go to Project->Settings->Clone to copy it each time you need to create a project from the template.

Paul

Hi,

Is template builds a feature you are considering?
We have a large amount of projects, and while the clone project works, its very tedious to update all projects when changes in deploy procedures or variables occur.

Would be great to have this on the trello board, to allow for voting.

Hi Alexander,

We’re building this into Octopus 2.0 (work has already started); you’ll be able to add deployment steps to a project group, and those steps will apply to all projects in the group. This way, you can set up the group with common steps, and then add any custom steps to the individual projects.

Paul

Hi Paul,

Is there any update on this feature? I am using the RC3 of Octopus 2.0, and I don’t see any way of having projects or Processes shared between a Project group.

Hi Chris,

We ended up dropping this feature in favour of a “Library” concept that currently only supports variable sets. You may be able to get some of the benefits of shared steps by creating shared variable sets for duplicate configuration. Let me know some more details of your scenario if you’d like a hand with this.

Regards,
Nick

So my scenario is deployment of multiple steps to many different clients. Each client would need the same exact steps, only with different variables for configuration. While I understand it is possible to use a single project and deploy to multiple environments individually with this, each client also had a Test and Production environment that we would like to easily promote to. The current interface makes having a single project confusing, trying to track ~20 different clients and what versions they are on in both test and prod.

The other issue is that using the variable library does not allow me to change the values without adding all the variables individually for that project. If I have, say, 15-20 variables per client, I’d like to have a template to easily add those variables and then put in the values I need.

If I could clone a project, I could have a different project for each client, and clone from a project with all the variables required, only with blank values. Then I could easily promote to prod for each client, and it would be easy to ensure all variables are set for each client.

If there is an easier way to do this, I’d love to know. If it’s not something that is in the works, I can also look into copying the project directly in the database, but I’d rather avoid that process if necessary.

Hi Chris,

We have an item down in our 2.1 list to implement this, so we’re reasonably confident of getting to it soon: https://github.com/OctopusDeploy/Issues/issues/310

In the meantime, you could possibly create the projects individually, then manipulate the associated documents in RavenDB, but it would be relatively easy to break Octopus irreparably or cause other unintended side-effects. Manually duplicating the steps now while we work on Clone is the safest bet.

Thanks for the feedback, sorry about the hassle.

Nick