Docker buildx plugin for Woodpecker - replacement for plugins/docker and plugins/ecr
Go to file
pat-s e93554e4bc feat: add support for AWS ECR (#110)
fix #74

Mainly borrowed from https://github.com/drone-plugins/drone-docker/tree/master/cmd/drone-ecr.

`drone/ecr` is still on 20.10.14 and sparsely updated/maintained. Would be great to add support for additional registries like ECR to buildx.
The login process is as follows:

1. Call the AWS API with some arguments to get a short-lived auth token (12h)
2. Use the token and Username `AWS` for the `docker login` call

## Notes

- To push to ECR, the full registry URL must be given in the tag, i.e. `registry/owner/repo`. For this, `Registry` must also be added the to `Build` struct besides the `Settings` struct
- For now I've only referenced the source in `ecr.go` by using the most recent commit of today. Should this be done differently?
- The implementation here from me is simple and probably a bit "naive" as this is my first "real" golang feature PR.
- I've tested this change with a custom image and was able to successfully push to ECR while dynamically creating a repository. Proper tests would still be great...
- Vars `assumeRole` and `externalID` are somehow not exposed in https://plugins.drone.io/plugins/ecr and I am not sure if this is by design or because they were just forgotten. Anyhow, this is reason I didn't expose them for now and just added internal dummy vars.
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2023-12-29 22:06:37 +00:00
cmd/docker-buildx feat: add support for AWS ECR (#110) 2023-12-29 22:06:37 +00:00
plugin feat: add support for AWS ECR (#110) 2023-12-29 22:06:37 +00:00
utils Add option to overwrites tags option with values specified in an file (#62) 2023-05-02 19:25:49 +00:00
.changelog.yml Add changelog tool config 2022-11-06 14:43:33 +01:00
.dictionary docs: add parameter documentation (#53) 2021-09-11 21:15:02 +02:00
.gitignore CI: add test (#26) 2022-10-08 15:32:14 +02:00
.markdownlint.yml docs: add parameter documentation (#53) 2021-09-11 21:15:02 +02:00
.prettierignore chore: improve generated changelog (#25) 2021-05-09 23:46:51 +02:00
.woodpecker.yml run testst on renovate/* branches 2023-11-22 12:57:40 +01:00
CONTRIBUTING.md prelim to switch to woodpecker plugin 2021-10-12 23:40:58 -04:00
Corefile Add internal DNS server if no custom DNS is set (#45) 2022-11-23 14:01:45 +00:00
Dockerfile.multiarch pin docker version on patch level 2023-11-19 13:28:17 +01:00
docs.md Fix separator for tags_file in docs (#107) 2023-11-01 10:32:01 +00:00
go.mod feat: add support for AWS ECR (#110) 2023-12-29 22:06:37 +00:00
go.sum feat: add support for AWS ECR (#110) 2023-12-29 22:06:37 +00:00
LICENSE fork: initial release 2021-01-10 23:47:55 +01:00
Makefile Ensure that the plugin binary does not conflict with the utility being used (#24) 2022-10-08 00:58:57 +02:00
README.md update README 2023-10-19 16:50:20 +02:00
renovate.json renovate: use org config 2023-10-30 09:33:19 +01:00

plugin-docker-buildx

Get it on Codeberg

Woodpecker CI plugin to build multiarch Docker images with buildx. This plugin was initially a fork of thegeeklab/drone-docker-buildx (now archived in favor of this plugin) which itself was a fork of drone-plugins/drone-docker. You can find the full documentation at woodpecker-ci.org (docs.md).

Images

Images are available on Dockerhub and in the Codeberg registry.

License

This project is licensed under the Apache-2.0 License - see the LICENSE file for details.