[latex3-commits] [git/LaTeX3-latex3-unicode-data] main: Moving to GitHub Actions (a55514b)
Joseph Wright
joseph.wright at morningstar2.co.uk
Wed Sep 15 12:09:20 CEST 2021
Repository : https://github.com/latex3/unicode-data
On branch : main
Link : https://github.com/latex3/unicode-data/commit/a55514bc007e6978655b3e5aeaaf1f1b707a4d07
>---------------------------------------------------------------
commit a55514bc007e6978655b3e5aeaaf1f1b707a4d07
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Wed Sep 15 11:09:20 2021 +0100
Moving to GitHub Actions
>---------------------------------------------------------------
a55514bc007e6978655b3e5aeaaf1f1b707a4d07
.github/tl_packages | 5 +++++
.github/workflows/deploy.yaml | 52 +++++++++++++++++++++++++++++++++++++++++++
.github/workflows/main.yaml | 43 +++++++++++++++++++++++++++++++++++
support/texlive.profile | 10 ---------
support/texlive.sh | 30 -------------------------
5 files changed, 100 insertions(+), 40 deletions(-)
diff --git a/.github/tl_packages b/.github/tl_packages
new file mode 100644
index 0000000..aa307eb
--- /dev/null
+++ b/.github/tl_packages
@@ -0,0 +1,5 @@
+# The test framework itself
+l3build
+#
+# Required
+xetex
diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml
new file mode 100644
index 0000000..5c8e055
--- /dev/null
+++ b/.github/workflows/deploy.yaml
@@ -0,0 +1,52 @@
+name: Create release
+
+# We create releases for all new tags
+on:
+ push:
+ tags:
+ - "*"
+
+jobs:
+ release:
+ runs-on: ubuntu-latest
+ name: Build release
+ environment: Release
+ steps:
+ # Boilerplate
+ - name: Checkout repository
+ uses: actions/checkout at v2
+ # GitHub Actions don't regenerate the test if the key doesn't change, so
+ # we integrate a random UUID into the key to keep them different.
+ # DO NOT CHANGE THIS
+ - name: Generate unique ID
+ id: get-id
+ run: |
+ echo -n ::set-output name=id::
+ cat /proc/sys/kernel/random/uuid
+ # Actually load the cache. Since we never reuse the key, we need restore-keys
+ # to indicate the prefix of our caches. This loads the newest cache with this
+ # prefix in the key.
+ #
+ # If we want to force regeneration of the cache, increase the number after
+ # *both* instances of "texlive-v"
+ - name: Load cache
+ uses: actions/cache at v2
+ with:
+ path: ~/texlive
+ key: texlive-v0-${{ steps.get-id.outputs.id }}
+ restore-keys: texlive-v0-
+ - name: Install TeX Live
+ uses: zauguin/install-texlive at v1
+ with:
+ # List the required TeX Live packages in a separate file to allow reuse in
+ # different workflows.
+ package_file: .github/tl_packages
+ - name: Run l3build
+ run: l3build ctan -q -H
+ # Now create the release (this only runs if the previous steps were successful)
+ - name: Create GitHub release
+ uses: ncipollo/release-action at 880be3d0a71bc0fa98db60201d2cbdc27324f547
+ id: release
+ with:
+ artifacts: "build/distrib/ctan/*.zip"
+ token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml
new file mode 100644
index 0000000..ab5b509
--- /dev/null
+++ b/.github/workflows/main.yaml
@@ -0,0 +1,43 @@
+name: Automated testing
+
+on:
+ push:
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ l3build:
+ runs-on: ubuntu-latest
+ steps:
+ # Boilerplate
+ - name: Checkout repository
+ uses: actions/checkout at v2
+ # GitHub Actions don't regenerate the test if the key doesn't change, so
+ # we integrate a random UUID into the key to keep them different.
+ # DO NOT CHANGE THIS
+ - name: Generate unique ID
+ id: get-id
+ run: |
+ echo -n ::set-output name=id::
+ cat /proc/sys/kernel/random/uuid
+ # Actually load the cache. Since we never reuse the key, we need restore-keys
+ # to indicate the prefix of our caches. This loads the newest cache with this
+ # prefix in the key.
+ #
+ # If we want to force regeneration of the cache, increase the number after
+ # *both* instances of "texlive-v"
+ - name: Load cache
+ uses: actions/cache at v2
+ with:
+ path: ~/texlive
+ key: texlive-v0-${{ steps.get-id.outputs.id }}
+ restore-keys: texlive-v0-
+ - name: Install TeX Live
+ uses: zauguin/install-texlive at v1
+ with:
+ # List the required TeX Live packages in a separate file to allow reuse in
+ # different workflows.
+ package_file: .github/tl_packages
+ - name: Run l3build
+ run: l3build ctan -q -H
diff --git a/support/texlive.profile b/support/texlive.profile
deleted file mode 100644
index 1b4632a..0000000
--- a/support/texlive.profile
+++ /dev/null
@@ -1,10 +0,0 @@
-selected_scheme scheme-minimal
-TEXDIR /tmp/texlive
-TEXMFCONFIG ~/.texlive/texmf-config
-TEXMFHOME ~/texmf
-TEXMFLOCAL /tmp/texlive/texmf-local
-TEXMFSYSCONFIG /tmp/texlive/texmf-config
-TEXMFSYSVAR /tmp/texlive/texmf-var
-TEXMFVAR ~/.texlive/texmf-var
-option_doc 0
-option_src 0
diff --git a/support/texlive.sh b/support/texlive.sh
deleted file mode 100644
index 50a71ea..0000000
--- a/support/texlive.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/usr/bin/env sh
-
-# This script is used for testing using Travis
-# It is intended to work on their VM set up: Ubuntu 12.04 LTS
-# As such, the nature of the system is hard-coded
-# A minimal current TL is installed adding only the packages that are
-# required
-
-# See if there is a cached verson of TL available
-export PATH=/tmp/texlive/bin/x86_64-linux:$PATH
-if ! command -v texlua > /dev/null; then
- # Obtain TeX Live
- wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
- tar -xzf install-tl-unx.tar.gz
- cd install-tl-20*
-
- # Install a minimal system
- ./install-tl --profile=../support/texlive.profile
-
- cd ..
-
- # Core requirements for the test system
- tlmgr install l3build
- tlmgr install --no-depends xetex
-fi
-
-# Keep no backups (not required, simply makes cache bigger)
-tlmgr option -- autobackup 0
-# Update the TL install but add nothing new
-tlmgr update --self --all --no-auto-install
More information about the latex3-commits
mailing list.