on: pull_request: push: branches: - 'main' jobs: actions: runs-on: self-hosted strategy: matrix: info: - version: v1.22 forgejo: https://codeberg.org repo: forgejo-experimental/forgejo tests: ${{ vars.V1_22_TESTS }} - version: v1.21 forgejo: https://codeberg.org repo: forgejo/forgejo tests: ${{ vars.V1_21_TESTS }} - version: v1.20 forgejo: https://codeberg.org repo: forgejo/forgejo tests: ${{ vars.V1_20_TESTS }} steps: - uses: actions/checkout@v4 - uses: https://code.forgejo.org/actions/setup-forgejo@v2 with: install-only: true - if: matrix.info.tests != 'none' shell: bash run: | set -x forgejo-binary.sh ensure_user forgejo full_version=$(curl -sS ${{ matrix.info.forgejo }}/api/v1/repos/${{ matrix.info.repo }}/releases | jq -r '.[] | .tag_name | select(startswith("${{ matrix.info.version }}"))' | sort -r | head -1) binary=${{ matrix.info.forgejo }}/${{ matrix.info.repo }}/releases/download/${full_version}/forgejo-${full_version#v}-linux-amd64 export DIR=$(mktemp -d) chown forgejo $DIR /srv su -c "actions/run.sh $binary $full_version ${{ matrix.info.version }} ${{ matrix.info.tests }}" forgejo