mirror of
https://github.com/pyTooling/Actions.git
synced 2026-02-12 02:56:56 +08:00
Reduced number of parameters by passing JSON objects.
This commit is contained in:
62
.github/workflows/CompletePipeline.yml
vendored
62
.github/workflows/CompletePipeline.yml
vendored
@@ -130,9 +130,6 @@ jobs:
|
|||||||
|
|
||||||
ConfigParams:
|
ConfigParams:
|
||||||
uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev
|
uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev
|
||||||
with:
|
|
||||||
package_namespace: ${{ inputs.package_namespace }}
|
|
||||||
package_name: ${{ inputs.package_name }}
|
|
||||||
|
|
||||||
UnitTestingParams:
|
UnitTestingParams:
|
||||||
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev
|
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev
|
||||||
@@ -177,17 +174,15 @@ jobs:
|
|||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
with:
|
with:
|
||||||
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }}
|
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }}
|
||||||
|
# TODO: shouldn't this be configured by a parameter? Same as directories
|
||||||
requirements: "-r tests/unit/requirements.txt"
|
requirements: "-r tests/unit/requirements.txt"
|
||||||
# pacboy: "msys/git python-lxml:p"
|
# pacboy: "msys/git python-lxml:p"
|
||||||
unittest_report_xml_directory: ${{ needs.ConfigParams.outputs.unittest_report_xml_directory }}
|
unittest_report_xml: ${{ needs.ConfigParams.outputs.unittest_report_xml }}
|
||||||
unittest_report_xml_filename: ${{ needs.ConfigParams.outputs.unittest_report_xml_filename }}
|
coverage_report_xml: ${{ needs.ConfigParams.outputs.coverage_report_xml }}
|
||||||
coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
coverage_report_json: ${{ needs.ConfigParams.outputs.coverage_report_json }}
|
||||||
coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
coverage_report_html: ${{ needs.ConfigParams.outputs.coverage_report_html }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
coverage_report_json_filename: ${{ needs.ConfigParams.outputs.coverage_report_json_filename }}
|
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
||||||
coverage_report_html_directory: ${{ needs.ConfigParams.outputs.coverage_report_html_directory }}
|
|
||||||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
|
||||||
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
|
||||||
|
|
||||||
StaticTypeCheck:
|
StaticTypeCheck:
|
||||||
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@dev
|
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@dev
|
||||||
@@ -195,24 +190,21 @@ jobs:
|
|||||||
- ConfigParams
|
- ConfigParams
|
||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
with:
|
with:
|
||||||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
||||||
junit_report_directory: ${{ needs.ConfigParams.outputs.typing_report_junit_directory }}
|
cobertura_report: ${{ needs.ConfigParams.outputs.typing_report_cobertura }}
|
||||||
junit_report_file: ${{ needs.ConfigParams.outputs.typing_report_junit_file }}
|
junit_report: ${{ needs.ConfigParams.outputs.typing_report_junit }}
|
||||||
junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_junit }}
|
html_report: ${{ needs.ConfigParams.outputs.typing_report_html }}
|
||||||
cobertura_report_directory: ${{ needs.ConfigParams.outputs.typing_report_cobertura_directory }}
|
cobertura_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_cobertura }}
|
||||||
cobertura_report_file: ${{ needs.ConfigParams.outputs.typing_report_cobertura_file }}
|
junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_junit }}
|
||||||
cobertura_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_cobertura }}
|
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }}
|
||||||
html_report: ${{ needs.ConfigParams.outputs.typing_report_html_directory }}
|
|
||||||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }}
|
|
||||||
|
|
||||||
DocCoverage:
|
DocCoverage:
|
||||||
uses: pyTooling/Actions/.github/workflows/CheckDocumentation.yml@dev
|
uses: pyTooling/Actions/.github/workflows/CheckDocumentation.yml@dev
|
||||||
needs:
|
needs:
|
||||||
- ConfigParams
|
|
||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
with:
|
with:
|
||||||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
||||||
directory: ${{ needs.ConfigParams.outputs.package_directory }}
|
directory: ${{ needs.UnitTestingParams.outputs.package_directory }}
|
||||||
|
|
||||||
Package:
|
Package:
|
||||||
uses: pyTooling/Actions/.github/workflows/Package.yml@dev
|
uses: pyTooling/Actions/.github/workflows/Package.yml@dev
|
||||||
@@ -226,14 +218,13 @@ jobs:
|
|||||||
Install:
|
Install:
|
||||||
uses: pyTooling/Actions/.github/workflows/InstallPackage.yml@dev
|
uses: pyTooling/Actions/.github/workflows/InstallPackage.yml@dev
|
||||||
needs:
|
needs:
|
||||||
- ConfigParams
|
|
||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
- InstallParams
|
- InstallParams
|
||||||
- Package
|
- Package
|
||||||
with:
|
with:
|
||||||
jobs: ${{ needs.InstallParams.outputs.python_jobs }}
|
jobs: ${{ needs.InstallParams.outputs.python_jobs }}
|
||||||
wheel: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }}
|
wheel: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }}
|
||||||
package_name: ${{ needs.ConfigParams.outputs.package_fullname }}
|
package_name: ${{ needs.UnitTestingParams.outputs.package_fullname }}
|
||||||
|
|
||||||
# AppTesting:
|
# AppTesting:
|
||||||
# uses: pyTooling/Actions/.github/workflows/ApplicationTesting.yml@dev
|
# uses: pyTooling/Actions/.github/workflows/ApplicationTesting.yml@dev
|
||||||
@@ -258,13 +249,12 @@ jobs:
|
|||||||
# coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}
|
# coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}
|
||||||
# coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
# coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
||||||
# coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
# coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
||||||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
coverage_report_json: ${{ needs.ConfigParams.outputs.coverage_report_json }}
|
||||||
coverage_report_json_filename: ${{ needs.ConfigParams.outputs.coverage_report_json_filename }}
|
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}
|
||||||
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}
|
coverage_report_html: ${{ needs.ConfigParams.outputs.coverage_report_html }}
|
||||||
coverage_report_html_directory: ${{ needs.ConfigParams.outputs.coverage_report_html_directory }}
|
codecov: ${{ inputs.codecov }}
|
||||||
codecov: ${{ inputs.codecov }}
|
codacy: ${{ inputs.codacy }}
|
||||||
codacy: ${{ inputs.codacy }}
|
|
||||||
secrets:
|
secrets:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
CODACY_TOKEN: ${{ secrets.CODACY_TOKEN }}
|
CODACY_TOKEN: ${{ secrets.CODACY_TOKEN }}
|
||||||
@@ -277,8 +267,8 @@ jobs:
|
|||||||
- UnitTesting
|
- UnitTesting
|
||||||
if: success() || failure()
|
if: success() || failure()
|
||||||
with:
|
with:
|
||||||
testsuite-summary-name: ${{ needs.ConfigParams.outputs.package_fullname }}
|
testsuite-summary-name: ${{ needs.UnitTestingParams.outputs.package_fullname }}
|
||||||
merged_junit_filename: ${{ needs.ConfigParams.outputs.unittest_merged_report_xml_filename }}
|
merged_junit_filename: ${{ fromJson(needs.ConfigParams.outputs.unittest_merged_report_xml).filename }}
|
||||||
merged_junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
merged_junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
dorny: ${{ inputs.dorny }}
|
dorny: ${{ inputs.dorny }}
|
||||||
codecov: ${{ inputs.codecov }}
|
codecov: ${{ inputs.codecov }}
|
||||||
@@ -303,7 +293,7 @@ jobs:
|
|||||||
if: success() || failure()
|
if: success() || failure()
|
||||||
with:
|
with:
|
||||||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
coverage_report_json_directory: ${{ fromJson(needs.ConfigParams.outputs.coverage_report_json).directory }}
|
||||||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }}
|
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }}
|
||||||
@@ -326,7 +316,7 @@ jobs:
|
|||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
- Documentation
|
- Documentation
|
||||||
with:
|
with:
|
||||||
document: ${{ needs.ConfigParams.outputs.package_fullname }}
|
document: ${{ needs.UnitTestingParams.outputs.package_fullname }}
|
||||||
latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }}
|
latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }}
|
||||||
pdf_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_pdf }}
|
pdf_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_pdf }}
|
||||||
can-fail: 'true'
|
can-fail: 'true'
|
||||||
|
|||||||
235
.github/workflows/ExtractConfiguration.yml
vendored
235
.github/workflows/ExtractConfiguration.yml
vendored
@@ -34,15 +34,6 @@ on:
|
|||||||
required: false
|
required: false
|
||||||
default: '3.13'
|
default: '3.13'
|
||||||
type: string
|
type: string
|
||||||
package_namespace:
|
|
||||||
description: 'Name of the tool''s namespace.'
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
type: string
|
|
||||||
package_name:
|
|
||||||
description: 'Name of the tool''s package.'
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
coverage_config:
|
coverage_config:
|
||||||
description: 'Path to the .coveragerc file. Use pyproject.toml by default.'
|
description: 'Path to the .coveragerc file. Use pyproject.toml by default.'
|
||||||
required: false
|
required: false
|
||||||
@@ -50,92 +41,44 @@ on:
|
|||||||
type: string
|
type: string
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
package_fullname:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.package_fullname }}
|
|
||||||
package_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.package_directory }}
|
|
||||||
unittest_report_xml_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.unittest_report_xml_directory }}
|
|
||||||
unittest_report_xml_filename:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.unittest_report_xml_filename }}
|
|
||||||
unittest_report_xml:
|
unittest_report_xml:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.unittest_report_xml }}
|
value: ${{ jobs.Extract.outputs.unittest_report_xml }}
|
||||||
unittest_merged_report_xml_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.unittest_merged_report_xml_directory }}
|
|
||||||
unittest_merged_report_xml_filename:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.unittest_merged_report_xml_filename }}
|
|
||||||
unittest_merged_report_xml:
|
unittest_merged_report_xml:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.unittest_merged_report_xml }}
|
value: ${{ jobs.Extract.outputs.unittest_merged_report_xml }}
|
||||||
coverage_report_html_directory:
|
coverage_report_html:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_html_directory }}
|
value: ${{ jobs.Extract.outputs.coverage_report_html }}
|
||||||
coverage_report_xml_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_xml_directory }}
|
|
||||||
coverage_report_xml_filename:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_xml_filename }}
|
|
||||||
coverage_report_xml:
|
coverage_report_xml:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_xml }}
|
value: ${{ jobs.Extract.outputs.coverage_report_xml }}
|
||||||
coverage_report_json_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_json_directory }}
|
|
||||||
coverage_report_json_filename:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_json_filename }}
|
|
||||||
coverage_report_json:
|
coverage_report_json:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.coverage_report_json }}
|
value: ${{ jobs.Extract.outputs.coverage_report_json }}
|
||||||
typing_report_cobertura_directory:
|
typing_report_cobertura:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.typing_report_cobertura_directory }}
|
value: ${{ jobs.Extract.outputs.typing_report_cobertura }}
|
||||||
typing_report_cobertura_file:
|
typing_report_junit:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.typing_report_cobertura_file }}
|
value: ${{ jobs.Extract.outputs.typing_report_junit }}
|
||||||
typing_report_junit_directory:
|
typing_report_html:
|
||||||
description: ""
|
description: ""
|
||||||
value: ${{ jobs.Extract.outputs.typing_report_junit_directory }}
|
value: ${{ jobs.Extract.outputs.typing_report_html }}
|
||||||
typing_report_junit_file:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.typing_report_junit_file }}
|
|
||||||
typing_report_html_directory:
|
|
||||||
description: ""
|
|
||||||
value: ${{ jobs.Extract.outputs.typing_report_html_directory }}
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
Extract:
|
Extract:
|
||||||
name: 📓 Extract configurations from pyproject.toml
|
name: 📓 Extract configurations from pyproject.toml
|
||||||
runs-on: "ubuntu-${{ inputs.ubuntu_image_version }}"
|
runs-on: "ubuntu-${{ inputs.ubuntu_image_version }}"
|
||||||
outputs:
|
outputs:
|
||||||
package_fullname: ${{ steps.getPackageName.outputs.package_fullname }}
|
unittest_report_xml: ${{ steps.getVariables.outputs.unittest_report_xml }}
|
||||||
package_directory: ${{ steps.getPackageName.outputs.package_directory }}
|
unittest_merged_report_xml: ${{ steps.getVariables.outputs.unittest_merged_report_xml }}
|
||||||
unittest_report_xml_directory: ${{ steps.getVariables.outputs.unittest_report_xml_directory }}
|
coverage_report_html: ${{ steps.getVariables.outputs.coverage_report_html }}
|
||||||
unittest_report_xml_filename: ${{ steps.getVariables.outputs.unittest_report_xml_filename }}
|
coverage_report_xml: ${{ steps.getVariables.outputs.coverage_report_xml }}
|
||||||
unittest_report_xml: ${{ steps.getVariables.outputs.unittest_report_xml }}
|
coverage_report_json: ${{ steps.getVariables.outputs.coverage_report_json }}
|
||||||
unittest_merged_report_xml_directory: ${{ steps.getVariables.outputs.unittest_merged_report_xml_directory }}
|
typing_report_cobertura: ${{ steps.getVariables.outputs.typing_report_cobertura }}
|
||||||
unittest_merged_report_xml_filename: ${{ steps.getVariables.outputs.unittest_merged_report_xml_filename }}
|
typing_report_junit: ${{ steps.getVariables.outputs.typing_report_junit }}
|
||||||
unittest_merged_report_xml: ${{ steps.getVariables.outputs.unittest_merged_report_xml }}
|
typing_report_html: ${{ steps.getVariables.outputs.typing_report_html }}
|
||||||
coverage_report_html_directory: ${{ steps.getVariables.outputs.coverage_report_html_directory }}
|
|
||||||
coverage_report_xml_directory: ${{ steps.getVariables.outputs.coverage_report_xml_directory }}
|
|
||||||
coverage_report_xml_filename: ${{ steps.getVariables.outputs.coverage_report_xml_filename }}
|
|
||||||
coverage_report_xml: ${{ steps.getVariables.outputs.coverage_report_xml }}
|
|
||||||
coverage_report_json_directory: ${{ steps.getVariables.outputs.coverage_report_json_directory }}
|
|
||||||
coverage_report_json_filename: ${{ steps.getVariables.outputs.coverage_report_json_filename }}
|
|
||||||
coverage_report_json: ${{ steps.getVariables.outputs.coverage_report_json }}
|
|
||||||
typing_report_cobertura_directory: ${{ steps.getVariables.outputs.typing_report_cobertura_directory }}
|
|
||||||
typing_report_cobertura_file: ${{ steps.getVariables.outputs.typing_report_cobertura_file }}
|
|
||||||
typing_report_junit_directory: ${{ steps.getVariables.outputs.typing_report_junit_directory }}
|
|
||||||
typing_report_junit_file: ${{ steps.getVariables.outputs.typing_report_junit_file }}
|
|
||||||
typing_report_html_directory: ${{ steps.getVariables.outputs.typing_report_html_directory }}
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: ⏬ Checkout repository
|
- name: ⏬ Checkout repository
|
||||||
@@ -150,54 +93,17 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
python -m pip install --disable-pip-version-check -U wheel tomli
|
python -m pip install --disable-pip-version-check -U wheel tomli
|
||||||
|
|
||||||
- name: 🔁 Full package name and directory
|
|
||||||
id: getPackageName
|
|
||||||
shell: python
|
|
||||||
run: |
|
|
||||||
from os import getenv
|
|
||||||
from pathlib import Path
|
|
||||||
from textwrap import dedent
|
|
||||||
|
|
||||||
namespace = "${{ inputs.package_namespace }}".strip()
|
|
||||||
name = "${{ inputs.package_name }}".strip()
|
|
||||||
|
|
||||||
print(dedent(f"""\
|
|
||||||
INPUTS:
|
|
||||||
package_namespace: {namespace}
|
|
||||||
package_name: {name}
|
|
||||||
"""))
|
|
||||||
|
|
||||||
if namespace == "" or namespace == ".":
|
|
||||||
fullname = f"{name}"
|
|
||||||
directory = f"{name}"
|
|
||||||
else:
|
|
||||||
fullname = f"{namespace}.{name}"
|
|
||||||
directory = f"{namespace}/{name}"
|
|
||||||
|
|
||||||
print(dedent(f"""\
|
|
||||||
OUTPUTS:
|
|
||||||
package_fullname: {fullname}
|
|
||||||
package_directory: {directory}
|
|
||||||
"""))
|
|
||||||
|
|
||||||
github_output = Path(getenv("GITHUB_OUTPUT"))
|
|
||||||
print(f"GITHUB_OUTPUT: {github_output}")
|
|
||||||
with github_output.open("a+", encoding="utf-8") as f:
|
|
||||||
f.write(dedent(f"""\
|
|
||||||
package_fullname={fullname}
|
|
||||||
package_directory={directory}
|
|
||||||
"""))
|
|
||||||
|
|
||||||
- name: 🔁 Extract configurations from pyproject.toml
|
- name: 🔁 Extract configurations from pyproject.toml
|
||||||
id: getVariables
|
id: getVariables
|
||||||
shell: python
|
shell: python
|
||||||
run: |
|
run: |
|
||||||
|
from json import dumps as json_dumps
|
||||||
from os import getenv
|
from os import getenv
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from sys import version
|
from sys import version
|
||||||
from textwrap import dedent
|
from textwrap import dedent
|
||||||
|
|
||||||
print(f"Python: {version}")
|
print(f"Python: {version} (of default installation)")
|
||||||
|
|
||||||
from tomli import load as tomli_load
|
from tomli import load as tomli_load
|
||||||
|
|
||||||
@@ -247,29 +153,58 @@ jobs:
|
|||||||
print(f"::error title=FileNotFoundError::File '{coverageRCFile}' not found.")
|
print(f"::error title=FileNotFoundError::File '{coverageRCFile}' not found.")
|
||||||
exit(1)
|
exit(1)
|
||||||
|
|
||||||
|
unittest_report_xml = {
|
||||||
|
"fullpath": unittestXMLFile.as_posix(),
|
||||||
|
"directory": unittestXMLFile.parent.as_posix(),
|
||||||
|
"filename": unittestXMLFile.name
|
||||||
|
}
|
||||||
|
unittest_merged_report_xml = {
|
||||||
|
"fullpath": mergedUnittestXMLFile.as_posix(),
|
||||||
|
"directory": mergedUnittestXMLFile.parent.as_posix(),
|
||||||
|
"filename": mergedUnittestXMLFile.name
|
||||||
|
}
|
||||||
|
coverage_report_html = {
|
||||||
|
"fullpath": coverageHTMLDirectory.as_posix(),
|
||||||
|
"directory": coverageHTMLDirectory.as_posix()
|
||||||
|
}
|
||||||
|
coverage_report_xml = {
|
||||||
|
"fullpath": coverageXMLFile.as_posix(),
|
||||||
|
"directory": coverageXMLFile.parent.as_posix(),
|
||||||
|
"filename": coverageXMLFile.name
|
||||||
|
}
|
||||||
|
coverage_report_json = {
|
||||||
|
"fullpath": coverageJSONFile.as_posix(),
|
||||||
|
"directory": coverageJSONFile.parent.as_posix(),
|
||||||
|
"filename": coverageJSONFile.name
|
||||||
|
}
|
||||||
|
typing_report_cobertura = {
|
||||||
|
"fullpath": typingCoberturaFile.as_posix(),
|
||||||
|
"directory": typingCoberturaFile.parent.as_posix(),
|
||||||
|
"filename": typingCoberturaFile.name
|
||||||
|
}
|
||||||
|
typing_report_junit = {
|
||||||
|
"fullpath": typingJUnitFile.as_posix(),
|
||||||
|
"directory": typingJUnitFile.parent.as_posix(),
|
||||||
|
"filename": typingJUnitFile.name
|
||||||
|
}
|
||||||
|
typing_report_html = {
|
||||||
|
"fullpath": typingHTMLDirectory.as_posix(),
|
||||||
|
"directory": typingHTMLDirectory.as_posix()
|
||||||
|
}
|
||||||
|
|
||||||
# Write jobs to special file
|
# Write jobs to special file
|
||||||
github_output = Path(getenv("GITHUB_OUTPUT"))
|
github_output = Path(getenv("GITHUB_OUTPUT"))
|
||||||
print(f"GITHUB_OUTPUT: {github_output}")
|
print(f"GITHUB_OUTPUT: {github_output}")
|
||||||
with github_output.open("a+", encoding="utf-8") as f:
|
with github_output.open("a+", encoding="utf-8") as f:
|
||||||
f.write(dedent(f"""\
|
f.write(dedent(f"""\
|
||||||
unittest_report_xml_directory={unittestXMLFile.parent.as_posix()}
|
unittest_report_xml={json_dumps(unittest_report_xml)}
|
||||||
unittest_report_xml_filename={unittestXMLFile.name}
|
unittest_merged_report_xml={json_dumps(unittest_merged_report_xml)}
|
||||||
unittest_report_xml={unittestXMLFile.as_posix()}
|
coverage_report_html={json_dumps(coverage_report_html)}
|
||||||
unittest_merged_report_xml_directory={mergedUnittestXMLFile.parent.as_posix()}
|
coverage_report_xml={json_dumps(coverage_report_xml)}
|
||||||
unittest_merged_report_xml_filename={mergedUnittestXMLFile.name}
|
coverage_report_json={json_dumps(coverage_report_json)}
|
||||||
unittest_merged_report_xml={mergedUnittestXMLFile.as_posix()}
|
typing_report_cobertura={json_dumps(typing_report_cobertura)}
|
||||||
coverage_report_html_directory={coverageHTMLDirectory.as_posix()}
|
typing_report_junit={json_dumps(typing_report_junit)}
|
||||||
coverage_report_xml_directory={coverageXMLFile.parent.as_posix()}
|
typing_report_html={json_dumps(typing_report_html)}
|
||||||
coverage_report_xml_filename={coverageXMLFile.name}
|
|
||||||
coverage_report_xml={coverageXMLFile.as_posix()}
|
|
||||||
coverage_report_json_directory={coverageJSONFile.parent.as_posix()}
|
|
||||||
coverage_report_json_filename={coverageJSONFile.name}
|
|
||||||
coverage_report_json={coverageJSONFile.as_posix()}
|
|
||||||
typing_report_cobertura_directory={typingCoberturaFile.parent.as_posix()}
|
|
||||||
typing_report_cobertura_file={typingCoberturaFile.name}
|
|
||||||
typing_report_junit_directory={typingJUnitFile.parent.as_posix()}
|
|
||||||
typing_report_junit_file={typingJUnitFile.name}
|
|
||||||
typing_report_html_directory={typingHTMLDirectory.as_posix()}
|
|
||||||
"""))
|
"""))
|
||||||
|
|
||||||
print(dedent(f"""\
|
print(dedent(f"""\
|
||||||
@@ -283,3 +218,43 @@ jobs:
|
|||||||
typing junit: {typingJUnitFile}
|
typing junit: {typingJUnitFile}
|
||||||
typing html: {typingHTMLDirectory}
|
typing html: {typingHTMLDirectory}
|
||||||
"""))
|
"""))
|
||||||
|
|
||||||
|
- name: Debug JSON objects
|
||||||
|
run: |
|
||||||
|
printf "unittest_report_xml: JSON=%s\n" "${{ steps.getVariables.outputs.unittest_report_xml }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_report_xml).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_report_xml).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_report_xml).filename }}"
|
||||||
|
|
||||||
|
printf "unittest_merged_report_xml: JSON=%s\n" "${{ steps.getVariables.outputs.unittest_merged_report_xml }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_merged_report_xml).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_merged_report_xml).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.unittest_merged_report_xml).filename }}"
|
||||||
|
|
||||||
|
printf "coverage_report_html: JSON=%s\n" "${{ steps.getVariables.outputs.coverage_report_html }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_html).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_html).directory }}"
|
||||||
|
|
||||||
|
printf "coverage_report_xml: JSON=%s\n" "${{ steps.getVariables.outputs.coverage_report_xml }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_xml).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_xml).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_xml).filename }}"
|
||||||
|
|
||||||
|
printf "coverage_report_json: JSON=%s\n" "${{ steps.getVariables.outputs.coverage_report_json }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_json).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_json).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.coverage_report_json).filename }}"
|
||||||
|
|
||||||
|
printf "typing_report_cobertura: JSON=%s\n" "${{ steps.getVariables.outputs.typing_report_cobertura }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_cobertura).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_cobertura).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_cobertura).filename }}"
|
||||||
|
|
||||||
|
printf "typing_report_junit: JSON=%s\n" "${{ steps.getVariables.outputs.typing_report_junit }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_junit).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_junit).directory }}"
|
||||||
|
printf " filename: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_junit).filename }}"
|
||||||
|
|
||||||
|
printf "typing_report_html: JSON=%s\n" "${{ steps.getVariables.outputs.typing_report_html }}"
|
||||||
|
printf " fullpath: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_html).fullpath }}"
|
||||||
|
printf " directory: %s\n" "${{ fromJSON(steps.getVariables.outputs.typing_report_html).directory }}"
|
||||||
|
|||||||
44
.github/workflows/PublishCoverageResults.yml
vendored
44
.github/workflows/PublishCoverageResults.yml
vendored
@@ -48,37 +48,37 @@ on:
|
|||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
coverage_report_xml_directory:
|
coverage_report_xml:
|
||||||
description: 'Directory containing the XML coverage report file.'
|
description: 'Directory containing the XML coverage report file.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage'
|
default: 'report/coverage'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_xml_filename:
|
# coverage_report_xml_filename:
|
||||||
description: 'Filename of the XML coverage report file.'
|
# description: 'Filename of the XML coverage report file.'
|
||||||
required: false
|
# required: false
|
||||||
default: 'coverage.xml'
|
# default: 'coverage.xml'
|
||||||
type: string
|
# type: string
|
||||||
coverage_json_artifact:
|
coverage_json_artifact:
|
||||||
description: 'Name of the JSON coverage artifact.'
|
description: 'Name of the JSON coverage artifact.'
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
coverage_report_json_directory:
|
coverage_report_json:
|
||||||
description: 'Directory containing the JSON coverage report file.'
|
description: 'Directory containing the JSON coverage report file.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage'
|
default: 'report/coverage'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_json_filename:
|
# coverage_report_json_filename:
|
||||||
description: 'Filename of the JSON coverage report file.'
|
# description: 'Filename of the JSON coverage report file.'
|
||||||
required: false
|
# required: false
|
||||||
default: 'coverage.json'
|
# default: 'coverage.json'
|
||||||
type: string
|
# type: string
|
||||||
coverage_html_artifact:
|
coverage_html_artifact:
|
||||||
description: 'Name of the HTML coverage artifact.'
|
description: 'Name of the HTML coverage artifact.'
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
coverage_report_html_directory:
|
coverage_report_html:
|
||||||
description: 'HTML root directory of the generated coverage report.'
|
description: 'HTML root directory of the generated coverage report.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage/html'
|
default: 'report/coverage/html'
|
||||||
@@ -152,8 +152,8 @@ jobs:
|
|||||||
if: inputs.coverage_html_artifact != ''
|
if: inputs.coverage_html_artifact != ''
|
||||||
run: |
|
run: |
|
||||||
coverage html --rcfile=${{ inputs.coverage_config }} --data-file=.coverage
|
coverage html --rcfile=${{ inputs.coverage_config }} --data-file=.coverage
|
||||||
rm ${{ inputs.coverage_report_html_directory }}/.gitignore
|
rm ${{ fromJson(inputs.coverage_report_html).directory }}/.gitignore
|
||||||
tree -pash ${{ inputs.coverage_report_html_directory }}
|
tree -pash ${{ fromJson(inputs.coverage_report_html).directory }}
|
||||||
|
|
||||||
- name: 📤 Upload 'Coverage SQLite Database' artifact
|
- name: 📤 Upload 'Coverage SQLite Database' artifact
|
||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
@@ -171,8 +171,8 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_xml_artifact }}
|
name: ${{ inputs.coverage_xml_artifact }}
|
||||||
working-directory: ${{ inputs.coverage_report_xml_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_xml).directory }}
|
||||||
path: ${{ inputs.coverage_report_xml_filename }}
|
path: ${{ fromJson(inputs.coverage_report_xml).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
@@ -182,8 +182,8 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_json_artifact }}
|
name: ${{ inputs.coverage_json_artifact }}
|
||||||
working-directory: ${{ inputs.coverage_report_json_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_json).directory }}
|
||||||
path: ${{ inputs.coverage_report_json_filename }}
|
path: ${{ fromJson(inputs.coverage_report_json).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
@@ -193,7 +193,7 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_html_artifact }}
|
name: ${{ inputs.coverage_html_artifact }}
|
||||||
working-directory: ${{ inputs.coverage_report_html_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_html).directory }}
|
||||||
path: '*'
|
path: '*'
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
@@ -206,7 +206,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
disable_search: true
|
disable_search: true
|
||||||
files: ${{ inputs.coverage_report_xml_directory }}/${{ inputs.coverage_report_xml_filename }}
|
files: ${{ fromJson(inputs.coverage_report_xml).fullpath }}
|
||||||
flags: unittests
|
flags: unittests
|
||||||
env_vars: PYTHON
|
env_vars: PYTHON
|
||||||
fail_ci_if_error: true
|
fail_ci_if_error: true
|
||||||
@@ -218,7 +218,7 @@ jobs:
|
|||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
project-token: ${{ secrets.CODACY_TOKEN }}
|
project-token: ${{ secrets.CODACY_TOKEN }}
|
||||||
coverage-reports: ${{ inputs.coverage_report_xml_directory }}/${{ inputs.coverage_report_xml_filename }}
|
coverage-reports: ${{ fromJson(inputs.coverage_report_xml).fullpath }}
|
||||||
|
|
||||||
- name: Generate error messages
|
- name: Generate error messages
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
2
.github/workflows/SphinxDocumentation.yml
vendored
2
.github/workflows/SphinxDocumentation.yml
vendored
@@ -45,7 +45,7 @@ on:
|
|||||||
default: 'doc'
|
default: 'doc'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_json_directory:
|
coverage_report_json_directory:
|
||||||
description: ''
|
description: 'report/coverage'
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
coverage_json_artifact:
|
coverage_json_artifact:
|
||||||
|
|||||||
82
.github/workflows/StaticTypeCheck.yml
vendored
82
.github/workflows/StaticTypeCheck.yml
vendored
@@ -45,43 +45,33 @@ on:
|
|||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
|
cobertura_report:
|
||||||
|
description: 'Cobertura file to upload as an artifact.'
|
||||||
|
required: false
|
||||||
|
default: '{"fullpath": "report/typing/cobertura.xml", "directory": "report/typing", "filename": "cobertura.xml"}'
|
||||||
|
type: string
|
||||||
|
junit_report:
|
||||||
|
description: 'JUnit file to upload as an artifact.'
|
||||||
|
required: false
|
||||||
|
default: '{"fullpath": "report/typing/StaticTypingSummary.xml", "directory": "report/typing", "filename": "StaticTypingSummary.xml"}'
|
||||||
|
type: string
|
||||||
html_report:
|
html_report:
|
||||||
description: 'Directory to upload as an artifact.'
|
description: 'Directory to upload as an artifact.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/typing/html'
|
default: '{"fullpath": "report/typing/html", "directory": "report/typing/html"}'
|
||||||
type: string
|
type: string
|
||||||
junit_report_directory:
|
cobertura_artifact:
|
||||||
description: 'JUnit file to upload as an artifact.'
|
description: 'Name of the typing cobertura artifact (Cobertura XML).'
|
||||||
required: false
|
|
||||||
default: 'report/typing'
|
|
||||||
type: string
|
|
||||||
junit_report_file:
|
|
||||||
description: 'JUnit file to upload as an artifact.'
|
|
||||||
required: false
|
|
||||||
default: 'StaticTypingSummary.xml'
|
|
||||||
type: string
|
|
||||||
cobertura_report_directory:
|
|
||||||
description: 'Cobertura file to upload as an artifact.'
|
|
||||||
required: false
|
|
||||||
default: 'report/typing'
|
|
||||||
type: string
|
|
||||||
cobertura_report_file:
|
|
||||||
description: 'Cobertura file to upload as an artifact.'
|
|
||||||
required: false
|
|
||||||
default: 'cobertura.xml'
|
|
||||||
type: string
|
|
||||||
html_artifact:
|
|
||||||
description: 'Name of the typing artifact (HTML report).'
|
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
junit_artifact:
|
junit_artifact:
|
||||||
description: 'Name of the typing junit artifact (junit XML).'
|
description: 'Name of the typing junit artifact (JUnit XML).'
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
cobertura_artifact:
|
html_artifact:
|
||||||
description: 'Name of the typing cobertura artifact (Cobertura XML).'
|
description: 'Name of the typing artifact (HTML report).'
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
type: string
|
type: string
|
||||||
@@ -119,56 +109,56 @@ jobs:
|
|||||||
ANSI_LIGHT_BLUE=$'\x1b[94m'
|
ANSI_LIGHT_BLUE=$'\x1b[94m'
|
||||||
ANSI_NOCOLOR=$'\x1b[0m'
|
ANSI_NOCOLOR=$'\x1b[0m'
|
||||||
|
|
||||||
if [[ "${{ inputs.html_report }}" != "" ]]; then
|
if [[ "${{ fromJson(inputs.html_report).directory }}" != "" ]]; then
|
||||||
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ inputs.html_report }}' ..."
|
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ fromJson(inputs.html_report).directory }}' ..."
|
||||||
tree ${{ inputs.html_report }}
|
tree ${{ fromJson(inputs.html_report).directory }}
|
||||||
printf "::endgroup::\n"
|
printf "::endgroup::\n"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${{ inputs.junit_report_directory }}" != "" ]]; then
|
if [[ "${{ fromJson(inputs.junit_report).directory }}" != "" ]]; then
|
||||||
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ inputs.junit_report_directory }}' ..."
|
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ fromJson(inputs.junit_report).directory }}' ..."
|
||||||
tree ${{ inputs.junit_report_directory }}
|
tree ${{ fromJson(inputs.junit_report).directory }}
|
||||||
printf "::endgroup::\n"
|
printf "::endgroup::\n"
|
||||||
if [[ "${{ inputs.cobertura_report_directory }}" != "" && "${{ inputs.junit_report_directory }}" != "${{ inputs.cobertura_report_directory }}" ]]; then
|
if [[ "${{ fromJson(inputs.cobertura_report).directory }}" != "" && "${{ fromJson(inputs.junit_report).directory }}" != "${{ fromJson(inputs.cobertura_report).directory }}" ]]; then
|
||||||
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ inputs.cobertura_report_directory }}' ..."
|
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ fromJson(inputs.cobertura_report).directory }}' ..."
|
||||||
tree ${{ inputs.cobertura_report_directory }}
|
tree ${{ fromJson(inputs.cobertura_report).directory }}
|
||||||
printf "::endgroup::\n"
|
printf "::endgroup::\n"
|
||||||
fi
|
fi
|
||||||
elif [[ "${{ inputs.cobertura_report_directory }}" != "" ]]; then
|
elif [[ "${{ fromJson(inputs.cobertura_report).directory }}" != "" ]]; then
|
||||||
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ inputs.cobertura_report_directory }}' ..."
|
printf "::group::${ANSI_LIGHT_BLUE}%s${ANSI_NOCOLOR}\n" "Content of '${{ fromJson(inputs.cobertura_report).directory }}' ..."
|
||||||
tree ${{ inputs.cobertura_report_directory }}
|
tree ${{ fromJson(inputs.cobertura_report).directory }}
|
||||||
printf "::endgroup::\n"
|
printf "::endgroup::\n"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: 📤 Upload 'Static Typing Report' HTML artifact
|
- name: 📤 Upload '${{ inputs.html_artifact }}' HTML artifact
|
||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
if: ${{ inputs.html_artifact != '' }}
|
if: ${{ inputs.html_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.html_artifact }}
|
name: ${{ inputs.html_artifact }}
|
||||||
working-directory: ${{ inputs.html_report }}
|
working-directory: ${{ fromJson(inputs.html_report).directory }}
|
||||||
path: '*'
|
path: '*'
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload 'Static Typing Report' JUnit artifact
|
- name: 📤 Upload '${{ inputs.junit_artifact }}' JUnit artifact
|
||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
if: ${{ inputs.junit_artifact != '' }}
|
if: ${{ inputs.junit_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.junit_artifact }}
|
name: ${{ inputs.junit_artifact }}
|
||||||
working-directory: ${{ inputs.junit_report_directory }}
|
working-directory: ${{ fromJson(inputs.junit_report).directory }}
|
||||||
path: ${{ inputs.junit_report_file }}
|
path: ${{ fromJson(inputs.junit_report).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload 'Static Typing Report' Cobertura artifact
|
- name: 📤 Upload '${{ inputs.cobertura_artifact }}' Cobertura artifact
|
||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
if: ${{ inputs.cobertura_artifact != '' }}
|
if: ${{ inputs.cobertura_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.cobertura_artifact }}
|
name: ${{ inputs.cobertura_artifact }}
|
||||||
working-directory: ${{ inputs.cobertura_report_directory }}
|
working-directory: ${{ fromJson(inputs.cobertura_report).directory }}
|
||||||
path: ${{ inputs.cobertura_report_file }}
|
path: ${{ fromJson(inputs.cobertura_report).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|||||||
62
.github/workflows/UnitTesting.yml
vendored
62
.github/workflows/UnitTesting.yml
vendored
@@ -94,42 +94,42 @@ on:
|
|||||||
required: false
|
required: false
|
||||||
default: 'unit'
|
default: 'unit'
|
||||||
type: string
|
type: string
|
||||||
unittest_report_xml_directory:
|
unittest_report_xml:
|
||||||
description: 'Path where to save the unittest summary report XML.'
|
description: 'Path where to save the unittest summary report XML.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/unit'
|
default: 'report/unit'
|
||||||
type: string
|
type: string
|
||||||
unittest_report_xml_filename:
|
# unittest_report_xml_filename:
|
||||||
description: 'Filename of the unittest summary report XML.'
|
# description: 'Filename of the unittest summary report XML.'
|
||||||
required: false
|
# required: false
|
||||||
default: 'TestReportSummary.xml'
|
# default: 'TestReportSummary.xml'
|
||||||
type: string
|
# type: string
|
||||||
coverage_config:
|
coverage_config:
|
||||||
description: 'Path to the .coveragerc file. Use pyproject.toml by default.'
|
description: 'Path to the .coveragerc file. Use pyproject.toml by default.'
|
||||||
required: false
|
required: false
|
||||||
default: 'pyproject.toml'
|
default: 'pyproject.toml'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_xml_directory:
|
coverage_report_xml:
|
||||||
description: 'Directory where the coverage report in XML format will be generated.'
|
description: 'Directory where the coverage report in XML format will be generated.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage'
|
default: 'report/coverage'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_xml_filename:
|
# coverage_report_xml_filename:
|
||||||
description: 'Filename how the coverage report in XML format will be named.'
|
# description: 'Filename how the coverage report in XML format will be named.'
|
||||||
required: false
|
# required: false
|
||||||
default: 'coverage.xml'
|
# default: 'coverage.xml'
|
||||||
type: string
|
# type: string
|
||||||
coverage_report_json_directory:
|
coverage_report_json:
|
||||||
description: 'Directory where the coverage report in JSON format will be generated.'
|
description: 'Directory where the coverage report in JSON format will be generated.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage'
|
default: 'report/coverage'
|
||||||
type: string
|
type: string
|
||||||
coverage_report_json_filename:
|
# coverage_report_json_filename:
|
||||||
description: 'Filename how the coverage report in JSON format will be named.'
|
# description: 'Filename how the coverage report in JSON format will be named.'
|
||||||
required: false
|
# required: false
|
||||||
default: 'coverage.json'
|
# default: 'coverage.json'
|
||||||
type: string
|
# type: string
|
||||||
coverage_report_html_directory:
|
coverage_report_html:
|
||||||
description: 'Directory where the coverage report in HTML format will be generated.'
|
description: 'Directory where the coverage report in HTML format will be generated.'
|
||||||
required: false
|
required: false
|
||||||
default: 'report/coverage/html'
|
default: 'report/coverage/html'
|
||||||
@@ -371,7 +371,7 @@ jobs:
|
|||||||
export PYTHONPATH=$(pwd)
|
export PYTHONPATH=$(pwd)
|
||||||
|
|
||||||
cd "${{ inputs.root_directory || '.' }}"
|
cd "${{ inputs.root_directory || '.' }}"
|
||||||
[ -n '${{ inputs.unittest_xml_artifact }}' ] && PYTEST_ARGS='--junitxml=${{ inputs.unittest_report_xml_directory }}/${{ inputs.unittest_report_xml_filename }}' || unset PYTEST_ARGS
|
[ -n '${{ inputs.unittest_xml_artifact }}' ] && PYTEST_ARGS='--junitxml=${{ fromJson(inputs.unittest_report_xml).fullpath }}' || unset PYTEST_ARGS
|
||||||
if [ -n '${{ inputs.coverage_config }}' ]; then
|
if [ -n '${{ inputs.coverage_config }}' ]; then
|
||||||
printf "%s\n" "coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}"
|
printf "%s\n" "coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}"
|
||||||
coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}
|
coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}
|
||||||
@@ -389,7 +389,7 @@ jobs:
|
|||||||
$env:PYTHONPATH = (Get-Location).ToString()
|
$env:PYTHONPATH = (Get-Location).ToString()
|
||||||
|
|
||||||
cd "${{ inputs.root_directory || '.' }}"
|
cd "${{ inputs.root_directory || '.' }}"
|
||||||
$PYTEST_ARGS = if ("${{ inputs.unittest_xml_artifact }}") { "--junitxml=${{ inputs.unittest_report_xml_directory }}/${{ inputs.unittest_report_xml_filename }}" } else { "" }
|
$PYTEST_ARGS = if ("${{ inputs.unittest_xml_artifact }}") { "--junitxml=${{ fromJson(inputs.unittest_report_xml).fullpath }}" } else { "" }
|
||||||
if ("${{ inputs.coverage_config }}") {
|
if ("${{ inputs.coverage_config }}") {
|
||||||
Write-Host "coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}"
|
Write-Host "coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}"
|
||||||
coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}
|
coverage run --data-file=.coverage --rcfile=pyproject.toml -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.unittest_directory }}
|
||||||
@@ -415,19 +415,19 @@ jobs:
|
|||||||
if: inputs.coverage_html_artifact != ''
|
if: inputs.coverage_html_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
run: |
|
run: |
|
||||||
coverage html --data-file=.coverage -d ${{ inputs.coverage_report_html_directory }}
|
coverage html --data-file=.coverage -d ${{ fromJson(inputs.coverage_report_html).directory }}
|
||||||
rm ${{ inputs.coverage_report_html_directory }}/.gitignore
|
rm ${{ fromJson(inputs.coverage_report_html).directory }}/.gitignore
|
||||||
|
|
||||||
# Upload artifacts
|
# Upload artifacts
|
||||||
|
|
||||||
- name: 📤 Upload '${{ inputs.unittest_report_xml_filename }}' artifact
|
- name: 📤 Upload '${{ fromJson(inputs.unittest_report_xml).filename }}' artifact
|
||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
if: inputs.unittest_xml_artifact != ''
|
if: inputs.unittest_xml_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.unittest_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.unittest_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
working-directory: ${{ inputs.unittest_report_xml_directory }}
|
working-directory: ${{ fromJson(inputs.unittest_report_xml).directory }}
|
||||||
path: ${{ inputs.unittest_report_xml_filename }}
|
path: ${{ fromJson(inputs.unittest_report_xml).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
@@ -458,8 +458,8 @@ jobs:
|
|||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.coverage_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
working-directory: ${{ inputs.coverage_report_xml_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_xml).directory }}
|
||||||
path: ${{ inputs.coverage_report_xml_filename }}
|
path: ${{ fromJson(inputs.coverage_report_xml).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
@@ -469,8 +469,8 @@ jobs:
|
|||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_json_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.coverage_json_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
working-directory: ${{ inputs.coverage_report_json_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_json).directory }}
|
||||||
path: ${{ inputs.coverage_report_json_filename }}
|
path: ${{ fromJson(inputs.coverage_report_json).filename }}
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
@@ -480,7 +480,7 @@ jobs:
|
|||||||
uses: pyTooling/upload-artifact@v4
|
uses: pyTooling/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_html_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.coverage_html_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
working-directory: ${{ inputs.coverage_report_html_directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_html).directory }}
|
||||||
path: '*'
|
path: '*'
|
||||||
if-no-files-found: error
|
if-no-files-found: error
|
||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|||||||
27
.github/workflows/_Checking_AvailableRunners.yml
vendored
27
.github/workflows/_Checking_AvailableRunners.yml
vendored
@@ -9,24 +9,25 @@ jobs:
|
|||||||
name: ${{ matrix.icon }} ${{ matrix.name }}
|
name: ${{ matrix.icon }} ${{ matrix.name }}
|
||||||
|
|
||||||
runs-on: ${{ matrix.image }}
|
runs-on: ${{ matrix.image }}
|
||||||
|
continue-on-error: ${{ matrix.can-fail }}
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
- {icon: '🐧', name: 'Ubuntu 22.04 (x86-64)', image: 'ubuntu-22.04', shell: 'bash'}
|
- {icon: '🐧', name: 'Ubuntu 22.04 (x86-64)', image: 'ubuntu-22.04', shell: 'bash', can-fail: false}
|
||||||
- {icon: '🐧', name: 'Ubuntu 24.04 (x86-64)', image: 'ubuntu-24.04', shell: 'bash'} # latest
|
- {icon: '🐧', name: 'Ubuntu 24.04 (x86-64)', image: 'ubuntu-24.04', shell: 'bash', can-fail: false} # latest
|
||||||
- {icon: '🍎', name: 'macOS-13 (x86-64)', image: 'macos-13', shell: 'bash'}
|
- {icon: '🍎', name: 'macOS-13 (x86-64)', image: 'macos-13', shell: 'bash', can-fail: false}
|
||||||
- {icon: '🍎', name: 'macOS-14 (x86-64)', image: 'macos-14-large', shell: 'bash'} # not in free plan
|
- {icon: '🍎', name: 'macOS-14 (x86-64)', image: 'macos-14-large', shell: 'bash', can-fail: true } # not in free plan
|
||||||
- {icon: '🍎', name: 'macOS-15 (x86-64)', image: 'macos-15-large', shell: 'bash'} # not in free plan
|
- {icon: '🍎', name: 'macOS-15 (x86-64)', image: 'macos-15-large', shell: 'bash', can-fail: true } # not in free plan
|
||||||
- {icon: '🍏', name: 'macOS-13 (aarch64)', image: 'macos-13-xlarge', shell: 'bash'}
|
- {icon: '🍏', name: 'macOS-13 (aarch64)', image: 'macos-13-xlarge', shell: 'bash', can-fail: true } # not in free plan
|
||||||
- {icon: '🍏', name: 'macOS-14 (aarch64)', image: 'macos-14', shell: 'bash'} # latest
|
- {icon: '🍏', name: 'macOS-14 (aarch64)', image: 'macos-14', shell: 'bash', can-fail: false} # latest
|
||||||
- {icon: '🍏', name: 'macOS-15 (aarch64)', image: 'macos-15', shell: 'bash'}
|
- {icon: '🍏', name: 'macOS-15 (aarch64)', image: 'macos-15', shell: 'bash', can-fail: false}
|
||||||
- {icon: '🪟', name: 'Windows Server 2022', image: 'windows-2022', shell: 'bash'}
|
- {icon: '🪟', name: 'Windows Server 2022', image: 'windows-2022', shell: 'bash', can-fail: false}
|
||||||
- {icon: '🪟', name: 'Windows Server 2025', image: 'windows-2025', shell: 'bash'} # latest
|
- {icon: '🪟', name: 'Windows Server 2025', image: 'windows-2025', shell: 'bash', can-fail: false} # latest
|
||||||
# Third party images by ARM for aarch64
|
# Third party images by ARM for aarch64
|
||||||
- {icon: '⛄', name: 'Ubuntu 22.04 (aarch64)', image: 'ubuntu-22.04-arm', shell: 'bash'}
|
- {icon: '⛄', name: 'Ubuntu 22.04 (aarch64)', image: 'ubuntu-22.04-arm', shell: 'bash', can-fail: false}
|
||||||
- {icon: '⛄', name: 'Ubuntu 24.04 (aarch64)', image: 'ubuntu-24.04-arm', shell: 'bash'}
|
- {icon: '⛄', name: 'Ubuntu 24.04 (aarch64)', image: 'ubuntu-24.04-arm', shell: 'bash', can-fail: false}
|
||||||
- {icon: '🏢', name: 'Windows 11 (arch64)', image: 'windows-11-arm', shell: 'bash'}
|
- {icon: '🏢', name: 'Windows 11 (arch64)', image: 'windows-11-arm', shell: 'bash', can-fail: false}
|
||||||
|
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
|
|||||||
94
.github/workflows/_Checking_JobTemplates.yml
vendored
94
.github/workflows/_Checking_JobTemplates.yml
vendored
@@ -10,8 +10,6 @@ jobs:
|
|||||||
|
|
||||||
ConfigParams:
|
ConfigParams:
|
||||||
uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev
|
uses: pyTooling/Actions/.github/workflows/ExtractConfiguration.yml@dev
|
||||||
with:
|
|
||||||
package_name: myPackage
|
|
||||||
|
|
||||||
InstallParams:
|
InstallParams:
|
||||||
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev
|
uses: pyTooling/Actions/.github/workflows/Parameters.yml@dev
|
||||||
@@ -39,20 +37,17 @@ jobs:
|
|||||||
- ConfigParams
|
- ConfigParams
|
||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
with:
|
with:
|
||||||
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }}
|
jobs: ${{ needs.UnitTestingParams.outputs.python_jobs }}
|
||||||
unittest_report_xml_directory: ${{ needs.ConfigParams.outputs.unittest_report_xml_directory }}
|
unittest_report_xml: ${{ needs.ConfigParams.outputs.unittest_report_xml }}
|
||||||
unittest_report_xml_filename: ${{ needs.ConfigParams.outputs.unittest_report_xml_filename }}
|
coverage_report_xml: ${{ needs.ConfigParams.outputs.coverage_report_xml }}
|
||||||
coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
coverage_report_json: ${{ needs.ConfigParams.outputs.coverage_report_json }}
|
||||||
coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
coverage_report_html: ${{ needs.ConfigParams.outputs.coverage_report_html }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
coverage_report_json_filename: ${{ needs.ConfigParams.outputs.coverage_report_json_filename }}
|
unittest_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }}
|
||||||
coverage_report_html_directory: ${{ needs.ConfigParams.outputs.coverage_report_html_directory }}
|
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
||||||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}
|
||||||
unittest_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_html }}
|
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}
|
||||||
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:
|
PlatformTesting:
|
||||||
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@dev
|
uses: pyTooling/Actions/.github/workflows/UnitTesting.yml@dev
|
||||||
@@ -60,22 +55,19 @@ jobs:
|
|||||||
- ConfigParams
|
- ConfigParams
|
||||||
- PlatformTestingParams
|
- PlatformTestingParams
|
||||||
with:
|
with:
|
||||||
jobs: ${{ needs.PlatformTestingParams.outputs.python_jobs }}
|
jobs: ${{ needs.PlatformTestingParams.outputs.python_jobs }}
|
||||||
# tests_directory: ""
|
# tests_directory: ""
|
||||||
unittest_directory: platform
|
unittest_directory: platform
|
||||||
unittest_report_xml_directory: ${{ needs.ConfigParams.outputs.unittest_report_xml_directory }}
|
unittest_report_xml: ${{ needs.ConfigParams.outputs.unittest_report_xml }}
|
||||||
unittest_report_xml_filename: ${{ needs.ConfigParams.outputs.unittest_report_xml_filename }}
|
coverage_report_xml: ${{ needs.ConfigParams.outputs.coverage_report_xml }}
|
||||||
coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
coverage_report_json: ${{ needs.ConfigParams.outputs.coverage_report_json }}
|
||||||
coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
coverage_report_html: ${{ needs.ConfigParams.outputs.coverage_report_html }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
unittest_xml_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
coverage_report_json_filename: ${{ needs.ConfigParams.outputs.coverage_report_json_filename }}
|
unittest_html_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_html }}
|
||||||
coverage_report_html_directory: ${{ needs.ConfigParams.outputs.coverage_report_html_directory }}
|
coverage_sqlite_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
||||||
unittest_xml_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_xml }}
|
coverage_xml_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_xml }}
|
||||||
unittest_html_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).unittesting_html }}
|
coverage_json_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
coverage_sqlite_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
coverage_html_artifact: ${{ fromJson(needs.PlatformTestingParams.outputs.artifact_names).codecoverage_html }}
|
||||||
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 }}
|
|
||||||
|
|
||||||
StaticTypeCheck:
|
StaticTypeCheck:
|
||||||
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@dev
|
uses: pyTooling/Actions/.github/workflows/StaticTypeCheck.yml@dev
|
||||||
@@ -84,7 +76,7 @@ jobs:
|
|||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
with:
|
with:
|
||||||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
||||||
html_report: ${{ needs.ConfigParams.outputs.typing_report_html_directory }}
|
html_report: ${{ needs.ConfigParams.outputs.typing_report_html }}
|
||||||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }}
|
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).statictyping_html }}
|
||||||
|
|
||||||
DocCoverage:
|
DocCoverage:
|
||||||
@@ -110,14 +102,13 @@ jobs:
|
|||||||
Install:
|
Install:
|
||||||
uses: pyTooling/Actions/.github/workflows/InstallPackage.yml@dev
|
uses: pyTooling/Actions/.github/workflows/InstallPackage.yml@dev
|
||||||
needs:
|
needs:
|
||||||
- ConfigParams
|
|
||||||
- UnitTestingParams
|
- UnitTestingParams
|
||||||
- InstallParams
|
- InstallParams
|
||||||
- Package
|
- Package
|
||||||
with:
|
with:
|
||||||
jobs: ${{ needs.InstallParams.outputs.python_jobs }}
|
jobs: ${{ needs.InstallParams.outputs.python_jobs }}
|
||||||
wheel: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }}
|
wheel: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).package_all }}
|
||||||
package_name: ${{ needs.ConfigParams.outputs.package_fullname }}
|
package_name: ${{ needs.UnitTestingParams.outputs.package_fullname }}
|
||||||
|
|
||||||
PublishCoverageResults:
|
PublishCoverageResults:
|
||||||
uses: pyTooling/Actions/.github/workflows/PublishCoverageResults.yml@dev
|
uses: pyTooling/Actions/.github/workflows/PublishCoverageResults.yml@dev
|
||||||
@@ -127,17 +118,15 @@ jobs:
|
|||||||
- UnitTesting
|
- UnitTesting
|
||||||
- PlatformTesting
|
- PlatformTesting
|
||||||
with:
|
with:
|
||||||
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
coverage_report_xml: ${{ needs.ConfigParams.outputs.coverage_report_xml }}
|
||||||
coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}
|
coverage_report_json: ${{ needs.ConfigParams.outputs.coverage_report_json }}
|
||||||
coverage_report_xml_directory: ${{ needs.ConfigParams.outputs.coverage_report_xml_directory }}
|
coverage_report_html: ${{ needs.ConfigParams.outputs.coverage_report_html }}
|
||||||
coverage_report_xml_filename: ${{ needs.ConfigParams.outputs.coverage_report_xml_filename }}
|
coverage_sqlite_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_sqlite }}
|
||||||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
coverage_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_xml }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
coverage_report_json_filename: ${{ needs.ConfigParams.outputs.coverage_report_json_filename }}
|
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}
|
||||||
coverage_html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_html }}
|
codecov: true
|
||||||
coverage_report_html_directory: ${{ needs.ConfigParams.outputs.coverage_report_html_directory }}
|
codacy: true
|
||||||
codecov: true
|
|
||||||
codacy: true
|
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
||||||
PublishTestResults:
|
PublishTestResults:
|
||||||
@@ -149,7 +138,7 @@ jobs:
|
|||||||
- PlatformTesting
|
- PlatformTesting
|
||||||
with:
|
with:
|
||||||
additional_merge_args: '-d "--pytest=rewrite-dunder-init;reduce-depth:pytest.tests.unit;reduce-depth:pytest.tests.platform"'
|
additional_merge_args: '-d "--pytest=rewrite-dunder-init;reduce-depth:pytest.tests.unit;reduce-depth:pytest.tests.platform"'
|
||||||
testsuite-summary-name: ${{ needs.ConfigParams.outputs.package_fullname }}
|
testsuite-summary-name: ${{ needs.UnitTestingParams.outputs.package_fullname }}
|
||||||
merged_junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
merged_junit_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
codecov: true
|
codecov: true
|
||||||
dorny: true
|
dorny: true
|
||||||
@@ -171,12 +160,13 @@ jobs:
|
|||||||
- PublishCoverageResults
|
- PublishCoverageResults
|
||||||
# - VerifyDocs
|
# - VerifyDocs
|
||||||
with:
|
with:
|
||||||
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
python_version: ${{ needs.UnitTestingParams.outputs.python_version }}
|
||||||
coverage_report_json_directory: ${{ needs.ConfigParams.outputs.coverage_report_json_directory }}
|
unittest_xml_directory: ${{ fromJson(needs.ConfigParams.outputs.unittest_report_xml).directory }}
|
||||||
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
coverage_report_json_directory: ${{ fromJson(needs.ConfigParams.outputs.coverage_report_json).directory }}
|
||||||
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
unittest_xml_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).unittesting_xml }}
|
||||||
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }}
|
coverage_json_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).codecoverage_json }}
|
||||||
latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }}
|
html_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_html }}
|
||||||
|
latex_artifact: ${{ fromJson(needs.UnitTestingParams.outputs.artifact_names).documentation_latex }}
|
||||||
|
|
||||||
IntermediateCleanUp:
|
IntermediateCleanUp:
|
||||||
uses: pyTooling/Actions/.github/workflows/IntermediateCleanUp.yml@dev
|
uses: pyTooling/Actions/.github/workflows/IntermediateCleanUp.yml@dev
|
||||||
|
|||||||
210
.github/workflows/_Checking_Parameters.yml
vendored
210
.github/workflows/_Checking_Parameters.yml
vendored
@@ -82,20 +82,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_Default.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_Default.outputs.python_version }}"""
|
||||||
@@ -158,20 +160,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_PythonVersions.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_PythonVersions.outputs.python_version }}"""
|
||||||
@@ -234,20 +238,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_Systems.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_Systems.outputs.python_version }}"""
|
||||||
@@ -310,20 +316,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_Include.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_Include.outputs.python_version }}"""
|
||||||
@@ -386,20 +394,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_Exclude.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_Exclude.outputs.python_version }}"""
|
||||||
@@ -462,20 +472,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_Disable.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_Disable.outputs.python_version }}"""
|
||||||
@@ -538,20 +550,22 @@ jobs:
|
|||||||
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
expectedJobs = [f"{system}:{python}" for system in expectedSystems for python in expectedPythons if f"{system}:{python}" not in excludedJobs] + includeJobs
|
||||||
expectedName = "Example"
|
expectedName = "Example"
|
||||||
expectedArtifacts = {
|
expectedArtifacts = {
|
||||||
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
"unittesting_xml": f"{expectedName}-UnitTestReportSummary-XML",
|
||||||
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
"unittesting_html": f"{expectedName}-UnitTestReportSummary-HTML",
|
||||||
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
"perftesting_xml": f"{expectedName}-PerformanceTestReportSummary-XML",
|
||||||
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
"benchtesting_xml": f"{expectedName}-BenchmarkTestReportSummary-XML",
|
||||||
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
"apptesting_xml": f"{expectedName}-ApplicationTestReportSummary-XML",
|
||||||
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
"codecoverage_sqlite": f"{expectedName}-CodeCoverage-SQLite",
|
||||||
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
"codecoverage_xml": f"{expectedName}-CodeCoverage-XML",
|
||||||
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
"codecoverage_json": f"{expectedName}-CodeCoverage-JSON",
|
||||||
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
"codecoverage_html": f"{expectedName}-CodeCoverage-HTML",
|
||||||
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
"statictyping_cobertura": f"{expectedName}-StaticTyping-Cobertura-XML",
|
||||||
"package_all": f"{expectedName}-Packages",
|
"statictyping_junit": f"{expectedName}-StaticTyping-JUnit-XML",
|
||||||
"documentation_html": f"{expectedName}-Documentation-HTML",
|
"statictyping_html": f"{expectedName}-StaticTyping-HTML",
|
||||||
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
"package_all": f"{expectedName}-Packages",
|
||||||
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
"documentation_html": f"{expectedName}-Documentation-HTML",
|
||||||
|
"documentation_latex": f"{expectedName}-Documentation-LaTeX",
|
||||||
|
"documentation_pdf": f"{expectedName}-Documentation-PDF",
|
||||||
}
|
}
|
||||||
|
|
||||||
actualPythonVersion = """${{ needs.Params_All.outputs.python_version }}"""
|
actualPythonVersion = """${{ needs.Params_All.outputs.python_version }}"""
|
||||||
|
|||||||
Reference in New Issue
Block a user