All operations are automated as much as possible.
- Generation of each
Dockerfileand its context is automated viaMakefile.
To update versions of images following steps are required:
- Update all required versions in
Makefile. See also: Image versioning convensions - Update all required versions in
README.md. See also: Image versioning convensions - Edit templates
- If you need to modify some
Dockerfiles then do it via editingtemplates/Dockerfile.erbtemplate. - If you need to modify some
Gemfiles then do it via editingtemplates/Gemfile.erbtemplate. - If you need to modify some
confs then do it via editingtemplates/conftemplates
- If you need to modify some
- Regenerate all
Dockerfiles and their context (it's okay to remove previous ones completely):make src-all
- Push changes to
masterbranch.
- We use the following image versioning convension:
v<Fluentd version>-debian-<destination name>-<image major version>.<image minor version>- Reset image version to
1.0when bump up Fluentd version - Bump up image major version when including breaking changes on a destination
- Bump up image minor version when updating gems on a destination
Note: This procedure requests that the specified Fluentd debian tag image is already published in Fluentd DockeHub's tags page.
Note: This procedure requires fluent/fluentd-kubernetes-daemonset repository's DockerHub Admin privileges.
Go to Build settings page and then, push [Trigger ▷] buttons.
When Fluentd is bump up every minor version (e.g. v1.12 to v1.13), we need to reconfigure Dockerfile location via [Configure Automated Builds] button.
Built tags will be published at TAGS page.
Tests are outstanding
It's still possible to build, tag and push images manually. Just use:
make release-allIt will build all existing Dockerfiles, tag them with proper tags
(as README.md requires) and push them to Docker Hub.