Compare commits

...

10 Commits

Author SHA1 Message Date
Sven Vogel cc4d217547 ci: remove run condition for CI on push on main
Build'n check / run-ci-linux (push) Has been skipped Details
Build'n check / Check Template and Build example (pull_request) Successful in 2m38s Details
Build'n check / release (pull_request) Has been skipped Details
2024-11-25 10:33:12 +01:00
Sven Vogel 84af717ce7 style: run formatter 2024-11-25 10:31:47 +01:00
Sven Vogel c961dacf96 ci: add ripgrep to nix shell 2024-11-25 10:31:30 +01:00
Sven Vogel c819704b49 ci: revert artifact up- and download action to v3
Build'n check / run-ci-linux (push) Has been skipped Details
2024-11-25 10:27:46 +01:00
Sven Vogel 6695c5e204 ci: tag release commit
Build'n check / run-ci-linux (push) Has been skipped Details
Build'n check / run-ci-linux (pull_request) Successful in 2m39s Details
Build'n check / Check Template and Build example (pull_request) Failing after 2m32s Details
Build'n check / release (pull_request) Has been skipped Details
2024-11-25 10:11:11 +01:00
Sven Vogel fe9fa2e614 ci: run release job when release message is present 2024-11-25 10:10:55 +01:00
Sven Vogel e77de7aec5 ci: run release on PR 2024-11-25 10:10:33 +01:00
Sven Vogel 1567c6212c style: fix spelling mistake in CI 2024-11-25 09:11:31 +01:00
Sven Vogel 5dece112cb ci: bump artifact actions to v4 2024-11-25 09:11:08 +01:00
Sven Vogel 4c55b9cc7f ci: draft release pipeline 2024-11-25 09:10:49 +01:00
4 changed files with 123 additions and 44 deletions

View File

@ -2,9 +2,6 @@ name: Build'n check
run-name: Performing Typst compilation
on:
push:
pull_request:
branches:
- main
jobs:
run-ci-linux:
runs-on: ubuntu-latest
@ -12,8 +9,7 @@ jobs:
# push with commit containing "Run-Checks"
if: >
(contains(github.event.head_commit.message, 'Run-Checks') &&
github.event_name == 'push') ||
github.event_name == 'pull_request'
github.event_name == 'push')
steps:
- name: Check out repository code
uses: actions/checkout@v3

View File

@ -0,0 +1,79 @@
name: Build'n check
on:
pull_request:
branches:
- main
types:
- closed
jobs:
build:
name: Check Template and Build example
runs-on: ubuntu-latest
steps:
- name: Check out repository code
uses: actions/checkout@v3
- name: Install dependencies for Nix setup action
run: |
apt update -y
apt install sudo -y
- name: Setup Nix
uses: cachix/install-nix-action@v27
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Stylecheck
run: nix-shell --run "./run-fmt.sh --check src/lib.typ"
- id: build
name: Build
run: |
nix-shell --run ./run-ci.sh
- name: Upload artifact
id: artifact-upload
uses: actions/upload-artifact@v3
with:
name: example-document
path: ${{ github.workspace }}/example.pdf
if-no-files-found: error
retention-days: 1
- name: Output artifact ID
run: echo 'Artifact ID is ${{ steps.artifact-upload.outputs.artifact-id }}'
release:
runs-on: ubuntu-latest
needs: build
if: contains(github.event.head_commit.message, 'Release-As:')
env:
USERNAME: servostar
steps:
- name: Check out repository code
uses: actions/checkout@v3
- name: Setup go
uses: actions/setup-go@v4
with:
go-version: '>=1.20.1'
- name: Download Artifact
id: download
uses: actions/download-artifact@v3
with:
name: example-document
path: ${{ github.workspace }}/Example.pdf
- name: 'Artifact Download Path'
run: echo ${{ steps.download.outputs.download-path }}
- name: Prepare Release
run: echo ${{ github.sha }} > Release.txt
- name: Tag Release Commit
run: |
echo ${{github.event.head_commit.message}} | grep -Po '(?<=Release-As: )v\d+\.\d+\.\d+' > Version.txt
echo "==> Tagging for version: $(cat Version.txt)"
git config --global credential.helper store
echo "https://${USERNAME}:${{secrets.RELEASE_TOKEN}}}@${{github.repositoryUrl}}" > ~/.git-credentials
git tag -m "Release" $(cat Version.txt)
git push ${{github.repositoryUrl}} $(cat Version.txt)
- name: Create release
id: create-release
uses: https://gitea.com/actions/release-action@main
with:
files: |-
Example.pdf
Release.txt
Version.txt
LICENSE
api_key: '${{secrets.RELEASE_TOKEN}}'

View File

@ -9,5 +9,6 @@ pkgs.mkShellNoCC {
python312Packages.pyyaml
typst
typstyle
ripgrep
];
}

View File

@ -200,46 +200,49 @@ SOFTWARE.*/
#block(
below: 1.5em,
width: 100%,
par(hanging-indent: 1em, align(left)[
#text(weight: "bold", entry.short)
#if hasLong and hasDesc [
(#text(entry.long))
] else if hasLong {
text(entry.long)
}
#if hasDesc [ #sym.dash.en ]
#if hasDesc [ #desc ]
#if disable-back-references != true {
term_references
.map(x => x.location())
.sorted(key: x => x.page())
.fold(
(values: (), pages: ()),
((values, pages), x) => if pages.contains(
x.page(),
) {
(values: values, pages: pages)
} else {
values.push(x)
pages.push(x.page())
(values: values, pages: pages)
},
)
.values
.map(x => {
let page-numbering = x.page-numbering()
if page-numbering == none {
page-numbering = "1"
par(
hanging-indent: 1em,
align(left)[
#text(weight: "bold", entry.short)
#if hasLong and hasDesc [
(#text(entry.long))
] else if hasLong {
text(entry.long)
}
#if hasDesc [ #sym.dash.en ]
#if hasDesc [ #desc ]
#if disable-back-references != true {
term_references
.map(x => x.location())
.sorted(key: x => x.page())
.fold(
(values: (), pages: ()),
((values, pages), x) => if pages.contains(
x.page(),
) {
(values: values, pages: pages)
} else {
values.push(x)
pages.push(x.page())
(values: values, pages: pages)
},
)
.values
.map(x => {
let page-numbering = x.page-numbering()
if page-numbering == none {
page-numbering = "1"
}
link(x)[#numbering(
page-numbering,
..counter(page).at(x),
)]
}
link(x)[#numbering(
page-numbering,
..counter(page).at(x),
)]
}
)
.join(", ")
}
]),
)
.join(", ")
}
],
),
)
]
}