Commit Graph

22 Commits

Author SHA1 Message Date
Tim Ramlot
48ddce76f2
disable rclone gcs bucket ACL
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2024-04-15 18:47:01 +02:00
Tim Ramlot
01b298a580
move to Makefile modules
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2024-04-10 18:53:40 +02:00
Tim Ramlot
b8759139a2
rename BINDIR to bin_dir in preparation for makefile modules
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2024-02-08 15:57:34 +01:00
Tim Ramlot
2bef9d35b6
remove remaining references to cmctl, which was moved to https://github.com/cert-manager/cmctl
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2024-01-30 14:56:05 +01:00
Tim Ramlot
7b94868513
remove cmctl from this repo
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2024-01-24 16:15:34 +01:00
Richard Wall
5f719ec7d9 Add startupapicheck image to the server bundle of make release
Signed-off-by: Richard Wall <richard.wall@venafi.com>
2024-01-05 11:36:49 +00:00
Ashley Davis
b3b14fda41
add separate startupapicheck binary
Signed-off-by: Ashley Davis <ashley.davis@venafi.com>
2024-01-02 17:17:50 +00:00
Ashley Davis
f3a051d94f
add license preludes for a variety of files
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2023-03-14 15:46:10 +00:00
Tim Ramlot
5802b3a963 use variables for binaries
Signed-off-by: Tim Ramlot <42113979+inteon@users.noreply.github.com>
2022-08-26 07:43:17 +00:00
Ashley Davis
6a5c158c81
move commented out SHASUM generation to bottom of file
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-06-21 16:34:30 +01:00
Ashley Davis
35f2206404
change name of bin dir to _bin by default and make it a variable
This is needed because go and other tools will ignore directories
starting with "_" or "." but would treat a dir called "bin" as a regular
directory.

This in turn meant that when we vendored Go in bin, these tools would by
default scan the whole stdlib included with the bundled vendored go.

See https://pkg.go.dev/cmd/go#hdr-Package_lists_and_patterns for details

Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-06-21 16:34:26 +01:00
Ashley Davis
abebcacf42
add target for publishing a release to GCS using rclone
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-06-13 14:59:53 +01:00
Ashley Davis
3d0fd00137
add unsigned manifests target
this preserves the split between make release-artifacts and
make release-artifacts-signed

Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-06-06 18:58:15 +01:00
Ashley Davis
7ce1f9cffb
Improve "make help" output and add a couple of utility commands
- "make help" should be good enough for most people in most situations
  to build and test cert-manager
- "make clean-all" can be a one-stop-shop to start fresh.
- "make which-go" makes it clearer whether go vendoring is being used

Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-05-11 13:35:28 +01:00
Ashley Davis
c29f3e4aec
fix target when building containers for release
the bundles target is incorrect in a release since it won't generate
release metadata which we require when publishing a release

Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-03-31 12:50:18 +01:00
Maël Valais
c6f1f9bc24 make: in CI, copy binaries from "bin/downlaoded" to "bin/tools"
This is to work around the fact that binaries in hostPath-mounted
directories cannot be executed even if the permissions are correct.

Signed-off-by: Maël Valais <mael@vls.dev>
2022-03-25 18:01:54 +01:00
Ashley Davis
5d17ec5d2d
add a build source indicator to metadata
This makes it easier to tell when a build was made by the makefile
workflow and therefore to adjust `cmrel publish` to adapt to changes

Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-03-21 21:37:03 +00:00
Ashley Davis
a2a5f3f564
clear up the release target a little, ensure all things are built
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-03-18 16:24:20 +00:00
Ashley Davis
e3c3939113
some small QoL tweaks in makefiles
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-03-18 16:14:46 +00:00
Ashley Davis
968aeed6d7
fix phony names for some targets
Signed-off-by: Ashley Davis <ashley.davis@jetstack.io>
2022-03-18 14:45:50 +00:00
Maël Valais
3f8f12a7af make: remove comments I re-added when moving release_containers.mk to release.mk
Signed-off-by: Maël Valais <mael@vls.dev>
2022-03-16 13:53:42 +01:00
Maël Valais
3405edf821 make: add the targets 'e2e-setup-kind', 'e2e-setup-kind', and 'e2e'
The commands can be run concurrently, with the exception of e2e that
has to be run after e2e-setup is done. The e2e target does not check
whether cert-manager and the addons are installed.

The two only scripts that were kept are:

- make/e2e.sh      (previously called ./devel/run-e2e.sh)
- make/cluster.sh  (previsouly called ./devel/cluster/create.sh)

The reason for the removal of the other scripts is that they didn't
have that much logic and could easily ported to Make, improving greatly
the execution speed thanks to make's concurrency.

make/e2e.sh now behaves "as expected" when using -ginkgo.focus or
GINKGO_FOCUS; previously, the logs would not be shown before the end
of the test.

make/cluster.sh has lost the ability to create an OpenShift 3.11 cluster.
for running the end-to-end tests. The two reasons are that OpenShift 4
wasn't supported by the script devel/cluster/create.sh, and OpenShift
3.11 is not supported by cert-manager anymore.

The Makefile targets that were used in the Prow jobs (verify, verify_deps,
verify_chart, verify_upgrade, and cluster) have been kept around. They
now show a warning to encourage people to use the new Make-based targets.
When running one of the deprecated targets the Makefile won't check the
presence of the system tools such as Go and jq, since Bazel takes care of
these dependencies.

On version change, downloaded tools and images are re-downloaded. The
command 'make clean' now keeps the downloaded images and tools.

Note that a lot of attention has been put into having a Make system that works
flawlessly both on Linux and on BSDs (such as macOS).

You will note that some recursive calls to make are made, and $(MAKE)
instead of plain "make" is used in that case. If we didn't use $(MAKE),
we would have concurrency issues, and warnings such as:

  make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule.

Signed-off-by: Maël Valais <mael@vls.dev>
2022-03-13 12:32:08 +01:00