In this article
Octopus has been a great success in the SaaS Forsta Plus for some time where it has been used to support the Continuous Deployment model of software deployment - where code is checked in and subsequently pushed to internal test systems on a daily basis.
Although On-premise customers (in most cases) do not need the updates on the same frequency as the SaaS site, they can still benefit from the Continuous Deployment-style system which includes:
- Automation - Automated download of updates.
- Centralization - centralized management of all servers within an environment (staging/production).
- Simplified deployment - 1-click deployment of Forsta Plus to all servers in an environment (staging/production).
This has obvious benefits over the labour-intensive method that is required by the current MSI installer.
What is Octopus Deploy
Octopus Deploy is a third-party application, developed by a company with the same name. The application is used by Forsta for orchestrating application package deployment. Where in the past you were required to log on to all servers and run a setup, Octopus Deploy will, via the use of agents running as services on all Forsta Plus application servers, ensure that deployment of new versions of Forsta Plus code is handled efficiently and securely.
Security in Octopus Deploy
In Octopus Deploy, as is the case with Forsta Plus, an application security review by an independent party is performed regularly, at a minimum on major releases. Major findings will be remediated as a part of this process. A report of this application test is available on request. The Octopus Deploy server typically requires access to the package repositories hosted by Forsta to download new versions of the Forsta Plus code. The access to these download sites are regulated via the use of Company-wide usernames and passwords. Outbound access from the server hosting the Octopus application is sufficient. Furthermore, the Octopus Deploy server needs to be able to reach all application servers running the Forsta Plus code to orchestrate the code deployment.
New Application Structure
Forsta Plus will be made available via NuGet feeds, containing versioned NuGet packages, rather in one large MSI installer. The Octopus Server will have the information on which NuGet package versions need to be installed to make up a Forsta Plus release.
The underlying reason for this is that we want to be able to deploy new fixes and features more often, in a safe way. To achieve this, the Forsta Plus application has over a course of several years been broken into smaller, independent pieces, moving into a Microservice infrastructure.
A NuGet package is in effect a zip file. One NuGet package comprises everything necessary for running a Forsta application.
Software Deployment Infrastructure
This is a connectivity diagram of the Octopus Server infrastructure.
Figure 1 - Diagram of Octopus infrastructure and required external connections
The Forsta Plus Artifactory section represents the Artifactory feed your Octopus server will connect to do download updated releases.