name: ci on: push: branches: - main pull_request: branches: - main jobs: build_and_publish: runs-on: docker container: image: ghcr.io/catthehacker/ubuntu:runner-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v4 with: go-version: '1.25' - run: sudo apt update && sudo apt install -y tar - name: Install ARM64 toolchain run: sudo apt-get update && sudo apt-get install -y gcc-aarch64-linux-gnu - run: mkdir -p bin/amd64 - run: mkdir -p bin/arm64 - name: Build for AMD64 run: GOOS=linux GOARCH=amd64 CGO_ENABLED=1 CC=gcc go build -o bin/amd64 ./cmd/... - run: tar cvfz dendrite-amd64.tar.gz bin/amd64/* - name: Build for ARM64 run: GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc go build -o bin/arm64 ./cmd/... - run: tar cvfz dendrite-arm64.tar.gz bin/arm64/* - run: | curl -H "Authorization: token ${{ secrets.PACKAGE_TOKEN }}" -X DELETE "https://guardianproject.dev/api/packages/butter/generic/dendrite/latest" - run: | curl -H "Authorization: token ${{ secrets.PACKAGE_TOKEN }}" -X PUT --upload-file dendrite-arm64.tar.gz https://guardianproject.dev/api/packages/butter/generic/dendrite/latest/dendrite-arm64.tar.gz - run: | curl -H "Authorization: token ${{ secrets.PACKAGE_TOKEN }}" -X PUT --upload-file dendrite-amd64.tar.gz https://guardianproject.dev/api/packages/butter/generic/dendrite/latest/dendrite-amd64.tar.gz