Multi Tenancy

(prakash) #1

We are moving towards implementing Multi Tenant deployment for one of our client. I want to know the requirements and factors necessary for us to move the architecture from Single to Multi-tenant.

(Kenneth Bates) #3

Hi Prakash,

Thanks for getting in touch! That’s great to hear looking to take advantage of the power of our multi-tenancy feature. Firstly, I’d like to point out that we have a very comprehensive section in our documentation covering this feature, with examples showing architectural setups. I think this will be very helpful in planning out your architectural model.

In a nutshell, the architectural changes needed are to:

  1. Create a tenant for your client,
  2. Enable multi-tenanted deployments in your project, and connect the tenant to it, and
  3. Connect the tenant to a deployment target

You can then provide tenant-specific variable values to be applied on deployments to your tenants. We have a great doc page on Working with tenant-specific variables.

From here, when deploying a release you can select a tenanted deployment, and specify which tenant/tenant tags to deploy to.

I hope this helps get you going! Please don’t hesitate to reach out if you have any questions or concerns going forward. :slight_smile:

Best regards,

Kenny

(prakash) #4

Hello Kenny,

Thank you for the immediate assistance.
The other question is about the octopus reporting. I read that it provides the ability to get the report of the deployments being done using the octopus but i am not sure how do i extract and export that information from octopus?

Regards,
Prakash Vaza

(Kenneth Bates) #5

Hi Prakash,

You’re very welcome! Reporting data isn’t displayed in the web portal, however we expose the raw data. You can get this raw data as an XML feed at the following URL: http://<OCTOPUS-SERVER>/api/reporting/deployments/xml?apikey=<API-KEY>.

We have a documentation page covering the reporting feature which provides an XML spreadsheet template that you can use to consume your XML feed.

I hope this helps! Let me know how you go or if there’s anything else I can help with. :slight_smile:

Best regards,

Kenny

(prakash) #6

Hi Kenny,

I am getting the page not found message on accessing the URL you provided and putting Octopus server name and the api key.

(Kenneth Bates) #7

Hi Prakash,

Thanks for following up. The URL should be https://localhost/api/reporting/deployments/xml?apikey=API-xxx (no /app# in the URL). Let me know if that works for you! :slight_smile:

Best regards,

Kenny

(prakash) #8

That was quick :slight_smile: Yes it did work for me and thank you so much the help. Appreciate your time.
Will keep troubling you with the Multi Tenancy questions though!

(Kenneth Bates) #9

Hi Prakash,

That’s great to hear that worked, and you’re very welcome! Feel free to shoot through any multi-tenancy related questions anytime. :slight_smile:

Best regards,

Kenny

(prakash) #10

Hey Kenny,

I am using the octopus version 3.16.7 where i have created a master project in which i have 3 other sub projects. The problem is when i am creating a new release for my master project its not triggerring the latest package from the sub projects. How do i change this versions from the master project. I see that it the latest octopus version to update the package version while creating a release but not with the version we are using.

Regards,
Prakash

(Kenneth Bates) #11

Hi Prakash,

Thanks for following up! I assume you’re using the community contributed step template Chain Deployment to create and deploy the releases of the sub projects, is that correct?

I suspect the reason why it’s not selecting the latest package version for your sub projects would come down to the package version rules as defined in your sub projects. Version rules, as defined in your channels, control which package versions are selected when a release is created in that channel. Is it possible you have these configured in a way that’s preventing the latest version from being selected?

If you manually create a release of a sub project in the web portal, is the same package version being automatically selected?

I hope this narrows down the behavior you’re seeing! Let me know how you go or if you have any further questions moving forward. :slight_smile:

Best regards,

Kenny

(prakash) #12

Yes Kenny I am using the Chain deployment. The issue is i have the other project created the same way and it picks up the latest release from the sub projects. I have compared both the master projects and didn’t find any difference. Both the master projects are using the same Channel and we have no specific version rules defined for that channel.

While creating the release in my sub project i get the latest package to choose but when i trigger the release from master it picks up some other package.

Regards
Prakash Vaza

(prakash) #13

Kenny, one thing i noticed is when i create release from Master project it hits the older release in the sub projects which is not at all deployed anywhere.A older release which was never deployed. Is there any setting which says to hit the older release which didnt get deployed at all?