Skip to content

Azure Pipelines CI

Guillaume Piolat edited this page Sep 23, 2019 · 10 revisions

This is step-by-step guide on how to setup Azure Pipelines Continuous Integration for building Dplug-based plugins.

  1. Add an azure-pipelines.yml to your repository. Commit and push. Follow the template below to fill it.
  2. Register Azure DevOps account here.
  3. Click New project in the Azure DevOps dashboard. Optionally make project public if you want people to access the builds.
  4. Here is a good time to add aeffect.h and aeffectx.h as secure files. See below..
  5. Click Pipelines in the left panel and click Create Pipeline.
  6. Select one the options for source repositery (such as Github (YAML) or Bitbucket (YAML) and fill the repositery information.
  7. Press Confirm password and then Approve and Install to give Azure Pipelines access to your repository.
  8. Click Starter pipeline to create new file in your repository. UI will prompt you to commit it to your repository as the last step. This will create and commit azure-pipelines.yml file in the root of the repository. Alternatively select Existing Azure Pipelines YAML file and choose already committed file in your repository. This way you can choose the filename and path.
  9. To access build artifacts click the build and the Artifacts column on the right
  10. Press Save and Run to finish the setup.

Creating azure-pipelines.yml file

You can take inspiration from the Dplug Azure configuration file: https://github.com/AuburnSounds/Dplug/blob/master/azure-pipelines.yml

Uploading aeffect.h and aeffectx.h as secure files

In order to build VST2 plugins you need to have aeffect.h and aeffectx.h headers in VST2_SDK\pluginterfaces\vst2.x directory during the build, with VST2_SDK environment variable pointing to directory containing pluginterfaces directory.

If your repository is private you may include those files directly in your repository. But for public repository you want to them to be hidden. For this you can use secure files feature:

  1. Go to your project on Azure DevOps
  2. Open Pipelines
  3. Click Library
  4. Click Secure files
  5. Add aeffect.h and aeffectx.h files
  6. In Pipeline permissions, check the "Authorize for use in all pipelines"
  7. Uncomment download of secure files tasks in the azure-pipelines.yml file
  8. On first run notification will pop up, you need to grant pipeline the access to secure files

Extra links

D projects using Azure pipelines