Makefile: include `release-artifacts` target

The current release artifacts generation process is still fairly manual
with a bunch of steps. This commit bundles them all into a single
convenient Makefile target.

The `clean-binaries` target ends up removing `bin/`. So, the artifact
dir has been changed to `release/` instead of the current `bin/` to
avoid breaking other Makefile targets.

Related: https://github.com/containers/podman/issues/18215

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
This commit is contained in:
Lokesh Mandvekar 2023-04-17 14:40:55 -04:00
parent 9676391c4e
commit 459f751ae3
No known key found for this signature in database
GPG Key ID: 1C1EDD7CC7C3A0DD
2 changed files with 20 additions and 13 deletions

View File

@ -951,6 +951,24 @@ install.tools: .install.golangci-lint ## Install needed tools
$(PYTHON) -m pip install --user pre-commit; \ $(PYTHON) -m pip install --user pre-commit; \
fi fi
.PHONY: release-artifacts
release-artifacts: clean-binaries
mkdir -p release/
$(MAKE) podman-remote-release-darwin_amd64.zip
mv podman-remote-release-darwin_amd64.zip release/
$(MAKE) podman-remote-release-darwin_arm64.zip
mv podman-remote-release-darwin_arm64.zip release/
$(MAKE) podman-remote-release-windows_amd64.zip
mv podman-remote-release-windows_amd64.zip release/
$(MAKE) podman-remote-static-linux_amd64
tar -cvzf podman-remote-static-linux_amd64.tar.gz bin/podman-remote-static-linux_amd64
$(MAKE) podman-remote-static-linux_arm64
tar -cvzf podman-remote-static-linux_arm64.tar.gz bin/podman-remote-static-linux_arm64
mv podman-remote-static-linux*.tar.gz release/
$(MAKE) podman.msi
mv podman-v*.msi release/
cd release/; sha256sum *.zip *.tar.gz *.msi > shasums
.PHONY: uninstall .PHONY: uninstall
uninstall: uninstall:
for i in $(filter %.1,$(MANPAGES_DEST)); do \ for i in $(filter %.1,$(MANPAGES_DEST)); do \

View File

@ -241,16 +241,7 @@ spelled with complete minutiae.
```shell ```shell
$ git checkout vX.Y.Z $ git checkout vX.Y.Z
$ make podman-remote-release-darwin_amd64.zip \ $ make release-artifacts
podman-remote-release-darwin_arm64.zip \
podman-remote-release-windows_amd64.zip \
podman-remote-static-linux_amd64 \
podman-remote-static-linux_arm64
$ mv podman-* bin/
$ cd bin/
$ tar -cvzf podman-remote-static-linux_amd64.tar.gz podman-remote-static-linux_amd64
$ tar -cvzf podman-remote-static-linux_arm64.tar.gz podman-remote-static-linux_arm64
$ sha256sum *.zip *.tar.gz > shasums
``` ```
1. The `podman-vX.Y.Z.dmg` file is produced manually by someone in 1. The `podman-vX.Y.Z.dmg` file is produced manually by someone in
@ -267,9 +258,7 @@ spelled with complete minutiae.
the release. the release.
1. Near the bottom of the page there is a box with the message 1. Near the bottom of the page there is a box with the message
“Add binaries by dropping them here or selecting them”. Use “Add binaries by dropping them here or selecting them”. Use
that to upload the artifacts you previously downloaded, including that to upload the artifacts in the `release/` dir generated earlier:
the `shasums` file.
* podman-remote-release-darwin_amd64.zip * podman-remote-release-darwin_amd64.zip
* podman-remote-release-darwin_arm64.zip * podman-remote-release-darwin_arm64.zip
* podman-remote-release-windows_amd64.zip * podman-remote-release-windows_amd64.zip