Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nolte/terraform-provider-harbor
Harbor Terraform Provider
https://github.com/nolte/terraform-provider-harbor
goharbor harbor terraform terraform-provider
Last synced: 5 days ago
JSON representation
Harbor Terraform Provider
- Host: GitHub
- URL: https://github.com/nolte/terraform-provider-harbor
- Owner: nolte
- License: mpl-2.0
- Created: 2020-05-22T20:02:27.000Z (over 4 years ago)
- Default Branch: develop
- Last Pushed: 2023-10-31T06:44:59.000Z (about 1 year ago)
- Last Synced: 2024-06-20T05:14:57.262Z (5 months ago)
- Topics: goharbor, harbor, terraform, terraform-provider
- Language: Go
- Homepage: https://nolte.github.io/terraform-provider-harbor
- Size: 5.57 MB
- Stars: 13
- Watchers: 3
- Forks: 8
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Harbor Provider
The `terraform-provider-harbor` is used to configure an instance of [Harbor](https://goharbor.io).
This is original based on the Work from [BESTSELLER/terraform-harbor-provider](https://github.com/BESTSELLER/terraform-harbor-provider), but with some incompatible changes, like the access to the Harbor API.
[![Classic CI/CD](https://github.com/nolte/terraform-provider-harbor/workflows/Classic%20CI/CD/badge.svg)](https://github.com/nolte/terraform-provider-harbor/actions?query=workflow%3A%22Classic+CI%2FCD%22)
[![Release Flow](https://github.com/nolte/terraform-provider-harbor/workflows/Release%20Flow/badge.svg)](https://github.com/nolte/terraform-provider-harbor/actions?query=workflow%3A%22Release+Flow%22)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fnolte%2Fterraform-provider-harbor.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fnolte%2Fterraform-provider-harbor?ref=badge_shield)## Project Status
**At the Moment this Project is heavy under Construction, it is not recommended for Production use, ~~or active Forking~~ !**
**Planed Braking Changes:**
* [x] [Rename provider](https://github.com/nolte/terraform-provider-harbor/issues/3) attributes, like url etc.
* [ ] [Refectore Config Auth](https://github.com/nolte/terraform-provider-harbor/issues/10) attributes, like ldap etc.
* [ ] Use First Stable version from the Devcontainer [docker.pkg.github.com/nolte/vscode-devcontainers/k8s-operator:latest](https://github.com/nolte/vscode-devcontainers) _(not exists at the moment)_## Docs
The Documentation will be created with [mkdocs](https://www.mkdocs.org/) and generated to [nolte.github.io/terraform-provider-harbor](https://nolte.github.io/terraform-provider-harbor/) from the latest Release like,
![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/nolte/terraform-provider-harbor)
.
## Building
As CI/CD tool we use the Github Workflow Feature.
## Visual Studio Code DevContainer
For Easy development use [Visual Studio Code DevContainer](https://code.visualstudio.com/docs/remote/containers), you can find the basement from the Development Containers at [nolte/vscode-devcontainers](https://github.com/nolte/vscode-devcontainers).
1. Create you Github Personal Access Token under with the following scopes:
1. `read:packages`
2. Login to fetch the required dev containers``` sh
docker login docker.pkg.github.com
```3. Grab you a Coffee and wait for 3 Minutes (This happens on the first time use)
4. Click Terminal -> New Terminal and execute the following command:
``` sh
# using the Makefile
make
```After starting the VisualStudio Code DevContainer, you can access the Documentation at [localhost:8000](http://localhost:8000).
### Precondition Tools
For full building and testing you need the following tools on our machine.
#### Required For Building
* go
* [go-swagger/go-swagger](https://github.com/go-swagger/go-swagger)
* [evanphx/json-patch](https://github.com/evanphx/json-patch)#### Required For Testing
* kind
* Terraform
* [gruntwork-io/terratest](https://github.com/gruntwork-io/terratest)## Supported Versions
Tested with Harbor v1.10.2, v2.0.0 and ~v2.1.0~ (currently broken [#83](https://github.com/nolte/terraform-provider-harbor/pull/83)).
## Tests
For the End To End Tests we use a local [kind](https://kind.sigs.k8s.io) _(KubernetesInDocker)_ Cluster.
## License
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fnolte%2Fterraform-provider-harbor.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fnolte%2Fterraform-provider-harbor?ref=badge_large)