diff --git a/.woodpecker/.build.yml b/.woodpecker/.build.yml index 516fb20..4b87f8b 100644 --- a/.woodpecker/.build.yml +++ b/.woodpecker/.build.yml @@ -5,61 +5,26 @@ matrix: - linux/arm/v7 # These checks already get performed on the feature branches +branches: + exclude: [ main, dev ] platform: ${PLATFORM} pipeline: # The default build isn't needed, as alpine switches to gcc for the compiler anyways debug: image: 'chewingbever/vlang:latest' - pull: true group: 'build' commands: - make debug - when: - event: push prod: image: 'chewingbever/vlang:latest' - pull: true environment: - LDFLAGS=-lz -lbz2 -llzma -lexpat -lzstd -llz4 -static group: 'build' commands: - make prod - # Make sure the binary is actually statically built + # Make sure the binary is actually static - readelf -d pvieter - du -h pvieter - '[ "$(readelf -d pvieter | grep NEEDED | wc -l)" = 0 ]' - # This removes so much, it's amazing - - strip -s pvieter - - du -h pvieter - when: - event: push - - upload: - image: 'alpine:latest' - secrets: [ s3_username, s3_password ] - commands: - # We should just add this to the builder image instead - - apk add curl openssl - - # https://gist.github.com/JustinTimperio/7c7115f87b775618637d67ac911e595f - - 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 CONTENT_TYPE='application/zstd' - - 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 - --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 - when: - event: push diff --git a/.woodpecker/.lint.yml b/.woodpecker/.lint.yml index ce000cd..1ccd077 100644 --- a/.woodpecker/.lint.yml +++ b/.woodpecker/.lint.yml @@ -6,8 +6,12 @@ platform: linux/amd64 pipeline: lint: image: 'chewingbever/vlang:latest' - pull: true group: lint commands: - make lint + + vet: + image: 'chewingbever/vlang:latest' + group: lint + commands: - make vet diff --git a/.woodpecker/.release.yml b/.woodpecker/.release.yml deleted file mode 100644 index 9da27be..0000000 --- a/.woodpecker/.release.yml +++ /dev/null @@ -1,40 +0,0 @@ -# Yeah so this only works on tags so we'll worry about this later -platform: linux/amd64 -branches: main - -# We need the entire repo in order for the release names to work -skip_clone: true - -pipeline: - prepare: - image: 'chewingbever/vlang:latest' - secrets: [ s3_username, s3_password ] - commands: - - git clone "$CI_REPO_REMOTE" . - - git checkout "$CI_COMMIT_BRANCH" - # Write the title to a file that the plugin can then read - - echo "$(git describe --tags --abbrev=0 2> /dev/null || echo '0.0.0')-$(git rev-list --count ^dev)" > title - - cat title - - wget https://dl.min.io/client/mc/release/linux-amd64/mc - - chmod +x mc - - ./mc alias set s3/ https://s3.rustybever.be "$S3_USERNAME" "$S3_PASSWORD" - - ./mc cp -r "s3/vieter/commits/$CI_COMMIT_SHA" assets - - release: - image: 'plugins/gitea-release' - secrets: - - gitea_release_api_key - settings: - base_url: https://git.rustybever.be - files: assets/* - checksums: - - md5 - - sha256 - prerelease: true - # This should get read in as a file - title: title - when: - event: push - -depends_on: - - build