Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use buildah instead of docker, support multi-arch builds (#243)
* Instead of passing environment variables, export them in Makefile This passes them to all subprocesses, but they can still be overridden due to the ?= construct. Signed-off-by: Maya Rashish <mrashish@redhat.com> * Switch to buildah, enable multi-arch builds Now we can run: make clean && \ GOARCH=arm64 make manifest && GOARCH=amd64 make manifest && \ make manifest-push And spit out a manifest for both arm64 and amd64, in the same image. Caveats: - We have a special 'manifest-clean' target, as we can add arbitrarily many images to a manifest and don't want the old ones. Delete old image in case a regular non-manifest image exists by the same name, too. - The push and image/manifest creation are split, so we can run the image creation for more than one architecture and push the combined manifest including both. - We keep `make push` behaving the same to avoid breaking CI. Signed-off-by: Maya Rashish <mrashish@redhat.com> * Remove unused BUILDAH_PUSH_FLAGS Signed-off-by: Maya Rashish <mrashish@redhat.com>
- Loading branch information