Skip to content

Commit bf24f85

Browse files
committed
Create GitHub action for releasing _freeze folder
1 parent 385b160 commit bf24f85

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: Create release with _freeze
2+
3+
on:
4+
workflow_dispatch:
5+
# Comment out before merging!!
6+
push:
7+
branches:
8+
- py/release-workflow
9+
10+
permissions:
11+
contents: write
12+
13+
jobs:
14+
build:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Setup Julia
21+
uses: julia-actions/setup-julia@v2
22+
with:
23+
version: '1.10'
24+
25+
- name: Set up Quarto
26+
uses: quarto-dev/quarto-actions/setup@v2
27+
with:
28+
# Needs Quarto 1.6 (which is currently a pre-release version) to fix #533
29+
version: pre-release
30+
31+
- name: Render
32+
run: quarto render
33+
34+
- name: Compress _freeze folder
35+
run: tar -czf _freeze.tar.gz _freeze
36+
37+
- name: Generate tag name for release
38+
id: tag
39+
run: echo "tag_name=freeze_$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
40+
41+
- name: Create GitHub release
42+
uses: softprops/action-gh-release@v2
43+
with:
44+
tag_name: ${{ steps.tag.outputs.tag_name }}
45+
files: |
46+
_freeze.tar.gz
47+
Manifest.toml
48+
body: |
49+
This release contains the `_freeze` folder generated by Quarto when
50+
rendering the docs. You can use this to speed up the rendering process
51+
on your local machine by downloading and extracting the `_freeze` folder,
52+
then placing it at the root of the project.
53+
54+
Note that the contents of the `_freeze` folder only hash the contents of
55+
the .qmd files, and do not include information about the Julia environment.
56+
Thus, each `_freeze` folder is only valid for a given Julia environment,
57+
which is specified in the Manifest.toml file included in this release. To
58+
ensure reproducibility, you should make sure to use the Manifest.toml file
59+
locally as well.

0 commit comments

Comments
 (0)