Migrate configuration from one SPACE on DEV to existing PROD

(Veljkosbbb) #1

Hi,

recently we installed Octopus and created couple of Spaces with Projects, Tenants, Variables within it.
Our collegues already have PROD environment with database which can not be override.

So we would like to export just one specific SPACE with all variables, environments, projects, steps etc. and to migrate solely that configuration on PROD database without doing the database dump (since of course we should not touch any existing spaces over there).
Please I am just starting with Octopus - detailed instructions will be highly appreciated.
And important question: Is there anything which cannot be migrated in this way? That must be performed manually on PROD database?

Thanks in advance for detailed feedback!

(Michael Richardson) #5

Hi,

In the hope of being as honest as possible, I’ll say upfront we may not have great answer here, depending on the specifics of your scenario.

A couple of follow up questions:

  1. On the Octopus server you wish to import into (i.e. PROD), is there only the single, default space? Or are there multiple spaces?
  2. The space you wish to export, is it the Default space?
(Veljkosbbb) #6

Hi,

on prod there are multiple already existing spaces.
For us new space will be created.
No it is not Default space that we are using.

I saw that only supported is to export projects and releases.
What is the difference - what will be included in releases export that will not be included in projects export? What should be used to export couple of project groups with many projects on it what will be the suggested way?

Thanks

(Jason02) #7

For what it’s worth there is a python library that supports migrating spaces. I haven’t tried it yet though.

(Veljkosbbb) #8

Hi jason2, thanks for this I will take a look but I think we should use more native solution since we are not the only one who are involved into this migration but also the other side as well.

But what is the difference - what will be included in releases export that will not be included in projects export? What should be used to export couple of project groups with many projects on it what will be the suggested way?

I suppose that many used this export/import feature.
So in what way I should do this migration - it is OK if some steps needs to be done manually I am just wondering what they are, what I can cover with automatic export (to use Project or Release export) and what I will not be able to do automatically but manually actions will be required.

(Veljkosbbb) #9

Hi,

I see now that it is recommended to use Migrator to export data.
But with partial export it is not explained what can be exported - for example if we can export projects groups, projects… what dependencies will have to be created manully…? I think this is missing as general explanation…
Can someone please suggest me concrete steps that I should take in order to export all my Variable Sets, all my projects, project group from specific Space etc. without exporting environments, deployment targets, tenants etc.?
I do not wish to export the whole database and octopus configuration, I want to export solely one space with its projects on production env. where it already exists with other spaces so I am still confused what will be the proper way to execute this migration.

Thank you in advance!

(Michael Richardson) #10

The migrator partial-export command accepts either a project or a project group, and will export everything associated with the project. You don’t need to create any dependencies manually. The export will include environments, library variable sets, tenants, etc.

So the steps would be:

  1. Export a project (or project group) from the source server using the partial-export command
  2. Import the project into the destination server using the import command

Both servers should be running the same version of Octopus.

If no space exists on the target server with the same name as the exported space, then the space will be created while importing. You can find more information about how the migrator matches documents on this page.

There is no way to export an entire space, unfortunately. There is also no way to export only a project, without environments, tenants, etc. Could you explain further why you want to do this?

I would strongly recommend taking a database backup of the destination server before attempting the migration, and reading this document first.

And if you do encounter any issues, or have any further questions, please reach out and we’ll certainly do our best to assist.

1 Like
(Veljkosbbb) #11

Hi @Michael_Richardson

thank you very much for your great response!
Only just one more thing is confusing me: How do I specify a SPACE from which I would like to export specific Project or ProjectGroup if the same Project or ProjectGroup name exists within multiple Spaces and I want to export it solely from one SPACE on my DEV environment?
Or this will export named Project/ProjectGroup from both Spaces?

(Michael Richardson) #12

For others reading this thread, this question was answered here.