Files
anki/release.just
Abdo 743b6bbb0d fix: Use Powershell to run just commands on Windows (#4921)
## Linked issue

Closes #4920

## Summary

Default to PowerShell 7+ to run just commands on Windows for more
consistent argument quoting rules.

## Steps to reproduce (before)

- Trigger the release workflow: `just release::build --ref main`.
- Inspect the logs of the `prepare` step on GitHub and notice that the
version has literal double quotes.

## How to test (after)

Repeat the same steps and confirm quotes are not passed literally.
2026-06-01 16:49:39 +03:00

79 lines
2.4 KiB
Plaintext

set windows-shell := ["pwsh", "-NoLogo", "-NoProfileLoadTime", "-Command"]
version := `cat .version`
# Prepare a release: validate version, check CI, update .version
[arg("version", long)]
[arg("ref", long)]
[arg("skip-ci-check", long)]
prepare version ref skip-ci-check="false":
gh workflow run prepare-release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f skip-ci-check={{ skip-ci-check }}
# Build all platforms, no signing or publishing
[arg("ref", long)]
build ref:
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign=false \
-f draft-release=false \
-f publish-testpypi=false \
-f publish-pypi=false
# Build and sign artifacts
[arg("ref", long)]
sign ref:
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign=true \
-f draft-release=false \
-f publish-testpypi=false \
-f publish-pypi=false
# Full public release: sign, draft, testpypi, pypi
[arg("ref", long)]
public ref:
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign=true \
-f draft-release=true \
-f publish-testpypi=true \
-f publish-pypi=true
# Publish Python packages to TestPyPI only
[arg("ref", long)]
testpypi ref:
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign=false \
-f draft-release=false \
-f publish-testpypi=true \
-f publish-pypi=false
# Publish Python packages to TestPyPI and PyPI
[arg("ref", long)]
pypi ref:
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign=false \
-f draft-release=false \
-f publish-testpypi=true \
-f publish-pypi=true
# Manual release with explicit flags
[arg("ref", long)]
[arg("sign", long)]
[arg("draft-release", long)]
[arg("publish-testpypi", long)]
[arg("publish-pypi", long)]
[arg("skip-ci-check", long)]
custom ref sign="false" draft-release="false" publish-testpypi="false" publish-pypi="false" skip-ci-check="false":
gh workflow run release.yml --ref {{ ref }} \
-f version="{{ version }}" \
-f sign={{ sign }} \
-f draft-release={{ draft-release }} \
-f publish-testpypi={{ publish-testpypi }} \
-f publish-pypi={{ publish-pypi }} \
-f skip-ci-check={{ skip-ci-check }}