-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
31 additions
and
47 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,64 +1,48 @@ | ||
# Terraform Provider Scaffolding (Terraform Plugin Framework) | ||
<p align="center"> | ||
<img alt="Lynx Logo" src="https://www.vectorlogo.zone/logos/hashicorp/hashicorp-icon.svg" width="180" /> | ||
<h3 align="center">Lynx Terraform Provider</h3> | ||
<p align="center"> | ||
<a href="https://github.com/Clivern/Lynx/actions/workflows/ci.yml"> | ||
<img src="https://github.com/Clivern/Lynx/actions/workflows/server_ci.yml/badge.svg"/> | ||
</a> | ||
<a href="https://github.com/Clivern/Lynx/releases"> | ||
<img src="https://img.shields.io/badge/Version-0.10.1-1abc9c.svg"> | ||
</a> | ||
<a href="https://hub.docker.com/r/clivern/lynx/tags"> | ||
<img src="https://img.shields.io/badge/Docker-0.10.1-1abc9c.svg"> | ||
</a> | ||
<a href="https://github.com/Clivern/Lynx/blob/master/LICENSE"> | ||
<img src="https://img.shields.io/badge/LICENSE-MIT-orange.svg"> | ||
</a> | ||
</p> | ||
</p> | ||
<br/> | ||
|
||
_This template repository is built on the [Terraform Plugin Framework](https://github.com/hashicorp/terraform-plugin-framework). The template repository built on the [Terraform Plugin SDK](https://github.com/hashicorp/terraform-plugin-sdk) can be found at [terraform-provider-scaffolding](https://github.com/hashicorp/terraform-provider-scaffolding). See [Which SDK Should I Use?](https://developer.hashicorp.com/terraform/plugin/framework-benefits) in the Terraform documentation for additional information._ | ||
|
||
This repository is a *template* for a [Terraform](https://www.terraform.io) provider. It is intended as a starting point for creating Terraform providers, containing: | ||
### Versioning | ||
|
||
- A resource and a data source (`internal/provider/`), | ||
- Examples (`examples/`) and generated documentation (`docs/`), | ||
- Miscellaneous meta files. | ||
For transparency into our release cycle and in striving to maintain backward compatibility, `Lynx` is maintained under the [Semantic Versioning guidelines](https://semver.org/) and release process is predictable and business-friendly. | ||
|
||
These files contain boilerplate code that you will need to edit to create your own Terraform provider. Tutorials for creating Terraform providers can be found on the [HashiCorp Developer](https://developer.hashicorp.com/terraform/tutorials/providers-plugin-framework) platform. _Terraform Plugin Framework specific guides are titled accordingly._ | ||
See the [Releases section of our GitHub project](https://github.com/clivern/lynx/releases) for changelogs for each release version of `Lynx`. It contains summaries of the most noteworthy changes made in each release. Also see the [Milestones section](https://github.com/clivern/lynx/milestones) for the future roadmap. | ||
|
||
Please see the [GitHub template repository documentation](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-from-a-template) for how to create a new repository from this template on GitHub. | ||
|
||
Once you've written your provider, you'll want to [publish it on the Terraform Registry](https://developer.hashicorp.com/terraform/registry/providers/publishing) so that others can use it. | ||
### Bug tracker | ||
|
||
## Requirements | ||
If you have any suggestions, bug reports, or annoyances please report them to our issue tracker at https://github.com/clivern/lynx/issues | ||
|
||
- [Terraform](https://developer.hashicorp.com/terraform/downloads) >= 1.0 | ||
- [Go](https://golang.org/doc/install) >= 1.21 | ||
|
||
## Building The Provider | ||
### Security Issues | ||
|
||
1. Clone the repository | ||
1. Enter the repository directory | ||
1. Build the provider using the Go `install` command: | ||
If you discover a security vulnerability within `Lynx`, please send an email to [[email protected]](mailto:[email protected]) | ||
|
||
```shell | ||
go install | ||
``` | ||
|
||
## Adding Dependencies | ||
### Contributing | ||
|
||
This provider uses [Go modules](https://github.com/golang/go/wiki/Modules). | ||
Please see the Go documentation for the most up to date information about using Go modules. | ||
We are an open source, community-driven project so please feel free to join us. see the [contributing guidelines](CONTRIBUTING.md) for more details. | ||
|
||
To add a new dependency `github.com/author/dependency` to your Terraform provider: | ||
|
||
```shell | ||
go get github.com/author/dependency | ||
go mod tidy | ||
``` | ||
### License | ||
|
||
Then commit the changes to `go.mod` and `go.sum`. | ||
© 2023, Clivern. Released under [MIT License](https://opensource.org/licenses/mit-license.php). | ||
|
||
## Using the provider | ||
|
||
Fill this in for each provider | ||
|
||
## Developing the Provider | ||
|
||
If you wish to work on the provider, you'll first need [Go](http://www.golang.org) installed on your machine (see [Requirements](#requirements) above). | ||
|
||
To compile the provider, run `go install`. This will build the provider and put the provider binary in the `$GOPATH/bin` directory. | ||
|
||
To generate or update documentation, run `go generate`. | ||
|
||
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. | ||
|
||
```shell | ||
make testacc | ||
``` | ||
**Lynx** is authored and maintained by [@clivern](http://github.com/clivern). |