package Windows with zip

This commit is contained in:
Kaan Barmore-Genç 2022-01-27 15:04:32 -05:00
parent 7eca3fbe5f
commit 59e4a5e4d9
2 changed files with 9 additions and 5 deletions

3
.gitignore vendored
View File

@ -1,3 +1,4 @@
/target /target
gandi.toml gandi.toml
*.tar* *.tar*
*.zip

View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# #
# Make sure `cross` is installed. # Make sure `cross` is installed.
# You'll also need `sed`, and a relatively recent version of `tar`. # You'll also need `sed`, a relatively recent version of `tar`, and `7z`.
# #
# This script runs does `sudo docker` to build and push the release to docker. # This script runs does `sudo docker` to build and push the release to docker.
# If you have rootless docker set up, remove sudo from this variable. # If you have rootless docker set up, remove sudo from this variable.
@ -9,7 +9,6 @@ DOCKER="sudo docker"
# #
# Trap errors and interrupts # Trap errors and interrupts
set -Eeuo pipefail set -Eeuo pipefail
shopt -s extglob
function handle_sigint() { function handle_sigint() {
echo "SIGINT, exiting..." echo "SIGINT, exiting..."
exit 1 exit 1
@ -50,7 +49,11 @@ VERSION=$(sed -nr 's/^version *= *"([0-9.]+)"/\1/p' Cargo.toml)
for target in "${!TARGETS[@]}"; do for target in "${!TARGETS[@]}"; do
echo Building "${target}" echo Building "${target}"
cross build -j $(($(nproc) / 2)) --release --target "${target}" cross build -j $(($(nproc) / 2)) --release --target "${target}"
tar -acf "gandi-live-dns.${VERSION}.${TARGETS[${target}]}.tar.xz" target/"${target}"/release/gandi-live-dns?(|.exe) if [[ "${target}" =~ .*"windows".* ]] ; then
7z a -tzip "gandi-live-dns.${VERSION}.${TARGETS[${target}]}.zip" target/"${target}"/release/gandi-live-dns.exe 1>/dev/null
else
tar -acf "gandi-live-dns.${VERSION}.${TARGETS[${target}]}.tar.xz" target/"${target}"/release/gandi-live-dns
fi
done done
# Copy files into place so Docker can get them easily # Copy files into place so Docker can get them easily
@ -67,4 +70,4 @@ ${DOCKER} buildx build . \
--file "Dockerfile" \ --file "Dockerfile" \
--tag "seriousbug/gandi-live-dns-rust:latest" \ --tag "seriousbug/gandi-live-dns-rust:latest" \
--tag "seriousbug/gandi-live-dns-rust:${VERSION}" \ --tag "seriousbug/gandi-live-dns-rust:${VERSION}" \
--push --push