Octopus traing environment

modelling

(g.reijn) #1

Dear support,

Currently we have a default lifecycle of test, acceptance and production environment. Now I got a question of a user, if we can create a training environment. What it already saids, it is for training purposes.

I’m curious how I can deal with this in a release cycle? Should I create a new lifecycle for this? Or is there another way?

Please assist.

Regards,

Gijs


(Kenneth Bates) #3

Hi Gijs,

Thanks for getting in touch! You can definitely create a new environment and lifecycle which uses this environment for training purposes. However, what may be the best option would be to create a testing instance. With each Octopus license, you’re allowed 3 separate and concurrent Octopus instances, and people often have a dedicated testing instance to keep everything isolated from their production instance. We have a great doc page on creating and managing these instances.

Would this be a better option going forward? Let me know what you think and if you have any further questions. :slight_smile:

Kind regards,

Kenny


(g.reijn) #4

Dear Kenny,

Thanks for your reply. Only I don’t really think that is a good approach.

We only need a training environment to release to. Not a Octopus training instances. If we go this way, then we also have to maintain more.

Also, there is only a project that needs this training environment. Can I only create a lifecycle then for that specific project or does it inherit on all the projects?

Please let me know.

Kind Regards,

Gijs


(Kenneth Bates) #5

Hi Gijs,

Thanks for following up! A project can have its own unique lifecycle, so you can definitely create a new lifecycle for this project specifically! This sounds like a good solution in your case to prevent other projects from deploying to your dedicated training environment.

In your web portal under Library > Lifecycle, you can define this lifecycle and include your training environment into it. Our docs outline how you can do this in more detail. :slight_smile:

Once that’s done, you’d need to change the lifecycle that this project uses. This can be done in Project > Process page as shown in the following screenshot.

I hope this helps! Let me know how you go or if you have any further questions.

Best regards,

Kenny


(g.reijn) #6

Dear Kenny,

Thank you for your reply and details, only this is not what I was looking for I suppose.

Now the default lifecycle is also adjusted for all the projects when I’m adding an environment. Maybe I am misunderstanding it a bit when using those lifecycles, because I can now just use the default one because it is added there now as well.

Let me explain it a little bit more.

All our projects are using a default lifecycle of test, acceptance and production. Now I got a question from a user to have a training environment with it as well. But I do not really want to show this environment for all the projects as not all the projects needs this training environment.

Also we are still not sure if we are going to have a dedicated training environment. Rather maybe want to deploy it together on our acceptance environment as a separate website with it’s own database. What are your thoughts about this? Have you ever seen such configuration?

Please let me know.

Thank you.

Gijs


(Kenneth Bates) #7

Hi Gijs,

Thanks for following up! You could create a unique lifecycle separate from your standard test > acceptance > production lifecycle (something like training > test > acceptance > production) and assign this single lifecycle to the project you want the training environment on. You can also define this as an optional phase, so it doesn’t have to go through training before being promoted through the standard environments.

You can also definitely deploy another website/database from the same deployment process. You can scope this step to only to the acceptance environment, and if you have a dedicated training Tentacle set up with a unique machine role (i.e. training), you can scope this step to that role as well. This will mean this step only runs on machines with the training role in the acceptance environment.

I hope this helps! Don’t hesitate to reach out if you have any further questions going forward. :slight_smile:

Kind regards,

Kenny


(g.reijn) #8

Hi Kenneth,

Is that also possible without adjusting the default lifecycle? I couldn’t find a way now for creating such a lifecycle without modifying the default lifecycle (Test -> Acceptance -> Production).

Kind Regards,

Gijs


(Kenneth Bates) #9

Hi Gijs,

Thanks for following up! You can certainly create another lifecycle and use different ones for each project if you’d like. In your web portal under Library > Lifecycles, you can click the ADD LIFECYCLE button and define which environments the project that uses it follows. In this page, you can manage all of your different lifecycles. If you don’t see the ADD LIFECYCLE button here, then you would want to ensure the user you’re signed into Octopus with has the CreateLifecycle permission.

In your project that you want to use this lifecycle in, you can click CHANGE under the Lifecycle section in your Project’s Process page, as shown in my previously attached screenshot.

I hope this helps get you going!

Best regards,

Kenny


(g.reijn) #10

Kenneth,

When I’m trying to create another lifecycle, it only gives me the following environments:

image

This is exactly what I mean “without” adjusting the whole lifecycle for all the projects. Can you explain me how I can create for example Test -> Acceptation -> Production -> Training without adding that environment? Or is that not possible?

Regards,

Gijs


(Kenneth Bates) #11

Hi Gijs,

Thanks for following up! I’m sorry I didn’t clarify that. You need to create this new environment in order to add it to a new lifecycle. You can include this one environment only into this one lifecycle without having to add it to the other lifecycle. You can add a new environment in your web portal under Infrastructure > Environments. Would this work for your needs? :slight_smile:

Best regards,

Kenny


(g.reijn) #12

Hi Kenny,

I suppose the thing that I’m looking for isn’t really possible in the way how I want it. Thanks for your help and clarification.

Regards,

Gijs