79 lines
2.2 KiB
YAML
79 lines
2.2 KiB
YAML
name: Release
|
|
|
|
on:
|
|
# Only triggers for new tags
|
|
push:
|
|
tags: "*"
|
|
|
|
jobs:
|
|
# Mostly the same as the main.yaml workflow, but we only use a single job
|
|
l3build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
# Boilerplate
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- run: sudo apt-get install tidy
|
|
- name: Install TeX Live
|
|
uses: zauguin/install-texlive@v3
|
|
with:
|
|
# Here we use the same list of packages as in the testing workflow.
|
|
package_file: .github/tl_packages
|
|
- name: Run l3build
|
|
run: l3build ctan -H --show-log-on-error
|
|
- name: Upload package artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: Package
|
|
path: |
|
|
build/distrib/ctan/*.zip
|
|
ctan.ann
|
|
- name: Validate CTAN package
|
|
uses: ./.github/actions/ctan-upload
|
|
with:
|
|
uploader: Dummy Name
|
|
email: dryrun@example.com
|
|
filename: "build/distrib/ctan/luaotfload-ctan.zip"
|
|
dry-run: true
|
|
|
|
github:
|
|
runs-on: ubuntu-latex
|
|
needs:
|
|
- l3build
|
|
steps:
|
|
- name: Download package artifact
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: Package
|
|
- name: Create GitHub release
|
|
uses: ncipollo/release-action@2c591bcc8ecdcd2db72b97d6147f871fcd833ba5
|
|
id: release
|
|
with:
|
|
artifacts: "build/distrib/ctan/*.zip"
|
|
prerelease: ${{ endsWith(github.ref, '-dev') }}
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
bodyFile: ctan.ann
|
|
|
|
ctan-upload:
|
|
if: "${{ !endsWith(github.ref, '-dev') }}"
|
|
runs-on: ubuntu-latest
|
|
environment: CTAN
|
|
needs:
|
|
- l3build
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
sparse-checkout: .github
|
|
- name: Download package artifact
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: Package
|
|
- name: Upload CTAN package
|
|
uses: ./.github/actions/ctan-upload
|
|
with:
|
|
uploader: ${{ secrets.CTAN_NAME }}
|
|
email: ${{ secrets.CTAN_EMAIL }}
|
|
filename: "build/distrib/ctan/luaotfload-ctan.zip"
|
|
dry-run: false
|