on: push: branches: - main paths: - 'src/*.v' jobs: build: name: Build and upload binary runs-on: docker steps: - uses: actions/checkout@v4 - name: Install v run: | wget -q https://github.com/vlang/v/releases/latest/download/v_linux.zip pushd /tmp unzip -q $GITHUB_WORKSPACE/v_linux.zip popd rm v_linux.zip /tmp/v/v version - name: Build setup-browser run: | /tmp/v/v -prod . - name: Upload binary as generic package and create a release run: | VERSION="$(date +'%y.%m.%d').$GITHUB_REF_NAME" #wget -q https://github.com/jqlang/jq/releases/latest/download/jq-linux-amd64 -o jq #chmod +x jq # Create a tag #git tag "$VERSION" #git push --tags # Create a release #curl -X POST -H "Authorization: token $GITHUB_TOKEN" \ # -H "Content-Type: application/json" \ # --data '{"name": "'$VERSION'", "tag": "'$VERSION'"}' \ # "https://forgejo.example.com/api/repos/actions/setup-browser/releases" #REL_ID=$(curl -H "Authorization: token $GITHUB_TOKEN" "https://forgejo.example.com/api/repos/actions/setup-browser/releases/latest" | ./jq .id) # Add the binary to the release #curl -X 'POST' --header "Authorization: token $GITHUB_TOKEN" \ # "https://code.bcarlin.net/api/v1/repos/actions/setup-browser/releases/$REL_ID/assets?name=setup-browser" \ # -H 'accept: application/json' \ # -H 'Content-Type: multipart/form-data' \ # -F 'external_url=' # Upload the binary as a generic package curl --header "Authorization: token $GITHUB_TOKEN" \ --upload-file setup-browser \ "https://forgejo.example.com/api/packages/actions/generic/setup-browser/$VERSION/setup-browser"