Skip to content

pjroth/terraform-provider-bitbucket

 
 

Repository files navigation

This is a fork of thamdub/terraform-provider-bitbucket for security purposes only (code review).

Maintenance status

Unmaintained, maintainers needed! I just took the archived repository, and released it to the Terraform Registry. I'm not a Go developer, so I'll not be able to maintain this repository in the long run. PRs are welcome, and I'll try to merge and release them as frequently as possible.

If you would like Atlassian to take ownership of the provider, you can voice your opinion at BCLOUD-17209.

History

  • Initally created during an Atlassian 24h hackathon by @cwood
  • Maintained by HashiCorp and @cwood with contributions from the community
  • Archived by HashiCorp due not being maintained (likely related to not being published to the registry)
  • Forked and published to Terraform Registry by @aeirola

Terraform Provider

Requirements

  • Terraform 0.12.x
  • Go 1.11 (to build the provider plugin)

Building The Provider

Clone repository to: $GOPATH/src/github.com/terraform-providers/terraform-provider-bitbucket

$ mkdir -p $GOPATH/src/github.com/terraform-providers; cd $GOPATH/src/github.com/terraform-providers
$ git clone git@github.com:terraform-providers/terraform-provider-bitbucket

Enter the provider directory and build the provider

$ cd $GOPATH/src/github.com/terraform-providers/terraform-provider-bitbucket
$ make build

Using the provider

Username/apppassword creds can be obtained at https://bitbucket.org/account/settings/app-passwords/

OAuth creds can be obtained at https://bitbucket.org/%WORKSPACE_ID%/workspace/settings/api

# Configure the Bitbucket Provider
provider "bitbucket" {
  username = "GobBluthe"       # or env BITBUCKET_USERNAME
  password = "idoillusions"    # or env BITBUCKET_PASSWORD, you can also use app passwords
  oauth_key = "OAUTHKEY"       # or env BITBUCKET_OAUTH_KEY
  oauth_secret = "OAUTHSECRET" # or env BITBUCKET_OAUTH_SECRET
}

# Manage your repository
resource "bitbucket_repository" "infrastructure" {
  owner = "myteam"
  name  = "terraform-code"
}

# Manage your project
resource "bitbucket_project" "infrastructure" {
  owner = "myteam" # must be a team
  name  = "terraform-project"
  key   = "TERRAFORMPROJ"
}

Developing the Provider

If you wish to work on the provider, you'll first need Go installed on your machine (version 1.11+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin to your $PATH.

To compile the provider, run make build. This will build the provider and put the provider binary in the $GOPATH/bin directory.

$ make build
...
$ $GOPATH/bin/terraform-provider-bitbucket
...

In order to test the provider, you can simply run make test.

$ make test

In order to run the full suite of Acceptance tests, run make testacc.

Note: Terraform needs TF_ACC env variable set to run acceptance tests

Note: Acceptance tests create real resources, and often cost money to run.

$ make testacc

About V1 APIs

This provider will not take any PRs about the v1 apis that dont have v2 equivalents. Please only focus on v2 apis when adding new featues to this provider.

Packages

No packages published

Languages

  • Go 94.2%
  • Shell 3.2%
  • Makefile 2.6%