Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor docker images and workflows to build and deploy them
* Remove workflow `deploy-build-kit.yaml`. It is integrated into `deploy-docker-images.yml`. * Refactor deploy-docker-images.yml workflow * Convert matrix into multiple jobs, one for each docker image, because the images depend on each other, and the matrix strategy does not support this. * Add `env-setup` job to set up the environment for the other jobs, because reusable workflows don't support environment variables. * Add input parameter to build deprecated images. Currently, the deprecated images are built by default, if not specified otherwise. * Use output `one_image_tag_short` as input for the dependent images * Refactor build-single-docker-image.yml * Rename input `docker_directory` to `directory`. Instead of setting the directory that contains all images, it is set now to the directory that contains the Dockerfile for the image to build. * Add input parameter `docker_file_name` to specify the Dockerfile to use. * Add input parameter `platforms` to specify the platforms to build the image for. The default is `linux/amd64,linux/arm64` and `linux/arm/v7`. * Add input parameter `depends_on_paths` to specify the paths that the image depends on. If the paths change, the image is rebuilt. * Add input parameter `build_args` to specify the build arguments for the image. * The name of the deployed image is now set by the input parameter `image_name`: `ghcr.io/everest/<image_name>`. The directory name is independent of the image name. * Add output parameter `rebuild` to indicate if the image was rebuilt. * Add output parameter `image_tag_short` to pass the image tag to the dependent images. * Add output parameter `image_tag_long` to pass the full image tag to the dependent images. * Add output parameter `image_tags` to pass all full image tags. * Fix rebuild conditions * Update README.md * Deprecate `ghcr.io/everest/everest-clang-format` image. Its features are now included in `ghcr.io/everest/everest-ci/build-env-base` The old image is deprecated, but still available and deployed. * Merge `ghcr.io/everest/build-kit-alpine` and `ghcr.io/everest/build-kit-debian` into `ghcr.io/everest/everest-ci/build-kit-base`. The old images are deprecated, but still available and deployed. * Add `ghcr.io/everest/everest-ci/run-env-base` image * Add `ghcr.io/everest/everest-ci/build-env-base` image * Add `ghcr.io/everest/everest-ci/dev-env-base` image * Add `run-clang-format.py` script to `build-env-base` image * Update github action `run-glang-format` to use new `build-env-base` image Signed-off-by: Andreas Heinrich <[email protected]>
- Loading branch information