diff --git a/README.md b/README.md index b54260a..c52e9bf 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,17 @@ -Bitbucket Server Terraform Provider -================== +# Bitbucket Server Terraform Provider [![Build Status](https://travis-ci.org/gavinbunney/terraform-provider-bitbucketserver.svg?branch=master)](https://travis-ci.org/gavinbunney/terraform-provider-bitbucketserver) [![codecov](https://codecov.io/gh/gavinbunney/terraform-provider-bitbucketserver/branch/master/graph/badge.svg)](https://codecov.io/gh/gavinbunney/terraform-provider-bitbucketserver) [![user guide](https://img.shields.io/badge/-user%20guide-blue)](https://gavinbunney.github.io/terraform-provider-bitbucketserver) -This terraform provider allows management of bitbucket server resources. - -> Note: The bundled terraform bitbucket provider works for bitbucket cloud - this provider is for bitbucket server only! +This terraform provider allows management of **Bitbucket Server** resources. The bundled terraform bitbucket provider works only for Bitbucket Cloud. ## Using the provider Download a binary for your system from the release page and remove the `-os-arch` details so you're left with `terraform-provider-bitbucketserver`. -Use `chmod +x` to make it executable and then either place it at the root of your Terraform folder or in the Terraform plugin folder on your system. +Use `chmod +x` to make it executable and then either place it at the root of your Terraform folder or in the Terraform plugin folder on your system. -### Quick Start +See [User Guide](https://gavinbunney.github.io/terraform-provider-bitbucketserver) for details on all the provided data and resource types. + +### Example ```hcl provider "bitbucketserver" { @@ -34,45 +33,25 @@ resource "bitbucketserver_repository" "test" { } ``` -See [User Guide](https://gavinbunney.github.io/terraform-provider-bitbucketserver) for details on all the provided data and resource types. - ---- - ## Development Guide ### Requirements - [Terraform](https://www.terraform.io/downloads.html) 0.12.x -- [Go](https://golang.org/doc/install) 1.11 (to build the provider plugin) +- [Go](https://golang.org/doc/install) 1.11+ + - correctly setup [GOPATH](http://golang.org/doc/code.html#GOPATH + - add `$GOPATH/bin` to your `$PATH` +- clone this repository to `$GOPATH/src/github.com/gavinbunney/terraform-provider-bitbucketserver` -### Building The Provider +### Building the provider -Clone repository to: `$GOPATH/src/github.com/gavinbunney/terraform-provider-bitbucketserver` +To build the provider, run `make build`. This will also put the provider binary in the `$GOPATH/bin` directory. ```sh -$ mkdir -p $GOPATH/src/github.com/terraform-providers; cd $GOPATH/src/github.com/terraform-providers -$ git clone git@github.com:gavinbunney/terraform-provider-bitbucketserver -``` - -Enter the provider directory and build the provider - -```sh -$ cd $GOPATH/src/github.com/gavinbunney/terraform-provider-bitbucketserver $ make build ``` -### Developing the Provider - -If you wish to work on the provider, you'll first need [Go](http://www.golang.org) installed on your machine (version 1.11+ is *required*). You'll also need to correctly setup a [GOPATH](http://golang.org/doc/code.html#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. - -```sh -$ make bin -... -$ $GOPATH/bin/terraform-provider-bitbucketserver -... -``` +### Testing In order to test the provider, you can simply run `make test`. @@ -80,10 +59,16 @@ 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:* Acceptance tests create real resources, and often cost money to run. +In order to run the full suite of acceptance tests, run `make testacc-bitbucket`. ```sh -$ make testacc +$ make testacc-bitbucket +``` + +Alternatively, you can manually start Bitbucket Server docker container, run the acceptance tests and then shut down the docker. + +```sh +$ scripts/start-docker-compose.sh +$ make testacc +$ scripts/stop-docker-compose.sh ```