Added cli to CI builds

main
Jef Roosens 2022-02-22 18:42:09 +01:00
parent 07b069c686
commit 098f89909d
Signed by untrusted user: Jef Roosens
GPG Key ID: B580B976584B5F30
1 changed files with 32 additions and 1 deletions

View File

@ -36,18 +36,49 @@ pipeline:
when: when:
event: push event: push
cli:
image: 'chewingbever/vlang:latest'
environment:
- LDFLAGS=-static
commands:
- make cli-prod
# Make sure the binary is actually statically built
- readelf -d vieterctl
- du -h vieterctl
- '[ "$(readelf -d vieterctl | grep NEEDED | wc -l)" = 0 ]'
# This removes so much, it's amazing
- strip -s vieterctl
- du -h vieterctl
when:
event: push
upload: upload:
image: 'chewingbever/vlang:latest' image: 'chewingbever/vlang:latest'
secrets: [ s3_username, s3_password ] secrets: [ s3_username, s3_password ]
commands: commands:
# https://gist.github.com/JustinTimperio/7c7115f87b775618637d67ac911e595f # https://gist.github.com/JustinTimperio/7c7115f87b775618637d67ac911e595f
- export URL=s3.rustybever.be - export URL=s3.rustybever.be
- export OBJ_PATH="/vieter/commits/$CI_COMMIT_SHA/vieter-$(echo '${PLATFORM}' | sed 's:/:-:g')"
- export DATE="$(date -R --utc)" - export DATE="$(date -R --utc)"
- export CONTENT_TYPE='application/zstd' - export CONTENT_TYPE='application/zstd'
- export OBJ_PATH="/vieter/commits/$CI_COMMIT_SHA/vieter-$(echo '${PLATFORM}' | sed 's:/:-:g')"
- export SIG_STRING="PUT\n\n$CONTENT_TYPE\n$DATE\n$OBJ_PATH" - export SIG_STRING="PUT\n\n$CONTENT_TYPE\n$DATE\n$OBJ_PATH"
- export SIGNATURE=`echo -en $SIG_STRING | openssl sha1 -hmac $S3_PASSWORD -binary | base64` - export SIGNATURE=`echo -en $SIG_STRING | openssl sha1 -hmac $S3_PASSWORD -binary | base64`
- >
curl
--silent
-XPUT
-T pvieter
-H "Host: $URL"
-H "Date: $DATE"
-H "Content-Type: $CONTENT_TYPE"
-H "Authorization: AWS $S3_USERNAME:$SIGNATURE"
https://$URL$OBJ_PATH
# Also update the CLI tool
- export OBJ_PATH="/vieter/commits/$CI_COMMIT_SHA/vieterctl-$(echo '${PLATFORM}' | sed 's:/:-:g')"
- export SIG_STRING="PUT\n\n$CONTENT_TYPE\n$DATE\n$OBJ_PATH"
- export SIGNATURE=`echo -en $SIG_STRING | openssl sha1 -hmac $S3_PASSWORD -binary | base64`
- > - >
curl curl
--silent --silent