Skip to content

maas/terraform-provider-maas

Repository files navigation

Terraform Provider for MAAS

This repository contains the source code for the Terraform MAAS provider.

Requirements

Build The Provider

  1. Clone the repository

  2. Enter the repository directory

  3. Build the provider with:

    make build
  4. (Optional): Install the freshly built provider with:

    make install

Usage

Provider Configuration

The provider accepts the following config options:

maas

provider "maas" {
  api_version = "2.0"
  api_key = "YOUR MAAS API KEY"
  api_url = "http://<MAAS_SERVER>[:MAAS_PORT]/MAAS"
}

Resources and Data Sources Configuration

The docs section contains details about each supported Terraform resource and data source.

Release process

  1. Create a new branch from master as release-vX.X.X
    git branch release-vX.X.X master
    git push -u origin release-vX.X.X
  2. Update the CHANGELOG.md with your release version, date and change details and push the changes to the new branch.
  3. Raise a PR on Github, title of the PR should be in the following format Release vX.X.X
  4. Merge the PR into master, taking a note of the merge commit which is created
  5. Go to Releases on Github
  6. Click Draft a new release
  7. On Target choose the latest merge commit you want to release for
  8. Set the tag to create a new tag for the version in the format "vX.X.X"
  9. Set the release title to the release version, for example v1.0.1
  10. Copy and paste the relevant CHANGELOG.md entries to the release description
  11. Click Publish release
  12. The new version should be available on the Releases page

Additional Info

Testing

Unit tests run with every pull request and merge to master. The end to end tests run on a nightly basis against a hosted MAAS deployment, results can be found here and are checked on each PR, with a warning if failed.