taf/.forgejo/workflows/draft-release.yaml
2025-11-16 11:08:28 -07:00

91 lines
2.6 KiB
YAML

on: [ workflow_dispatch ]
jobs:
create-artifacts:
runs-on: act
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install dependencies
run: npm clean-install
- name: List files
run: ls -al
- name: Extract version from manifest
id: version
run: cat system.json | echo version=`jq -r ".version"` >> "$FORGEJO_OUTPUT"
- name: Assert that the tag doesn't exist
run: node scripts/tagExists.mjs
env:
TAG_NAME: "v${{steps.version.outputs.version}}"
# - name: Build compendia
# run: "npm run data:build"
# - name: Remove compendia source
# run: "rm -rf packs/**/_source"
# - name: Compress files
# run: zip -r release.zip langs module styles templates README.md assets
# - name: Upload artifacts
# uses: https://data.forgejo.org/forgejo/upload-artifact@v4
# with:
# path: |
# system.json
# release.zip
# retention-days: 7
# if-no-files-found: error
forgejo-release:
runs-on: docker
needs:
- create-artifacts
if: var.RELEASE_TO_FORGEJO == true
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
merge-multiple: true
- id: version
run: cat system.json | echo version=`jq -r ".version"` >> "$FORGEJO_OUTPUT"
- name: Update manifest
run: node scripts/updateManifest.mjs
env:
DOWNLOAD_URL: "${{FORGEJO_SERVER_URL}}/${{FORGEJO_REPOSITORY}}/releases/download/${{steps.version.output.version}}/release.zip"
LATEST_URL: "${{FORGEJO_SERVER_URL}}/${{FORGEJO_REPOSITORY}}releases/download/latest/system.json"
- name: Create draft release
run: cat system.json
github-release:
runs-on: docker
needs:
- create-artifacts
if: var.RELEASE_TO_GITHUB == true
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
merge-multiple: true
- id: version
run: cat system.json | echo version=`jq -r ".version"` >> "$FORGEJO_OUTPUT"
- name: Update manifest
run: node scripts/updateManifest.mjs
env:
DOWNLOAD_URL: "https://github.com/${{vars.GH_USER}}/${{vars.GH_REPO}}/releases/download/${{steps.version.output.version}}/release.zip"
LATEST_URL: "https://github.com/${{vars.GH_USER}}/${{vars.GH_REPO}}/releases/latest/download/system.json"
- name: Sync Github mirror
run: echo Syncing mirror
- name: Create draft release
run: cat system.json