-
Notifications
You must be signed in to change notification settings - Fork 6
ci: homogenize github actions workflows + use trusted publisher #67
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
Merged
Merged
Changes from 5 commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
2f64942
homogenize github actions workflows + use trusted publisher
mgovers 51d69f1
always release for testing purposes
mgovers 26c35de
fix syntax
mgovers b4695cd
fix typo
mgovers 5aab7f8
revert test changes
mgovers f87e124
Update .github/workflows/build-test-release.yml
mgovers a663b44
fix ci-passed cfr. https://github.com/PowerGridModel/power-grid-model…
mgovers 6e003ca
Feat/test new pypi (#69)
Thijss File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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 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 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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,99 @@ | ||
| # SPDX-FileCopyrightText: Contributors to the Power Grid Model project <[email protected]> | ||
| # | ||
| # SPDX-License-Identifier: MPL-2.0 | ||
|
|
||
|
|
||
| name: CI Build | ||
|
|
||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| # run pipeline on pull request | ||
| pull_request: | ||
| # run pipeline on merge queue | ||
| merge_group: | ||
| # run this workflow manually from the Actions tab | ||
| workflow_dispatch: | ||
| inputs: | ||
| create_release: | ||
| type: boolean | ||
| description: Create a (pre-)release when CI passes | ||
| default: false | ||
| required: true | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }}-ci-build | ||
| cancel-in-progress: true | ||
|
|
||
| jobs: | ||
| ci-started: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - run: echo "ci started" | ||
|
|
||
| build-test-release: | ||
| name: build-test-release | ||
| uses: "./.github/workflows/build-test-release.yml" | ||
| permissions: | ||
| contents: write | ||
| with: | ||
| create_release: ${{ (github.event_name == 'workflow_dispatch' && inputs.create_release) || (github.event_name == 'push') }} | ||
|
|
||
| check-code-quality: | ||
| uses: "./.github/workflows/check-code-quality.yml" | ||
|
|
||
| reuse-compliance: | ||
| uses: "./.github/workflows/reuse-compliance.yml" | ||
|
|
||
| ci-passed: | ||
| runs-on: ubuntu-latest | ||
| needs: [ci-started, build-test-release, check-code-quality, reuse-compliance] | ||
|
|
||
| steps: | ||
| - run: echo "ci passed" | ||
|
|
||
| publish: | ||
| name: Publish to PyPI | ||
| runs-on: ubuntu-latest | ||
| permissions: | ||
| contents: write | ||
| id-token: write # Required for Trusted Publishing | ||
| needs: build-test-release | ||
| if: (github.event_name == 'workflow_dispatch' && inputs.create_release) || github.event_name == 'push' | ||
|
|
||
| steps: | ||
| - name: Download assets from GitHub release | ||
| uses: robinraju/release-downloader@v1 | ||
| with: | ||
| repository: ${{ github.repository }} | ||
| # download the latest release | ||
| latest: true | ||
| # don't download pre-releases | ||
| preRelease: false | ||
| fileName: "*" | ||
| # don't download GitHub-generated source tar and zip files | ||
| tarBall: false | ||
| zipBall: false | ||
| # create a directory to store the downloaded assets | ||
| out-file-path: assets-to-publish | ||
| # don't extract downloaded files | ||
| extract: false | ||
|
|
||
| - name: List downloaded assets | ||
| run: ls -la assets-to-publish | ||
|
|
||
| - name: Upload assets to PyPI | ||
| uses: pypa/gh-action-pypi-publish@release/v1 | ||
| with: | ||
| # To test, use the TestPyPI: | ||
| # repository-url: https://test.pypi.org/legacy/ | ||
| # You must also create an account and project on TestPyPI, | ||
| # as well as set the trusted-publisher in the project settings: | ||
| # https://docs.pypi.org/trusted-publishers/adding-a-publisher/ | ||
| # To publish to the official PyPI repository, just keep | ||
| # repository-url commented out. | ||
| packages-dir: assets-to-publish | ||
| skip-existing: true | ||
| print-hash: true | ||
| verbose: true |
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 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 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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,53 @@ | ||
| # SPDX-FileCopyrightText: Contributors to the Power Grid Model project <[email protected]> | ||
| # | ||
| # SPDX-License-Identifier: MPL-2.0 | ||
|
|
||
| name: Sonar Cloud | ||
|
|
||
| on: | ||
| # run pipeline on push event of main branch | ||
| push: | ||
| branches: | ||
| - main | ||
| # run pipeline on pull request | ||
| pull_request: | ||
| # run pipeline on merge queue | ||
| merge_group: | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }}-sonar | ||
| cancel-in-progress: true | ||
|
|
||
| jobs: | ||
| sonar-cloud: | ||
| permissions: | ||
| contents: write | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
|
|
||
| - name: Checkout source code | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | ||
|
|
||
| - name: Setup Python 3.11 | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: "3.11" | ||
|
|
||
| - name: Install in develop mode | ||
| run: | | ||
| pip install -e .[dev] | ||
|
|
||
| - name: Test and Coverage | ||
| run: | | ||
| coverage run -m pytest | ||
| coverage xml | ||
| coverage report --fail-under=80 | ||
|
|
||
| - name: SonarCloud Scan | ||
| if: ${{ (github.event_name == 'push') || (github.event.pull_request.head.repo.owner.login == 'PowerGridModel') }} | ||
| uses: SonarSource/sonarqube-scan-action@v5 | ||
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} |
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
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.