Skip to content

Commit

Permalink
Add conda-forge CI job using pixi
Browse files Browse the repository at this point in the history
  • Loading branch information
traversaro committed Nov 5, 2024
1 parent 3ec48ec commit b787f74
Show file tree
Hide file tree
Showing 5 changed files with 4,346 additions and 0 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/test-pixi.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Run tests with pixi

on:
# on demand
workflow_dispatch:
inputs:
delete_pixi_lock:
description: 'If true, delete pixi.lock, to test against the latest version of dependencies.'
required: true
default: 'false'
pull_request:
schedule:
# * is a special character in YAML so you have to quote this string
# Execute a "nightly" build twice a week 2 AM UTC
- cron: '0 2 * * 2,5'

jobs:
pixi-test:
name: '[pixi:${{ matrix.os }}]'
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [
ubuntu-22.04,
macos-latest,
windows-2019
]
steps:
- uses: actions/checkout@v4

# On periodic jobs and when delete_pixi_lock option is true, delete the pixi.lock to check that the project compiles with latest version of dependencies
- name: Delete pixi.lock on scheduled jobs or if delete_pixi_lock is true
if: github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && github.event.inputs.delete_pixi_lock == 'true')
shell: bash
run: |
rm pixi.lock
- name: Set up pixi
uses: prefix-dev/setup-pixi@v0.8.1

- name: Print pixi info
run: pixi info

- name: Build and test the project
run: pixi run test
42 changes: 42 additions & 0 deletions .github/workflows/update-pixi-lockfile.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Update lockfiles

permissions:
contents: write
pull-requests: write

on:
workflow_dispatch:
schedule:
- cron: 0 5 1 * *

jobs:
pixi-update:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4

- name: Set up pixi
uses: prefix-dev/setup-pixi@v0.8.1
with:
run-install: false

- name: Install pixi-diff-to-markdown
run: pixi global install pixi-diff-to-markdown

- name: Update lockfiles
run: |
set -o pipefail
pixi update --json | pixi exec pixi-diff-to-markdown >> diff.md
- name: Create pull request
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: Update pixi lockfile
title: Update pixi lockfile
body-path: diff.md
branch: update-pixi
base: main
labels: pixi
delete-branch: true
add-paths: pixi.lock
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@ tramp
#build
/build/
*.user
.build
.pixi
Loading

0 comments on commit b787f74

Please sign in to comment.