diff options
Diffstat (limited to '.forgejo')
-rwxr-xr-x | .forgejo/cascading-pr-runner | 18 | ||||
-rw-r--r-- | .forgejo/workflows/cascade-runner.yml | 30 | ||||
-rw-r--r-- | .forgejo/workflows/test.yml | 48 |
3 files changed, 96 insertions, 0 deletions
diff --git a/.forgejo/cascading-pr-runner b/.forgejo/cascading-pr-runner new file mode 100755 index 0000000..bcb29c6 --- /dev/null +++ b/.forgejo/cascading-pr-runner @@ -0,0 +1,18 @@ +#!/bin/bash + +set -ex + +runner=$1 +runner_pr=$2 +act=$3 +act_pr=$4 + +url=$(jq --raw-output .head.repo.html_url < $act_pr) +test "$url" != null +url=${url##http*://} +branch=$(jq --raw-output .head.ref < $act_pr) +test "$branch" != null +cd $runner +sed -i -e "s|^replace github.com/nektos/act.*|replace github.com/nektos/act => $url $branch|" go.mod +GOPROXY=direct go mod tidy +date > last-upgrade diff --git a/.forgejo/workflows/cascade-runner.yml b/.forgejo/workflows/cascade-runner.yml new file mode 100644 index 0000000..6ee43ca --- /dev/null +++ b/.forgejo/workflows/cascade-runner.yml @@ -0,0 +1,30 @@ +# SPDX-License-Identifier: MIT +on: + pull_request_target: + types: + - opened + - synchronize + - closed +jobs: + cascade: + runs-on: docker + if: vars.CASCADE != 'no' + container: + image: 'docker.io/node:20-bookworm' + steps: + - uses: https://code.forgejo.org/actions/setup-go@v4 + with: + go-version: "1.21" + - uses: actions/cascading-pr@v1 + with: + origin-url: ${{ env.GITHUB_SERVER_URL }} + origin-repo: forgejo/act + origin-token: ${{ secrets.CASCADING_PR_ORIGIN }} + origin-pr: ${{ github.event.pull_request.number }} + destination-url: ${{ env.GITHUB_SERVER_URL }} + destination-repo: forgejo/runner + destination-fork-repo: cascading-pr/runner + destination-branch: main + destination-token: ${{ secrets.CASCADING_PR_DESTINATION }} + close-merge: true + update: .forgejo/cascading-pr-runner diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml new file mode 100644 index 0000000..59516f3 --- /dev/null +++ b/.forgejo/workflows/test.yml @@ -0,0 +1,48 @@ +name: checks +on: + push: + branches: + - 'main' + pull_request: + +env: + GOPROXY: https://goproxy.io,direct + GOPATH: /go_path + GOCACHE: /go_cache + +jobs: + lint: + name: check and test + runs-on: docker + steps: + - name: cache go path + id: cache-go-path + uses: https://github.com/actions/cache@v3 + with: + path: /go_path + key: go_path-${{ github.repository }}-${{ github.ref_name }} + restore-keys: | + go_path-${{ github.repository }}- + go_path- + - name: cache go cache + id: cache-go-cache + uses: https://github.com/actions/cache@v3 + with: + path: /go_cache + key: go_cache-${{ github.repository }}-${{ github.ref_name }} + restore-keys: | + go_cache-${{ github.repository }}- + go_cache- + - uses: actions/setup-go@v3 + with: + go-version: 1.21 + - uses: actions/checkout@v3 + - name: vet checks + run: go vet -v ./... + - name: build + run: go build -v ./... + - name: build without docker + run: go build -tags WITHOUT_DOCKER -v ./... + - name: test + run: go test -v ./pkg/jobparser ./pkg/model + # TODO test more packages |