As part of the Octopus Deploy installation, a number of extensions are provided out-of-the-box. All of these extensions are managed as open-source projects on GitHub. They include:
- UsernamePassword authentication
- Active Directory authentication
- Guest authentication
- OpenID Connect based authentication (e.g. Azure AD and GoogleApps)
One of the reasons behind open-sourcing these projects is to allow users to customize them if they need to. For example, Active Directory configurations can vary dramatically and for some users it may make sense to modify parts of our implementation.
Customizing the code
The simplest option for customizing the code is to fork the project in GitHub. This will allow you to keep up to date with any changes we might make and you'll be able to submit PRs.
Building the code
Included in the project repositories are the Cake build scripts we use to build the extensions. These are used to both compile the dlls and produce the NuGet packages that we use for distribution. To use a customized extension, you only need the compiled dll.
Installing a custom extension
Once you've compiled the dll, installing it is as simple as putting it in the right folder and restarting the Octopus Deploy server.