Skip to content

Commit

Permalink
Add README
Browse files Browse the repository at this point in the history
  • Loading branch information
tdabasinskas committed Jan 26, 2023
1 parent 7664494 commit 611a4c1
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 4 deletions.
67 changes: 66 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,66 @@
# Terraform Provider for Spotify Backstage
# Terraform Provider for Backstage

[![Tests](https://github.com/tdabasinskas/terraform-provider-backstage/actions/workflows/test.yml/badge.svg)](https://github.com/tdabasinskas/terraform-provider-backstage/actions/workflows/test.yml)
[![go-github release (latest SemVer)](https://img.shields.io/github/v/release/tdabasinskas/terraform-provider-backstage?sort=semver)](https://github.com/tdabasinskas/terraform-provider-backstage/releases)
[![registry](https://img.shields.io/static/v1?label=terraform&message=registry&color=blueviolet)](https://registry.terraform.io/providers/tdabasinskas/terraform-provider-backstage/latest)

The [Backstage Provider](https://registry.terraform.io/providers/tdabasinskas/terraform-provider-backstage/latest) allows [Terraform](https://terraform.io/) to
manage [Backstage](https://backstage.io) resources.

## Documentation

Official documentation on how to use this provider can be found on the [Terraform Registry](https://registry.terraform.io/providers/tdabasinskas/terraform-provider-backstage/latest).
In case of specific questions, please raise a GitHub issue in this repository.

The remainder of this document will focus on the development aspects of the provider.

## Developing

The repository and code is based on [Terraform Provider Scaffolding (Terraform Plugin Framework)](https://github.com/hashicorp/terraform-provider-scaffolding-framework), therefore
most of the official documentation on developing this provider is also applicable.

### Requirements

- [Terraform](https://www.terraform.io/downloads)
- [Go](https://go.dev/doc/install) (1.19)
- [GNU make](https://www.gnu.org/software/make/)

### Building

1. `git clone` this repository and `cd` into its directory.
2. `go instal .` to build install the provider into your `$GOPATH/bin` directory.

To be able to run the local version of the provider, please follow the
[official Terraform documentation](https://developer.hashicorp.com/terraform/tutorials/providers-plugin-framework/providers-plugin-framework-provider#prepare-terraform-for-local-provider-install).

### Testing

In order to test the provider, run the following command:

```bash
make testacc
```

This will run acceptance tests against the provider, actually spawning terraform and the provider.

### Generating documentation

This provider uses [terraform-plugin-docs](https://github.com/hashicorp/terraform-plugin-docs/) to generate documentation and store it in the `docs/` directory.
Once a release is cut, the Terraform Registry will download the documentation from `docs/` and associate it with the release version.
Read more about how this works on the [official page](https://www.terraform.io/registry/providers/docs).

## Releasing

The release process is automated via GitHub Actions, and it's defined in the workflow file [`release.yml`](./.github/workflows/release.yml).

Each release is cut by creating a GitHub release (with corresponding changelog) and pushing a [semantically versioned](https://semver.org/) tag to the default branch.

## Contributing

Contributions to the project are welcome. If you are interested in making a contribution, please review open issues or open a new issue to propose a new feature or bug fix.
Please ensure to follow the code of conduct. Any contributions that align with the project goals and vision are appreciated.
Thank you for your interest in improving the project.

## License

This provider is distributed under the Mozilla Public License v2.0 license found in the [LICENSE](./LICENSE) file.
2 changes: 1 addition & 1 deletion backstage/provider.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ func (p *backstageProvider) Metadata(_ context.Context, _ provider.MetadataReque
// Schema defines the provider-level schema for configuration data.
func (p *backstageProvider) Schema(_ context.Context, _ provider.SchemaRequest, resp *provider.SchemaResponse) {
resp.Schema = schema.Schema{
MarkdownDescription: "Use Backstage provider to interact with the resources supported by [Spotify Backstage](https://backstage.io)." +
MarkdownDescription: "Use Backstage provider to interact with the resources supported by [Backstage](https://backstage.io)." +
"You must configure the provider with proper base URL of your Backstage instance before you can use it.\n\n" +
"Use the navigation on the left to read about the available resources and data sources.\n\n To learn the basic of Terraform using this provider, " +
"follow hands-on [get started tutorials](https://learn.hashicorp.com/tutorials/terraform/infrastructure-as-code).\n\n" +
Expand Down
4 changes: 2 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
page_title: "backstage Provider"
subcategory: ""
description: |-
Use Backstage provider to interact with the resources supported by Spotify Backstage https://backstage.io.You must configure the provider with proper base URL of your Backstage instance before you can use it.
Use Backstage provider to interact with the resources supported by Backstage https://backstage.io.You must configure the provider with proper base URL of your Backstage instance before you can use it.
Use the navigation on the left to read about the available resources and data sources.
To learn the basic of Terraform using this provider, follow hands-on get started tutorials https://learn.hashicorp.com/tutorials/terraform/infrastructure-as-code.
Interested in the provider's latest features, or want to make sure you're up to date? Check out the releases https://github.com/tdabasinskas/terraform-provider-backstage/releases for version information and release notes.
---

# backstage Provider

Use Backstage provider to interact with the resources supported by [Spotify Backstage](https://backstage.io).You must configure the provider with proper base URL of your Backstage instance before you can use it.
Use Backstage provider to interact with the resources supported by [Backstage](https://backstage.io).You must configure the provider with proper base URL of your Backstage instance before you can use it.

Use the navigation on the left to read about the available resources and data sources.

Expand Down

0 comments on commit 611a4c1

Please sign in to comment.