on: pull_request: push: branches: - 'main' jobs: build: runs-on: docker container: image: 'docker.io/node:20-bookworm' steps: - uses: https://code.forgejo.org/actions/checkout@v4 - uses: https://code.forgejo.org/actions/setup-go@v4 with: go-version: "1.21" - name: lib/build.sh run: | set -x # # SQLite needs gcc to be compiled # export DEBIAN_FRONTEND=noninteractive apt-get update -qq apt-get -q install -y -qq build-essential d=/tmp/forgejo-binaries mkdir $d /tmp/forgejo-upload for version in $(ls forgejo/sources) ; do forgejo=$d/forgejo-$version-dev lib/build.sh $version $d $forgejo --version mv $forgejo /tmp/forgejo-upload done - uses: actions/upload-artifact@v3 with: name: forgejo-dev path: /tmp/forgejo-upload packages: needs: [build] runs-on: lxc-bookworm steps: - uses: https://code.forgejo.org/actions/checkout@v4 - uses: ./.forgejo/prepare-end-to-end - run: su forgejo -c "./end-to-end.sh test_packages" - name: full logs if: always() run: su forgejo -c "./end-to-end.sh show_logs" upgrade: name: upgrade and storage needs: [build] runs-on: lxc-bookworm steps: - name: cache S3 binaries id: S3 uses: https://code.forgejo.org/actions/cache@v3 with: path: | /usr/local/bin/minio /usr/local/bin/mc /usr/local/bin/garage key: S3 - name: skip if S3 cache hit if: steps.S3.outputs.cache-hit != 'true' run: echo no hit - uses: https://code.forgejo.org/actions/checkout@v4 - uses: ./.forgejo/prepare-end-to-end - run: su forgejo -c "./end-to-end.sh test_upgrades" - run: su forgejo -c "./end-to-end.sh test_storage" - name: full logs if: always() run: su forgejo -c "./end-to-end.sh show_logs"