mirror of
https://github.com/wahyd4/cert-manager.git
synced 2026-08-09 05:06:38 +10:00
Includes targets for: - all "server" binaries, for all arches - all containers for all server binaries for all arches - all client binaries (kubectl plugin / cmctl) for all arches - the cert-manager helm chart + signature - the cert-manager static manifests + CRDs - tools which bazel would download, with checksum verification - (commented out) a signed SHA256SUM file for client binaries Upgrades from the bazel flow include that: - we use OS-specific base images rather than just using amd64 everywhere - we easily add support for signing artifacts at build time - we add ".exe" to the end of windows executables - we add a zip file for windows executables, for easier consumption - we concatenate YAML files more robustly - staging a full release should be much faster - hopefully, it's easier to change things! - licenses are trimmed down to reduce bloat in images (the license bundle was 1.4MB in size alone) Changes from the bazel flow include: - containers no longer have a symlink to the binary at an unusual path, but instead just have the binary at a more predictable path (e.g. /app/cmd/webhook/webhook instead of /app/cmd/webhook/webhook.runfiles/com_github_jetstack_cert_manager/cmd/webhook/webhook_/webhook) Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
24 lines
1.3 KiB
Makefile
24 lines
1.3 KiB
Makefile
# LICENSE_YEAR is the value which will be substituted into licenses when they're generated
|
|
# It would be possible to make this more dynamic, but there's seemingly no need:
|
|
# https://stackoverflow.com/a/2391555/1615417
|
|
# As such, this is hardcoded to avoid needless complexity
|
|
LICENSE_YEAR=2021
|
|
|
|
# Creates the boilerplate header for YAML files, assumed to be the same as the one in
|
|
# shell scripts (hence the use of boilerplate.sh.txt)
|
|
bin/scratch/license.yaml: hack/boilerplate/boilerplate.sh.txt | bin/scratch
|
|
sed -e "s/YEAR/$(LICENSE_YEAR)/g" < $< > $@
|
|
|
|
# The references LICENSES file is 1.4MB at the time of writing. Bundling it into every container image
|
|
# seems wasteful in terms of bytes stored and bytes transferred on the wire just to add a file
|
|
# which presumably nobody will ever read or care about. Instead, just add a little footnote pointing
|
|
# to the cert-manager repo in case anybody actually decides that they care.
|
|
bin/scratch/license-footnote.yaml: | bin/scratch
|
|
@echo -e "# To view licenses for cert-manager dependencies, see the LICENSES file in the\n# cert-manager repo: https://github.com/jetstack/cert-manager" > $@
|
|
|
|
bin/scratch/cert-manager.license: bin/scratch/license.yaml bin/scratch/license-footnote.yaml | bin/scratch
|
|
cat $^ > $@
|
|
|
|
bin/scratch/cert-manager.licenses_notice: bin/scratch/license-footnote.yaml | bin/scratch
|
|
cp $< $@
|