.github/workflows/pages.yml: fix spaces #487
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This Source Code Form is licensed MPL-2.0: http://mozilla.org/MPL/2.0 | |
# Linting: xclip -sel c <.github/workflows/testing.yml # https://rhysd.github.io/actionlint/ | |
on: | |
push: | |
branches: [ 'trunk', 'next', 'wip/**' ] | |
# tags: [ 'v[0-9]+.[0-9]+.[0-9]+*' ] | |
pull_request: | |
branches: [ 'trunk', 'next' ] | |
jobs: | |
FocalAssets: | |
runs-on: ubuntu-latest | |
container: { image: 'ghcr.io/tim-janik/anklang-ci:focal-latest' } | |
steps: | |
- { uses: actions/checkout@v4.1.1, with: { fetch-depth: 0, submodules: recursive } } | |
- name: 'Fetch all tags' | |
run: | | |
sed 's,git@github.com:,https://github.com/,' -i .git/config ; # fetch without ssh creds | |
git fetch -f --tags && git describe --always --long ; # Fix actions/checkout#290 | |
- name: 'Configure build presets' | |
run: | | |
echo -e ' prefix=/\n CC=clang \n CXX=clang++ \n CLANG_TIDY=clang-tidy ' > config-defaults.mk | |
- name: 'Build Dist Assets' | |
run: | | |
make mkassets | |
- uses: actions/upload-artifact@v4 | |
with: { name: assets, path: assets/ } | |
- uses: actions/upload-artifact@v4 | |
with: { name: dist-tarball, path: assets/*.tar* } | |
UploadDocs: | |
if: ${{ github.repository == 'tim-janik/anklang' && github.ref == 'refs/heads/trunk' }} | |
runs-on: ubuntu-latest | |
container: { image: 'ghcr.io/tim-janik/anklang-ci:focal-latest' } | |
steps: | |
- { uses: actions/checkout@v4.1.1, with: { fetch-depth: 0, submodules: recursive } } | |
- name: 'Fetch all tags' | |
run: | | |
sed 's,git@github.com:,https://github.com/,' -i .git/config ; # fetch without ssh creds | |
git fetch -f --tags && git describe --always --long ; # Fix actions/checkout#290 | |
- name: 'Configure build presets' | |
run: | | |
echo -e ' prefix=/\n CC=clang \n CXX=clang++ \n CLANG_TIDY=clang-tidy ' > config-defaults.mk | |
- name: 'Upload API Docs' # http://tim-janik.github.io/docs/anklang | |
run: | | |
make -j`nproc` all | |
(umask 0077 && cat <<< "${{ secrets.SSH_ID_GHDOCS4ANKLANG_ECDSA }}" > .git/.ssh_id_ghdocs4anklang) | |
doc/poxy.sh -b -u | |
ArchReplay: | |
runs-on: ubuntu-latest | |
container: { image: 'ghcr.io/tim-janik/anklang-ci:arch-latest' } | |
steps: | |
- { uses: actions/checkout@v4.1.1, with: { fetch-depth: 0, submodules: recursive } } | |
- name: 'Fetch all tags' | |
run: | | |
sed 's,git@github.com:,https://github.com/,' -i .git/config ; # fetch without ssh creds | |
git fetch -f --tags && git describe --always --long ; # Fix actions/checkout#290 | |
- name: 'Configure build presets' | |
run: | | |
echo 'prefix=/' > config-defaults.mk ;# reset any previous config-defaults.mk | |
- name: 'Build Anklang' | |
run: | | |
make GCC_COLORS="" -j`nproc` all | |
- name: 'Run Tests' | |
run: | | |
make -j`nproc` check | |
- name: 'Run X11 GUI Tests' | |
run: | | |
make x11test-v | |
# Artifact upload from x11test | |
- uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: { name: "x11test", path: "out/x11test/" } | |
FocalClangTidy: | |
if: ${{ ! contains(github.ref, 'refs/tags/') }} | |
runs-on: ubuntu-latest | |
container: { image: 'ghcr.io/tim-janik/anklang-ci:focal-latest' } | |
steps: | |
- { uses: actions/checkout@v4.1.1, with: { fetch-depth: 0, submodules: recursive } } | |
- name: 'Fetch all tags' | |
run: | | |
sed 's,git@github.com:,https://github.com/,' -i .git/config ; # fetch without ssh creds | |
git fetch -f --tags && git describe --always --long ; # Fix actions/checkout#290 | |
- name: 'Configure build presets' | |
run: | | |
echo -e ' prefix=/\n CC=clang \n CXX=clang++ \n CLANG_TIDY=clang-tidy ' > config-defaults.mk | |
- run: | | |
make -j`nproc` all | |
- run: | | |
make -j`nproc` check | |
- name: 'Make clang-tidy' | |
run: | | |
make -j`nproc` clang-tidy | |
# Artifact upload from clang-tidy | |
- uses: actions/upload-artifact@v4 | |
with: { name: clang-tidy, path: out/clang-tidy/ } | |
- name: 'Make branch-check' | |
# Use non-0 exit status for a failing branch-check on PRs | |
run: | | |
test -z "${{ github.event.pull_request }}" || BRANCH_CHECK_EXIT=77 | |
make branch-check BRANCH_CHECK_EXIT=$BRANCH_CHECK_EXIT | |
Ping-IRC: | |
needs: [FocalAssets, UploadDocs, ArchReplay, FocalClangTidy] | |
runs-on: ubuntu-latest | |
steps: | |
- { uses: actions/checkout@v4.1.1, with: { fetch-depth: 0 } } # Fix actions/checkout#290 | |
- run: git fetch -f --tags && git submodule update --init --recursive && git describe | |
- name: Check Jobs | |
run: | | |
echo '${{ needs.FocalAssets.result }}' '${{ needs.UploadDocs.result }}' '${{ needs.ArchReplay.result }}' '${{ needs.FocalClangTidy.result }}' | |
[[ ${{ needs.FocalAssets.result }} =~ success|skipped ]] | |
[[ ${{ needs.UploadDocs.result }} =~ success|skipped ]] | |
[[ ${{ needs.ArchReplay.result }} =~ success|skipped ]] | |
[[ ${{ needs.FocalClangTidy.result }} =~ success|skipped ]] | |
- name: Ping IRC | |
if: ${{ always() && !env.ACT }} | |
run: | | |
R='${{ github.repository }}' && R=${R#*/} | |
B='${{ github.ref }}' && B=${B#refs/heads/} | |
S='${{ job.status }}' && URL='${{ github.event.head_commit.url }}' | |
A='${{ github.actor }}' && B="$(git branch --show-current)" | |
MSG=$(git log -1 --format='%s') | |
.github/workflows/ircbot.py -q -j "#Anklang" -R "$R" -U "$A" -D "$B" -S "$S" "$MSG" "$URL" |