Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rymnc/waypoint-plugin-gcp-artifact-registry
A plugin for Hashicorp Waypoint that allows to upload artifacts to GCP Artifact Registry
https://github.com/rymnc/waypoint-plugin-gcp-artifact-registry
Last synced: about 1 month ago
JSON representation
A plugin for Hashicorp Waypoint that allows to upload artifacts to GCP Artifact Registry
- Host: GitHub
- URL: https://github.com/rymnc/waypoint-plugin-gcp-artifact-registry
- Owner: rymnc
- License: mit
- Created: 2022-03-24T08:58:04.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-04-02T06:00:49.000Z (over 2 years ago)
- Last Synced: 2024-06-19T12:23:38.543Z (5 months ago)
- Language: Go
- Size: 125 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GCP Artifact Registry Plugin
This plugin allows uploading artifacts to artifact registry.
## Steps
1. Run `make` at project root to build protobufs, and binaries for all platforms
## Building with Docker
To build plugins for release you can use the `build-docker` Makefile target, this will
build your plugin for all architectures and create zipped artifacts which can be uploaded
to an artifact manager such as GitHub releases.The built artifacts will be output in the `./releases` folder.
```shell
make build-dockerrm -rf ./releases
DOCKER_BUILDKIT=1 docker build --output releases --progress=plain .
#1 [internal] load .dockerignore
#1 transferring context: 2B done
#1 DONE 0.0s#...
#14 [export_stage 1/1] COPY --from=build /go/plugin/bin/*.zip .
#14 DONE 0.1s#15 exporting to client
#15 copying files 36.45MB 0.1s done
#15 DONE 0.1s
```## Building and releasing with GitHub Actions
When cloning the template a default GitHub Action is created at the path `.github/workflows/build-plugin.yaml`. You can use this action to automatically build and release your plugin.
The action has two main phases:
1. **Build** - This phase builds the plugin binaries for all the supported architectures. It is triggered when pushing
to a branch or on pull requests.
1. **Release** - This phase creates a new GitHub release containing the built plugin. It is triggered when pushing tags
which starting with `v`, for example `v0.1.0`.You can enable this action by clicking on the `Actions` tab in your GitHub repository and enabling GitHub Actions.