BuildMaster Documentation

Creating Custom Extensions

The quickest way to create a custom extension is by using the Create Auto-Deploying Extension Application feature in BuildMaster (v5.3 and higher). The feature will quickly allow you to point it toward your custom extenion source code, and then auto create a build and deployment plan in BuildMaster so that it will act as any other standard extension.

Creating Resource Credentials for Source Control

Creating resource credentials in BuildMaster will allow you to pull source code directly from the repository housing your extension code. For this example we'll use GitHub as our repo, and we'll be creating an extension for Amazon.

BuildMaster, of course, has an extension for Amazon, but the steps for your own custom extension would be the same.

To create resource credentials go to the Administration page, and click on "Resource Credentials" under "Global Components" then click "Create Credential". You'll need to make sure you already have your provider extension installed in BuildMaster. As mentioned in this case it's GitHub.

Once you've selected the credential type, fill in the necessary fields to connect to the repository and click "Save Credential".

Importing and Building the Extension

At the bottom of the BuildMaster extension section there is a button labeled "Create Auto-Deploying Extension Application".

Clicking this button will allow you to set the fields with your source control type and credentials, the name of your extension, and optionally a repository URL if it's not the same as the one in the credentials.

After clicking "Create" BuildMaster will create a new application for that extension with preset plans to build and deploy that extension to BuildMaster.

From the new application overview page click "Releases" > "Create Release" > "Create Release" > "Create Package". BuildMaster will import and build the extension.

The extension can now be deployed. BuildMaster will deploy the extension to itself and treat it as any other extension that is installed. This will also trigger a restart of the BuildMaster service.


Next Steps

Now that you've successfully automated the deployment of your extension, updating it is as simple as checking in a code change and creating a new build within BuildMaster then deploying it to BuildMaster!