Skip to content

Commit 45b9465

Browse files
committed
Add workflow for updating Pixi lockfile via a pull request
1 parent 8947f15 commit 45b9465

3 files changed

Lines changed: 92 additions & 0 deletions

File tree

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Reusable workflow to run pixi-diff-to-markdown and create a PR with the updated lockfile.
2+
3+
name: pixi-lockfile-updater
4+
5+
on:
6+
workflow_call:
7+
secrets:
8+
GITHUB_TOKEN:
9+
required: true
10+
11+
jobs:
12+
pixi-update:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout repository
16+
uses: actions/checkout@v6
17+
18+
- name: Set up Pixi
19+
uses: prefix-dev/setup-pixi@1b2de7f3351f171c8b4dfeb558c639cb58ed4ec0
20+
with:
21+
run-install: false
22+
23+
- name: Update lockfile
24+
run: |
25+
set -o pipefail
26+
pixi global install pixi-diff-to-markdown
27+
pixi update --json | pixi exec pixi diff-to-markdown >> diff.md
28+
29+
- name: Create pull request
30+
uses: peter-evans/create-pull-request@5f6978faf089d4d20b00c7766989d076bb2fc7f1
31+
with:
32+
token: ${{ secrets.GITHUB_TOKEN }}
33+
commit-message: Update pixi lockfile
34+
title: Update pixi lockfile
35+
body-path: diff.md
36+
branch: update-pixi
37+
base: main
38+
labels: pixi
39+
delete-branch: true
40+
add-paths: pixi.lock
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Updates the pixi lockfile and create a pull request containing the changes.
2+
3+
name: update-pixi-lockfile
4+
5+
on:
6+
# Enable workflow to be triggered from GitHub CLI, browser, or via API
7+
workflow_dispatch:
8+
9+
schedule:
10+
- cron: 43 5 16 * * # 05:43 UTC on the 16th day of each month
11+
12+
jobs:
13+
update-pixi-lockfile:
14+
permissions:
15+
contents: write
16+
pull-requests: write
17+
18+
uses: UBC-MOAD/gha-workflows/.github/workflows/pixi-lockfile-updater.yaml@main
19+
secrets:
20+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@ Reusable GitHub Actions workflows for MOAD repositories and workflow management
1212

1313
## Changes
1414

15+
### 11-May-2026
16+
17+
Added `update-pixi-lockfile.yaml` workflow to xxx.
18+
19+
1520
### 31-Dec-2025
1621

1722
Added [Pixi](https://pixi.sh/latest/) versions of `pytest-with-coverage` and `sphinx-linkcheck`
@@ -208,6 +213,33 @@ jobs:
208213
```
209214

210215

216+
### `pixi-lockfile-updater`
217+
218+
**Notes:**
219+
220+
* Each repo should have a different cron schedule.
221+
Please see https://salishseacast.slack.com/archives/C01GYJBSF0X/p1608574921004500
222+
223+
```yaml
224+
name: update-pixi-lockfile
225+
226+
on:
227+
# Enable workflow to be triggered from GitHub CLI, browser, or via API
228+
workflow_dispatch:
229+
230+
schedule:
231+
- cron: 43 5 6 * * # 05:43 UTC on the 6th day of each month
232+
233+
jobs:
234+
update-pixi-lockfile:
235+
permissions:
236+
contents: write
237+
pull-requests: write
238+
239+
uses: UBC-MOAD/gha-workflows/.github/workflows/pixi-lockfile-updater.yaml@main
240+
```
241+
242+
211243
## `gha_workflows_checker.py` Script
212244

213245
Use the GitHub CLI tool to list GitHub Actions workflows in repositories with their

0 commit comments

Comments
 (0)