Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add better support for pyproject.toml pixi projects #87

Merged
merged 28 commits into from
Apr 16, 2024
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
311d39a
test: add test to test the pyproject.toml as manifest
ruben-arts Mar 27, 2024
3168f3a
bump amount of setup-pixi's in readme
ruben-arts Mar 27, 2024
48a3ef2
Merge branch 'main' into test/add_pyproject_test
ruben-arts Apr 11, 2024
8aa45c3
feat: automatically select the pyproject if it exists instead of the …
ruben-arts Apr 11, 2024
375fb6b
misc: add idea to gitignore
ruben-arts Apr 11, 2024
2efa215
fix: update readme and dist/
ruben-arts Apr 11, 2024
bc45914
feat: read tool.pixi from pyproject.toml to validate the existence of…
ruben-arts Apr 11, 2024
00eaffd
misc: Make it a pixi project, and lint and build
ruben-arts Apr 11, 2024
f1b652f
fix: pixi project and removed unused test
ruben-arts Apr 11, 2024
61244f5
Update README.md
ruben-arts Apr 12, 2024
c1c97a7
Update .github/workflows/test.yml
ruben-arts Apr 12, 2024
abd5917
Update .github/workflows/test.yml
ruben-arts Apr 12, 2024
be07eee
Update .gitattributes
ruben-arts Apr 12, 2024
499a790
fix: add toml to dist
ruben-arts Apr 12, 2024
24702be
fix: Don't throw error when missing manifest
ruben-arts Apr 12, 2024
6a376ab
Update README.md
ruben-arts Apr 12, 2024
e24a184
Update pixi.toml
ruben-arts Apr 12, 2024
f633ffc
Update .gitignore
ruben-arts Apr 12, 2024
7bf43e8
bump: action version
ruben-arts Apr 12, 2024
e82de97
misc: remove pixi project from repo
ruben-arts Apr 15, 2024
11ae440
bump: readme to latest version
ruben-arts Apr 15, 2024
1a1dd83
Merge branch 'main' into test/add_pyproject_test
ruben-arts Apr 15, 2024
14bcd3e
bump: to 0.6.0
ruben-arts Apr 15, 2024
ba9d90b
fix: pyproject test
ruben-arts Apr 15, 2024
e5bc825
Update test/pyproject-manifest/pyproject.toml
ruben-arts Apr 15, 2024
20cd34b
misc: make info debug
ruben-arts Apr 15, 2024
a8bbe87
test: add test to see if python is installed
ruben-arts Apr 16, 2024
d5c99bf
chore: build dist
ruben-arts Apr 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
dist/** -diff linguist-generated=true
pixi.lock linguist-language=YAML

ruben-arts marked this conversation as resolved.
Show resolved Hide resolved
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
run: |
set -euo pipefail
latest_version="$(jq -r '.version' package.json)"
count_expected=12
count_expected=13
count_actual="$(grep -c "setup-pixi@v$latest_version" README.md || true)"
if [ "$count_actual" -ne "$count_expected" ]; then
echo "::error file=README.md::Expected $count_expected mentions of \`setup-pixi@v$latest_version\` in README.md, but found $count_actual."
Expand Down
10 changes: 10 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -574,6 +574,16 @@ jobs:
cache-key: test-cache-${{ github.sha }}-${{ github.run_attempt }}-
# check the action logs to see if the cache write was skipped

pyproject:
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Move pixi files
run: mv test/pyproject-manifest/* .
- uses: ./
run: pixi run test
ruben-arts marked this conversation as resolved.
Show resolved Hide resolved

custom-pyproject-manifest-path:
strategy:
matrix:
Expand Down
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -97,3 +97,11 @@ Thumbs.db
# Ignore built ts files
__tests__/runner/*
lib/**/*

# Ignore jetbrains files
.idea

# Ignore pixi environments
.pixi
*.egg-info

ruben-arts marked this conversation as resolved.
Show resolved Hide resolved
18 changes: 14 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ GitHub Action to set up the [pixi](https://github.com/prefix-dev/pixi) package m
```yml
- uses: prefix-dev/[email protected]
with:
pixi-version: v0.18.0
pixi-version: v0.19.1
cache: true
auth-host: prefix.dev
auth-token: ${{ secrets.PREFIX_DEV_TOKEN }}
Expand Down Expand Up @@ -304,13 +304,23 @@ On self-hosted runners, you also might want to alter the default pixi install lo
pixi-bin-path: ${{ runner.temp }}/bin/pixi
```

### Using the `pyproject.toml` as a manifest file for pixi.
`setup-pixi` wil automatically pick up the `pyproject.toml` if it contains a `[tool.pixi.project]` section and no `pixi.toml`.
ruben-arts marked this conversation as resolved.
Show resolved Hide resolved
This can be overwritten by setting the `manifest-file` input argument.
ruben-arts marked this conversation as resolved.
Show resolved Hide resolved

```yml
- uses: prefix-dev/[email protected]
with:
manifest-path: pyproject.toml
```

## More examples

If you want to see more examples, you can take a look at the [GitHub Workflows of this repository](.github/workflows/test.yml).

## Local Development

1. Clone this repository.
1. Run `pnpm install` inside the repository (if you don't have [`pnpm`](https://github.com/pnpm/pnpm) installed, you can install it with `npm install -g pnpm` or `brew install pnpm`).
1. Run `pnpm dev` for live transpilation of the TypeScript source code.
1. To test the action, you can run [`act`](https://github.com/nektos/act) (inside docker) or use :sparkles: CI driven development :sparkles:.
2. Run `pixi run install` inside the repository to install the dependencies.
3. Run `pixi run dev` for live transpilation of the TypeScript source code.
4. To test the action, you can run [`act`](https://github.com/nektos/act) (inside docker) or use :sparkles: CI driven development :sparkles:.
40 changes: 27 additions & 13 deletions dist/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 15 additions & 1 deletion dist/post.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
pavelzw marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
"@actions/exec": "^1.1.1",
"@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.1",
"toml": "^3.0.0",
"untildify": "^5.0.0",
"zod": "^3.22.4"
},
Expand Down
Loading