feat: detect code by classes (#355) #4
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python | |
name: Python package | |
on: | |
push: | |
tags: | |
- '*released' | |
workflow_dispatch: | |
jobs: | |
update-version: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
ref: main | |
fetch-depth: 0 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.10" | |
- name: Update version.py | |
run: | | |
python update_version.py | |
- name: Verify version.py | |
run: | | |
ls -l llm_web_kit/libs/version.py | |
cat llm_web_kit/libs/version.py | |
- name: Commit changes | |
run: | | |
git config --local user.email "[email protected]" | |
git config --local user.name "quyuan" | |
git add llm_web_kit/libs/version.py | |
if git diff-index --quiet HEAD; then | |
echo "No changes to commit" | |
else | |
git commit -m "Update version.py with new version" | |
fi | |
id: commit_changes | |
- name: Push changes | |
if: steps.commit_changes.outcome == 'success' | |
env: | |
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }} | |
run: | | |
git push origin main | |
build: | |
needs: [ update-version ] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.10"] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: main | |
fetch-depth: 0 | |
- name: Verify version.py | |
run: | | |
ls -l llm_web_kit/libs/version.py | |
cat llm_web_kit/libs/version.py | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi | |
- name: Install wheel | |
run: | | |
python -m pip install wheel | |
- name: Build wheel | |
run: | | |
python setup.py bdist_wheel | |
- name: Upload artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: wheel-file | |
path: dist/*.whl | |
retention-days: 30 | |
release: | |
needs: [ build ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Download artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: wheel-file | |
path: dist | |
- name: Create and Upload Release | |
id: create_release | |
uses: softprops/action-gh-release@4634c16e79c963813287e889244c50009e7f0981 | |
with: | |
files: './dist/*.whl' | |
env: | |
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }} | |
- name: Publish distribution to PyPI | |
run: | | |
pip install twine | |
twine upload --repository-url https://test.pypi.org/legacy/ dist/* -u __token__ -p ${{ secrets.PYPI_TOKEN }} |