Merge branch 'main' into r1 #250
This file contains 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
name: Verification of Complete Pipeline | |
on: | |
push: | |
workflow_dispatch: | |
jobs: | |
UnitTestingParams: | |
uses: pyTooling/Actions/.github/workflows/Parameters.yml@r1 | |
with: | |
name: pyDummy | |
python_version_list: "3.8 3.9 3.10 3.11 3.12 pypy-3.8 pypy-3.9 pypy-3.10" | |
disable_list: "windows:pypy-3.10" | |
PlatformTestingParams: | |
uses: pyTooling/Actions/.github/workflows/Parameters.yml@r1 | |
with: | |
name: Platform | |
python_version_list: "" | |
system_list: "ubuntu windows macos mingw32 mingw64 clang64 ucrt64" | |
UnitTesting: | |
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@r1 | |
needs: | |
- UnitTestingParams | |
with: | |
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }} | |
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} | |
unittest_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }} | |
# coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | |
# coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }} | |
# coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | |
# coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | |
PlatformTesting: | |
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@r1 | |
needs: | |
- PlatformTestingParams | |
with: | |
jobs: ${{ needs.PlatformTestingParams.outputs.python_jobs }} | |
# tests_directory: "" | |
unittest_directory: platform | |
unittest_xml_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_xml }} | |
unittest_html_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_html }} | |
coverage_sqlite_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_sqlite }} | |
coverage_xml_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_xml }} | |
coverage_json_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_json }} | |
coverage_html_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_html }} | |
# Coverage: | |
# uses: pyTooling/Actions/.github/workflows/CoverageCollection.yml@r1 | |
# needs: | |
# - UnitTestingParams | |
# with: | |
# python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | |
# artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | |
# secrets: | |
# codacy_token: ${{ secrets.CODACY_PROJECT_TOKEN }} | |
StaticTypeCheck: | |
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@r1 | |
needs: | |
- UnitTestingParams | |
with: | |
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | |
commands: | | |
mypy --html-report htmlmypy -p pyDummy | |
html_report: 'htmlmypy' | |
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | |
PublishCoverageResults: | |
uses: pyTooling/Actions/.github/workflows/PublishCoverageResults.yml@r1 | |
needs: | |
- UnitTestingParams | |
- UnitTesting | |
- PlatformTesting | |
# - Coverage | |
with: | |
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | |
coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }} | |
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | |
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | |
secrets: | |
codacy_token: ${{ secrets.CODACY_PROJECT_TOKEN }} | |
PublishTestResults: | |
uses: pyTooling/Actions/.github/workflows/PublishTestResults.yml@r1 | |
needs: | |
- UnitTesting | |
- PlatformTesting | |
Package: | |
uses: pyTooling/Actions/.github/workflows/Package.yml@r1 | |
needs: | |
- UnitTestingParams | |
- UnitTesting | |
# - Coverage | |
- PlatformTesting | |
with: | |
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | |
artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | |
# VerifyDocs: | |
# uses: pyTooling/Actions/.github/workflows/VerifyDocs.yml@r1 | |
# needs: | |
# - UnitTestingParams | |
# with: | |
# python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | |
BuildTheDocs: | |
uses: pyTooling/Actions/.github/workflows/BuildTheDocs.yml@r1 | |
needs: | |
- UnitTestingParams | |
# - VerifyDocs | |
with: | |
artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | |
PublishToGitHubPages: | |
uses: pyTooling/Actions/.github/workflows/PublishToGitHubPages.yml@r1 | |
needs: | |
- UnitTestingParams | |
- BuildTheDocs | |
# - Coverage | |
- PublishCoverageResults | |
- StaticTypeCheck | |
with: | |
doc: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | |
coverage: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | |
typing: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | |
ReleasePage: | |
uses: pyTooling/Actions/.github/workflows/Release.yml@r1 | |
if: startsWith(github.ref, 'refs/tags') | |
needs: | |
- UnitTesting | |
- PlatformTesting | |
# - Coverage | |
# - StaticTypeCheck | |
- Package | |
- PublishToGitHubPages | |
PublishOnPyPI: | |
uses: pyTooling/Actions/.github/workflows/PublishOnPyPI.yml@r1 | |
if: startsWith(github.ref, 'refs/tags') | |
needs: | |
- UnitTestingParams | |
- ReleasePage | |
# - Package | |
with: | |
python_version: ${{ needs.UnitTestingParams.outputs.python_version }} | |
requirements: -r dist/requirements.txt | |
artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | |
secrets: | |
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} | |
ArtifactCleanUp: | |
uses: pyTooling/Actions/.github/workflows/ArtifactCleanUp.yml@r1 | |
needs: | |
- UnitTestingParams | |
- PlatformTestingParams | |
- UnitTesting | |
- PlatformTesting | |
# - Coverage | |
- StaticTypeCheck | |
# - BuildTheDocs | |
- PublishToGitHubPages | |
- PublishCoverageResults | |
- PublishTestResults | |
with: | |
package: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }} | |
remaining: | | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}-* | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }} | |
${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }} | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_xml }}-* | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_html }}-* | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_sqlite }}-* | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_xml }}-* | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_json }}-* | |
${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_html }}-* |