Skip to content

Commit

Permalink
fix: update ci-cd.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
rorywhite200 authored Jan 30, 2024
1 parent 44cfa0c commit 591d215
Showing 1 changed file with 22 additions and 32 deletions.
54 changes: 22 additions & 32 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
python-version: "{{ cookiecutter.python_version }}"

- name: Check-out repository
uses: actions/checkout@v3
Expand All @@ -24,7 +24,7 @@ jobs:
run: poetry install

- name: Test with pytest
run: poetry run pytest tests/ --cov=passwordler --cov-report=xml
run: poetry run pytest tests/ --cov={{ cookiecutter.__package_slug }} --cov-report=xml

- name: Use Codecov to track coverage
uses: codecov/codecov-action@v3
Expand All @@ -35,12 +35,15 @@ jobs:
run: poetry run make html --directory docs/

cd:
permissions:
id-token: write
contents: write

# Only run this job if the "ci" job passes
needs: ci

# Only run this job if new work is pushed to "main"
### NOTE: REMOVE the `false` in later milestones
if: github.event_name == 'push' && github.ref == 'refs/heads/main' && false
if: github.event_name == 'push' && github.ref == 'refs/heads/main'

# Set up operating system
runs-on: ubuntu-latest
Expand All @@ -50,54 +53,41 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
python-version: "{{ cookiecutter.python_version }}"

- name: Check-out repository
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Install poetry
uses: snok/install-poetry@v1

- name: Install package
run: poetry install

- name: Install Python Semantic Release
run: poetry run pip install python-semantic-release

- name: Use Python Semantic Release to prepare release
env:
# This token is created automatically by GH Actions
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
git config user.name github-actions
git config user.email github-actions@github.com
poetry run semantic-release publish
### For milestone 1, no need to publish release 0.01
### For later milestones, we need to setup TEST_PYPI_API_TOKEN and PYPI_API_TOKEN in the repo settings
id: release
uses: python-semantic-release/python-semantic-release@v8.3.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}

- name: Publish to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
if: steps.release.outputs.released == 'true'
with:
user: __token__
password: ${{ secrets.TEST_PYPI_API_TOKEN }}
repository-url: https://test.pypi.org/legacy/
# skip uploading a package if a version with the same name and version number already exists on the specified package index
skip-existing: true
password: ${{ secrets.TEST_PYPI_API_TOKEN }}

- name: Test install from TestPyPI
run: |
pip install \
--index-url https://test.pypi.org/simple/ \
--extra-index-url https://pypi.org/simple \
passwordler
{{ cookiecutter.__package_slug }}
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
if: steps.release.outputs.released == 'true'
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
# skip uploading a package if a version with the same name and version number already exists on the specified package index
skip-existing: true

- name: Publish package distributions to GitHub Releases
uses: python-semantic-release/upload-to-gh-release@main
if: steps.release.outputs.released == 'true'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}

0 comments on commit 591d215

Please sign in to comment.