fix: make TestPyPI upload optional and non-blocking
- Add continue-on-error to TestPyPI step - Check if TEST_PYPI_API_TOKEN exists before attempting upload - Add graceful failure handling with clear messages - Update docs to explain TestPyPI token configuration - Clarify that TestPyPI testing is optional Now the release won't fail if TestPyPI is not configured or upload fails
This commit is contained in:
13
.github/workflows/release-manual.yml
vendored
13
.github/workflows/release-manual.yml
vendored
@@ -131,13 +131,24 @@ jobs:
|
|||||||
|
|
||||||
- name: Test on TestPyPI (optional)
|
- name: Test on TestPyPI (optional)
|
||||||
if: inputs.test_pypi
|
if: inputs.test_pypi
|
||||||
|
continue-on-error: true
|
||||||
env:
|
env:
|
||||||
TWINE_USERNAME: __token__
|
TWINE_USERNAME: __token__
|
||||||
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }}
|
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
|
if [ -z "$TWINE_PASSWORD" ]; then
|
||||||
|
echo "⚠️ TEST_PYPI_API_TOKEN not configured, skipping TestPyPI upload"
|
||||||
|
echo " To enable TestPyPI testing, add TEST_PYPI_API_TOKEN to repository secrets"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
pip install twine
|
pip install twine
|
||||||
echo "📦 Uploading to TestPyPI..."
|
echo "📦 Uploading to TestPyPI..."
|
||||||
twine upload --repository testpypi packages/*/dist/* --verbose
|
twine upload --repository testpypi packages/*/dist/* --verbose || {
|
||||||
|
echo "⚠️ TestPyPI upload failed, but continuing with release"
|
||||||
|
echo " This is optional and won't block the release"
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
echo "✅ Test upload successful!"
|
echo "✅ Test upload successful!"
|
||||||
echo "📋 Check packages at: https://test.pypi.org/user/your-username/"
|
echo "📋 Check packages at: https://test.pypi.org/user/your-username/"
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
@@ -7,6 +7,16 @@ Before releasing, ensure:
|
|||||||
2. ✅ CI has passed on the latest commit (check [Actions](https://github.com/yichuan-w/LEANN/actions/workflows/ci.yml))
|
2. ✅ CI has passed on the latest commit (check [Actions](https://github.com/yichuan-w/LEANN/actions/workflows/ci.yml))
|
||||||
3. ✅ You have determined the new version number
|
3. ✅ You have determined the new version number
|
||||||
|
|
||||||
|
### Optional: TestPyPI Configuration
|
||||||
|
|
||||||
|
To enable TestPyPI testing (recommended but not required):
|
||||||
|
1. Get a TestPyPI API token from https://test.pypi.org/manage/account/token/
|
||||||
|
2. Add it to repository secrets: Settings → Secrets → Actions → New repository secret
|
||||||
|
- Name: `TEST_PYPI_API_TOKEN`
|
||||||
|
- Value: Your TestPyPI token (starts with `pypi-`)
|
||||||
|
|
||||||
|
**Note**: TestPyPI testing is optional. If not configured, the release will skip TestPyPI and proceed.
|
||||||
|
|
||||||
## 🚀 Recommended: Manual Release Workflow
|
## 🚀 Recommended: Manual Release Workflow
|
||||||
|
|
||||||
### Via GitHub UI (Most Reliable)
|
### Via GitHub UI (Most Reliable)
|
||||||
|
|||||||
Submodule packages/leann-backend-diskann/third_party/DiskANN updated: af2a26481e...25339b0341
Reference in New Issue
Block a user