mirror of
https://github.com/pyTooling/Actions.git
synced 2026-03-01 19:36:57 +08:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ee27f1c1f5 | ||
|
|
8bf7483d97 | ||
|
|
9ee7bcc27a | ||
|
|
796bfa716e | ||
|
|
68116f4d7d | ||
|
|
d63a910e7d | ||
|
|
de6ebc29fc | ||
|
|
1eed538a2d | ||
|
|
370c306306 | ||
|
|
c0f5c9f6e1 |
55
.github/workflows/ApplicationTesting.yml
vendored
55
.github/workflows/ApplicationTesting.yml
vendored
@@ -37,7 +37,7 @@ on:
|
|||||||
requirements:
|
requirements:
|
||||||
description: 'Python dependencies to be installed through pip.'
|
description: 'Python dependencies to be installed through pip.'
|
||||||
required: false
|
required: false
|
||||||
default: '-r tests/requirements.txt'
|
default: '-r ./requirements.txt'
|
||||||
type: string
|
type: string
|
||||||
pacboy:
|
pacboy:
|
||||||
description: 'MSYS2 dependencies to be installed through pacboy (pacman).'
|
description: 'MSYS2 dependencies to be installed through pacboy (pacman).'
|
||||||
@@ -89,11 +89,44 @@ jobs:
|
|||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.wheel }}' from 'Package' job
|
- name: 📥 Download artifacts '${{ inputs.wheel }}' from 'Package' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.wheel }}
|
name: ${{ inputs.wheel }}
|
||||||
path: install
|
path: install
|
||||||
|
|
||||||
|
# TODO: extract step to an Action so package, so code can be shared with UnitTesting.yml
|
||||||
|
- name: Compute path to requirements file
|
||||||
|
id: requirements
|
||||||
|
shell: python
|
||||||
|
run: |
|
||||||
|
from os import getenv
|
||||||
|
from pathlib import Path
|
||||||
|
from sys import version
|
||||||
|
|
||||||
|
print(f"Python: {version}")
|
||||||
|
|
||||||
|
requirements = "${{ inputs.requirements }}"
|
||||||
|
if requirements.startswith("-r"):
|
||||||
|
requirements = requirements[2:].lstrip()
|
||||||
|
if requirements.startswith("./"):
|
||||||
|
requirementsFile = Path("${{ inputs.root_directory || '.' }}") / Path("${{ inputs.tests_directory || '.' }}") / Path("${{ inputs.apptest_directory || '.' }}") / Path(requirements[2:])
|
||||||
|
else:
|
||||||
|
requirementsFile = Path(requirements)
|
||||||
|
|
||||||
|
if not requirementsFile.exists():
|
||||||
|
print(f"::error title=FileNotFoundError::{requirementsFile}")
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
print(f"requirements file: {requirementsFile.as_posix()}")
|
||||||
|
|
||||||
|
# Write requirements path to special file
|
||||||
|
github_output = Path(getenv("GITHUB_OUTPUT"))
|
||||||
|
print(f"GITHUB_OUTPUT: {github_output}")
|
||||||
|
with github_output.open("a+") as f:
|
||||||
|
f.write(f"requirements=-r {requirementsFile.as_posix()}\n")
|
||||||
|
else:
|
||||||
|
print(f"requirements list: {requirements}")
|
||||||
|
|
||||||
# TODO: extract step to an Action so package lists are shared with UnitTesting (and GHDL?)
|
# TODO: extract step to an Action so package lists are shared with UnitTesting (and GHDL?)
|
||||||
- name: Compute pacman/pacboy packages
|
- name: Compute pacman/pacboy packages
|
||||||
id: pacboy
|
id: pacboy
|
||||||
@@ -122,7 +155,7 @@ jobs:
|
|||||||
|
|
||||||
return requirements
|
return requirements
|
||||||
|
|
||||||
requirements = "${{ inputs.requirements }}"
|
requirements = "${{ steps.requirements.outputs.requirements }}"
|
||||||
if requirements.startswith("-r"):
|
if requirements.startswith("-r"):
|
||||||
requirementsFile = Path(requirements[2:].lstrip())
|
requirementsFile = Path(requirements[2:].lstrip())
|
||||||
try:
|
try:
|
||||||
@@ -191,6 +224,8 @@ jobs:
|
|||||||
with github_output.open("a+") as f:
|
with github_output.open("a+") as f:
|
||||||
f.write(f"pacboy_packages={' '.join(pacboyPackages)}\n")
|
f.write(f"pacboy_packages={' '.join(pacboyPackages)}\n")
|
||||||
|
|
||||||
|
# Python setup
|
||||||
|
|
||||||
- name: '🟦 Setup MSYS2 for ${{ matrix.runtime }}'
|
- name: '🟦 Setup MSYS2 for ${{ matrix.runtime }}'
|
||||||
uses: msys2/setup-msys2@v2
|
uses: msys2/setup-msys2@v2
|
||||||
if: matrix.system == 'msys2'
|
if: matrix.system == 'msys2'
|
||||||
@@ -207,11 +242,13 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
python-version: ${{ matrix.python }}
|
python-version: ${{ matrix.python }}
|
||||||
|
|
||||||
|
# Python Dependency steps
|
||||||
|
|
||||||
- name: 🔧 Install wheel and pip dependencies (native)
|
- name: 🔧 Install wheel and pip dependencies (native)
|
||||||
if: matrix.system != 'msys2'
|
if: matrix.system != 'msys2'
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --disable-pip-version-check -U wheel
|
python -m pip install --disable-pip-version-check -U wheel
|
||||||
python -m pip install --disable-pip-version-check ${{ inputs.requirements }}
|
python -m pip install --disable-pip-version-check ${{ steps.requirements.outputs.requirements }}
|
||||||
|
|
||||||
- name: 🔧 Install pip dependencies (MSYS2)
|
- name: 🔧 Install pip dependencies (MSYS2)
|
||||||
if: matrix.system == 'msys2'
|
if: matrix.system == 'msys2'
|
||||||
@@ -219,9 +256,11 @@ jobs:
|
|||||||
if [ -n '${{ inputs.mingw_requirements }}' ]; then
|
if [ -n '${{ inputs.mingw_requirements }}' ]; then
|
||||||
python -m pip install --disable-pip-version-check --break-system-packages ${{ inputs.mingw_requirements }}
|
python -m pip install --disable-pip-version-check --break-system-packages ${{ inputs.mingw_requirements }}
|
||||||
else
|
else
|
||||||
python -m pip install --disable-pip-version-check --break-system-packages ${{ inputs.requirements }}
|
python -m pip install --disable-pip-version-check --break-system-packages ${{ steps.requirements.outputs.requirements }}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# TODO: Before scripts?
|
||||||
|
|
||||||
- name: 🔧 Install wheel from artifact (Ubuntu/macOS)
|
- name: 🔧 Install wheel from artifact (Ubuntu/macOS)
|
||||||
if: ( matrix.system != 'windows' && matrix.system != 'windows-arm' )
|
if: ( matrix.system != 'windows' && matrix.system != 'windows-arm' )
|
||||||
run: |
|
run: |
|
||||||
@@ -232,6 +271,8 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
python -m pip install -v --disable-pip-version-check (Get-Item .\install\*.whl).FullName
|
python -m pip install -v --disable-pip-version-check (Get-Item .\install\*.whl).FullName
|
||||||
|
|
||||||
|
# Run pytests
|
||||||
|
|
||||||
- name: ✅ Run application tests (Ubuntu/macOS)
|
- name: ✅ Run application tests (Ubuntu/macOS)
|
||||||
if: ( matrix.system != 'windows' && matrix.system != 'windows-arm' )
|
if: ( matrix.system != 'windows' && matrix.system != 'windows-arm' )
|
||||||
run: |
|
run: |
|
||||||
@@ -262,9 +303,11 @@ jobs:
|
|||||||
python -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.apptest_directory }}
|
python -m pytest -raP $PYTEST_ARGS --color=yes ${{ inputs.tests_directory || '.' }}/${{ inputs.apptest_directory }}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Upload artifacts
|
||||||
|
|
||||||
- name: 📤 Upload 'TestReportSummary.xml' artifact
|
- name: 📤 Upload 'TestReportSummary.xml' artifact
|
||||||
if: inputs.apptest_xml_artifact != ''
|
if: inputs.apptest_xml_artifact != ''
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.apptest_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.apptest_xml_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
working-directory: report/unit
|
working-directory: report/unit
|
||||||
|
|||||||
2
.github/workflows/InstallPackage.yml
vendored
2
.github/workflows/InstallPackage.yml
vendored
@@ -53,7 +53,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: 📥 Download artifacts '${{ inputs.wheel }}' from 'Package' job
|
- name: 📥 Download artifacts '${{ inputs.wheel }}' from 'Package' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.wheel }}
|
name: ${{ inputs.wheel }}
|
||||||
path: install
|
path: install
|
||||||
|
|||||||
33
.github/workflows/LaTeXDocumentation.yml
vendored
33
.github/workflows/LaTeXDocumentation.yml
vendored
@@ -42,6 +42,11 @@ on:
|
|||||||
required: false
|
required: false
|
||||||
default: 'xelatex'
|
default: 'xelatex'
|
||||||
type: string
|
type: string
|
||||||
|
halt-on-error:
|
||||||
|
description: 'Halt on first error, otherwise continue as long as possible.'
|
||||||
|
required: false
|
||||||
|
default: 'true'
|
||||||
|
type: string
|
||||||
pdf_artifact:
|
pdf_artifact:
|
||||||
description: 'Name of the PDF documentation artifact.'
|
description: 'Name of the PDF documentation artifact.'
|
||||||
required: false
|
required: false
|
||||||
@@ -58,32 +63,30 @@ jobs:
|
|||||||
name: 📓 Converting LaTeX Documentation to PDF
|
name: 📓 Converting LaTeX Documentation to PDF
|
||||||
runs-on: "ubuntu-${{ inputs.ubuntu_image_version }}"
|
runs-on: "ubuntu-${{ inputs.ubuntu_image_version }}"
|
||||||
continue-on-error: ${{ inputs.can-fail == 'true' }}
|
continue-on-error: ${{ inputs.can-fail == 'true' }}
|
||||||
|
container:
|
||||||
|
image: pytooling/miktex:sphinx
|
||||||
|
volumes:
|
||||||
|
- ${{ github.workspace }}/latex:/latex
|
||||||
steps:
|
steps:
|
||||||
- name: 📥 Download artifacts '${{ inputs.latex_artifact }}' from 'SphinxDocumentation' job
|
- name: 📥 Download artifacts '${{ inputs.latex_artifact }}' from 'SphinxDocumentation' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.latex_artifact }}
|
name: ${{ inputs.latex_artifact }}
|
||||||
path: latex
|
path: latex
|
||||||
|
investigate: 'true'
|
||||||
# - name: Debug
|
|
||||||
# run: |
|
|
||||||
# tree -pash .
|
|
||||||
|
|
||||||
- name: Build LaTeX document using 'pytooling/miktex:sphinx'
|
- name: Build LaTeX document using 'pytooling/miktex:sphinx'
|
||||||
uses: addnab/docker-run-action@v3
|
|
||||||
if: inputs.pdf_artifact != ''
|
if: inputs.pdf_artifact != ''
|
||||||
with:
|
run: |
|
||||||
image: pytooling/miktex:sphinx
|
if [[ "${{ inputs.halt-on-error }}" == "true" ]]; then
|
||||||
options: -v ${{ github.workspace }}/latex:/latex --workdir /latex
|
HALT_ON_ERROR="--halt-on-error"
|
||||||
run: |
|
fi
|
||||||
# which ${{ inputs.processor }}
|
|
||||||
# pwd
|
|
||||||
# ls -lAh
|
|
||||||
|
|
||||||
latexmk -${{ inputs.processor }} "${{ inputs.document }}.tex"
|
cd latex
|
||||||
|
latexmk --${{ inputs.processor }} --interaction=nonstopmode -file-line-error -max-print-line=250 ${HALT_ON_ERROR} "${{ inputs.document }}.tex"
|
||||||
|
|
||||||
- name: 📤 Upload 'PDF Documentation' artifact
|
- name: 📤 Upload 'PDF Documentation' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.pdf_artifact != ''
|
if: inputs.pdf_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.pdf_artifact }}
|
name: ${{ inputs.pdf_artifact }}
|
||||||
|
|||||||
2
.github/workflows/Package.yml
vendored
2
.github/workflows/Package.yml
vendored
@@ -106,7 +106,7 @@ jobs:
|
|||||||
run: python setup.py bdist_wheel
|
run: python setup.py bdist_wheel
|
||||||
|
|
||||||
- name: 📤 Upload wheel artifact
|
- name: 📤 Upload wheel artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.artifact }}
|
name: ${{ inputs.artifact }}
|
||||||
working-directory: dist
|
working-directory: dist
|
||||||
|
|||||||
10
.github/workflows/PublishCoverageResults.yml
vendored
10
.github/workflows/PublishCoverageResults.yml
vendored
@@ -115,7 +115,7 @@ jobs:
|
|||||||
submodules: true
|
submodules: true
|
||||||
|
|
||||||
- name: 📥 Download Artifacts
|
- name: 📥 Download Artifacts
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
pattern: ${{ inputs.coverage_artifacts_pattern }}
|
pattern: ${{ inputs.coverage_artifacts_pattern }}
|
||||||
path: artifacts
|
path: artifacts
|
||||||
@@ -156,7 +156,7 @@ jobs:
|
|||||||
tree -pash ${{ fromJson(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@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.coverage_sqlite_artifact != ''
|
if: inputs.coverage_sqlite_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -166,7 +166,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload 'Coverage XML Report' artifact
|
- name: 📤 Upload 'Coverage XML Report' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.coverage_xml_artifact != ''
|
if: inputs.coverage_xml_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -177,7 +177,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload 'Coverage JSON Report' artifact
|
- name: 📤 Upload 'Coverage JSON Report' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.coverage_json_artifact != ''
|
if: inputs.coverage_json_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -188,7 +188,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload 'Coverage HTML Report' artifact
|
- name: 📤 Upload 'Coverage HTML Report' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.coverage_html_artifact != ''
|
if: inputs.coverage_html_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/PublishOnPyPI.yml
vendored
2
.github/workflows/PublishOnPyPI.yml
vendored
@@ -56,7 +56,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: 📥 Download artifacts '${{ inputs.artifact }}' from 'Package' job
|
- name: 📥 Download artifacts '${{ inputs.artifact }}' from 'Package' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.artifact }}
|
name: ${{ inputs.artifact }}
|
||||||
path: dist
|
path: dist
|
||||||
|
|||||||
4
.github/workflows/PublishTestResults.yml
vendored
4
.github/workflows/PublishTestResults.yml
vendored
@@ -105,7 +105,7 @@ jobs:
|
|||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v6
|
||||||
|
|
||||||
- name: 📥 Download Artifacts
|
- name: 📥 Download Artifacts
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
pattern: ${{ inputs.unittest_artifacts_pattern }}
|
pattern: ${{ inputs.unittest_artifacts_pattern }}
|
||||||
path: artifacts
|
path: artifacts
|
||||||
@@ -157,7 +157,7 @@ jobs:
|
|||||||
fail_ci_if_error: true
|
fail_ci_if_error: true
|
||||||
|
|
||||||
- name: 📤 Upload merged 'JUnit Test Summary' artifact
|
- name: 📤 Upload merged 'JUnit Test Summary' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.merged_junit_artifact != ''
|
if: inputs.merged_junit_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.merged_junit_artifact }}
|
name: ${{ inputs.merged_junit_artifact }}
|
||||||
|
|||||||
6
.github/workflows/PublishToGitHubPages.yml
vendored
6
.github/workflows/PublishToGitHubPages.yml
vendored
@@ -64,20 +64,20 @@ jobs:
|
|||||||
github_pages_url: ${{ steps.deployment.outputs.page_url }}
|
github_pages_url: ${{ steps.deployment.outputs.page_url }}
|
||||||
steps:
|
steps:
|
||||||
- name: 📥 Download artifacts '${{ inputs.doc }}' from 'SphinxDocumentation' job
|
- name: 📥 Download artifacts '${{ inputs.doc }}' from 'SphinxDocumentation' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.doc }}
|
name: ${{ inputs.doc }}
|
||||||
path: public
|
path: public
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.coverage }}' from 'Coverage' job
|
- name: 📥 Download artifacts '${{ inputs.coverage }}' from 'Coverage' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: ${{ inputs.coverage != '' }}
|
if: ${{ inputs.coverage != '' }}
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage }}
|
name: ${{ inputs.coverage }}
|
||||||
path: public/coverage
|
path: public/coverage
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.typing }}' from 'StaticTypeCheck' job
|
- name: 📥 Download artifacts '${{ inputs.typing }}' from 'StaticTypeCheck' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: ${{ inputs.typing != '' }}
|
if: ${{ inputs.typing != '' }}
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.typing }}
|
name: ${{ inputs.typing }}
|
||||||
|
|||||||
12
.github/workflows/SphinxDocumentation.yml
vendored
12
.github/workflows/SphinxDocumentation.yml
vendored
@@ -105,7 +105,7 @@ jobs:
|
|||||||
python -m pip install --disable-pip-version-check ${{ inputs.requirements }}
|
python -m pip install --disable-pip-version-check ${{ inputs.requirements }}
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.unittest_xml_artifact }}' from 'Unittesting' job
|
- name: 📥 Download artifacts '${{ inputs.unittest_xml_artifact }}' from 'Unittesting' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: inputs.unittest_xml_artifact != ''
|
if: inputs.unittest_xml_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.unittest_xml_artifact }}
|
name: ${{ inputs.unittest_xml_artifact }}
|
||||||
@@ -113,7 +113,7 @@ jobs:
|
|||||||
investigate: true
|
investigate: true
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.coverage_json_artifact }}' from 'PublishCoverageResults' job
|
- name: 📥 Download artifacts '${{ inputs.coverage_json_artifact }}' from 'PublishCoverageResults' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: inputs.coverage_json_artifact != ''
|
if: inputs.coverage_json_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_json_artifact }}
|
name: ${{ inputs.coverage_json_artifact }}
|
||||||
@@ -129,7 +129,7 @@ jobs:
|
|||||||
sphinx-build -v -n -b html -d _build/doctrees -j $(nproc) -w _build/html.log . _build/html
|
sphinx-build -v -n -b html -d _build/doctrees -j $(nproc) -w _build/html.log . _build/html
|
||||||
|
|
||||||
- name: 📤 Upload 'HTML Documentation' artifact
|
- name: 📤 Upload 'HTML Documentation' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.html_artifact != ''
|
if: inputs.html_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -164,7 +164,7 @@ jobs:
|
|||||||
python -m pip install --disable-pip-version-check ${{ inputs.requirements }}
|
python -m pip install --disable-pip-version-check ${{ inputs.requirements }}
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.unittest_xml_artifact }}' from 'Unittesting' job
|
- name: 📥 Download artifacts '${{ inputs.unittest_xml_artifact }}' from 'Unittesting' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: inputs.unittest_xml_artifact != ''
|
if: inputs.unittest_xml_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.unittest_xml_artifact }}
|
name: ${{ inputs.unittest_xml_artifact }}
|
||||||
@@ -172,7 +172,7 @@ jobs:
|
|||||||
investigate: true
|
investigate: true
|
||||||
|
|
||||||
- name: 📥 Download artifacts '${{ inputs.coverage_json_artifact }}' from 'PublishCoverageResults' job
|
- name: 📥 Download artifacts '${{ inputs.coverage_json_artifact }}' from 'PublishCoverageResults' job
|
||||||
uses: pyTooling/download-artifact@v7
|
uses: pyTooling/download-artifact@v8
|
||||||
if: inputs.coverage_json_artifact != ''
|
if: inputs.coverage_json_artifact != ''
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_json_artifact }}
|
name: ${{ inputs.coverage_json_artifact }}
|
||||||
@@ -272,7 +272,7 @@ jobs:
|
|||||||
done
|
done
|
||||||
|
|
||||||
- name: 📤 Upload 'LaTeX Documentation' artifact
|
- name: 📤 Upload 'LaTeX Documentation' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.latex_artifact != ''
|
if: inputs.latex_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
|
|||||||
6
.github/workflows/StaticTypeCheck.yml
vendored
6
.github/workflows/StaticTypeCheck.yml
vendored
@@ -142,7 +142,7 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
- name: 📤 Upload '${{ inputs.html_artifact }}' HTML artifact
|
- name: 📤 Upload '${{ inputs.html_artifact }}' HTML artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: ${{ inputs.html_artifact != '' }}
|
if: ${{ inputs.html_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -153,7 +153,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload '${{ inputs.junit_artifact }}' JUnit artifact
|
- name: 📤 Upload '${{ inputs.junit_artifact }}' JUnit artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: ${{ inputs.junit_artifact != '' }}
|
if: ${{ inputs.junit_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -164,7 +164,7 @@ jobs:
|
|||||||
retention-days: 1
|
retention-days: 1
|
||||||
|
|
||||||
- name: 📤 Upload '${{ inputs.cobertura_artifact }}' Cobertura artifact
|
- name: 📤 Upload '${{ inputs.cobertura_artifact }}' Cobertura artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: ${{ inputs.cobertura_artifact != '' }}
|
if: ${{ inputs.cobertura_artifact != '' }}
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
|
|||||||
14
.github/workflows/UnitTesting.yml
vendored
14
.github/workflows/UnitTesting.yml
vendored
@@ -215,6 +215,7 @@ jobs:
|
|||||||
# run: |
|
# run: |
|
||||||
# py -3.12 -m pip install --disable-pip-version-check --break-system-packages -U tomli
|
# py -3.12 -m pip install --disable-pip-version-check --break-system-packages -U tomli
|
||||||
|
|
||||||
|
# TODO: extract step to an Action so package, so code can be shared with AppTesting.yml
|
||||||
- name: Compute path to requirements file
|
- name: Compute path to requirements file
|
||||||
id: requirements
|
id: requirements
|
||||||
shell: python
|
shell: python
|
||||||
@@ -247,6 +248,7 @@ jobs:
|
|||||||
else:
|
else:
|
||||||
print(f"requirements list: {requirements}")
|
print(f"requirements list: {requirements}")
|
||||||
|
|
||||||
|
# TODO: extract step to an Action so package lists are shared with UnitTesting (and GHDL?)
|
||||||
- name: Compute pacman/pacboy packages
|
- name: Compute pacman/pacboy packages
|
||||||
id: pacboy
|
id: pacboy
|
||||||
if: matrix.system == 'msys2'
|
if: matrix.system == 'msys2'
|
||||||
@@ -468,7 +470,7 @@ jobs:
|
|||||||
# Upload artifacts
|
# Upload artifacts
|
||||||
|
|
||||||
- name: 📤 Upload '${{ fromJson(inputs.unittest_report_xml).filename }}' artifact
|
- name: 📤 Upload '${{ fromJson(inputs.unittest_report_xml).filename }}' artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
if: inputs.unittest_xml_artifact != ''
|
if: inputs.unittest_xml_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
with:
|
with:
|
||||||
@@ -481,7 +483,7 @@ jobs:
|
|||||||
# - name: 📤 Upload 'Unit Tests HTML Report' artifact
|
# - name: 📤 Upload 'Unit Tests HTML Report' artifact
|
||||||
# if: inputs.unittest_html_artifact != ''
|
# if: inputs.unittest_html_artifact != ''
|
||||||
# continue-on-error: true
|
# continue-on-error: true
|
||||||
# uses: pyTooling/upload-artifact@v6
|
# uses: pyTooling/upload-artifact@v7
|
||||||
# with:
|
# with:
|
||||||
# name: ${{ inputs.unittest_html_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
# name: ${{ inputs.unittest_html_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
# path: ${{ inputs.unittest_report_html_directory }}
|
# path: ${{ inputs.unittest_report_html_directory }}
|
||||||
@@ -491,7 +493,7 @@ jobs:
|
|||||||
- name: 📤 Upload 'Coverage SQLite Database' artifact
|
- name: 📤 Upload 'Coverage SQLite Database' artifact
|
||||||
if: inputs.coverage_sqlite_artifact != ''
|
if: inputs.coverage_sqlite_artifact != ''
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: ${{ inputs.coverage_sqlite_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
name: ${{ inputs.coverage_sqlite_artifact }}-${{ matrix.system }}-${{ matrix.runtime }}-${{ matrix.python }}
|
||||||
path: .coverage
|
path: .coverage
|
||||||
@@ -502,7 +504,7 @@ jobs:
|
|||||||
- name: 📤 Upload 'Coverage XML Report' artifact
|
- name: 📤 Upload 'Coverage XML Report' artifact
|
||||||
if: inputs.coverage_xml_artifact != '' && steps.convert_xml.outcome == 'success'
|
if: inputs.coverage_xml_artifact != '' && steps.convert_xml.outcome == 'success'
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
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: ${{ fromJson(inputs.coverage_report_xml).directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_xml).directory }}
|
||||||
@@ -513,7 +515,7 @@ jobs:
|
|||||||
- name: 📤 Upload 'Coverage JSON Report' artifact
|
- name: 📤 Upload 'Coverage JSON Report' artifact
|
||||||
if: inputs.coverage_json_artifact != '' && steps.convert_json.outcome == 'success'
|
if: inputs.coverage_json_artifact != '' && steps.convert_json.outcome == 'success'
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
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: ${{ fromJson(inputs.coverage_report_json).directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_json).directory }}
|
||||||
@@ -524,7 +526,7 @@ jobs:
|
|||||||
- name: 📤 Upload 'Coverage HTML Report' artifact
|
- name: 📤 Upload 'Coverage HTML Report' artifact
|
||||||
if: inputs.coverage_html_artifact != '' && steps.convert_html.outcome == 'success'
|
if: inputs.coverage_html_artifact != '' && steps.convert_html.outcome == 'success'
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
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: ${{ fromJson(inputs.coverage_report_html).directory }}
|
working-directory: ${{ fromJson(inputs.coverage_report_html).directory }}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ jobs:
|
|||||||
run: printf "%s\n" "${{ matrix.runs-on }}-${{ matrix.python }}" >> artifact.txt
|
run: printf "%s\n" "${{ matrix.runs-on }}-${{ matrix.python }}" >> artifact.txt
|
||||||
|
|
||||||
- name: 📤 Upload artifact for ${{ matrix.system }}-${{ matrix.python }}
|
- name: 📤 Upload artifact for ${{ matrix.system }}-${{ matrix.python }}
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: ${{ fromJson(needs.Params.outputs.artifact_names).unittesting_xml }}-${{ matrix.system }}-${{ matrix.python }}
|
name: ${{ fromJson(needs.Params.outputs.artifact_names).unittesting_xml }}-${{ matrix.system }}-${{ matrix.python }}
|
||||||
path: artifact.txt
|
path: artifact.txt
|
||||||
@@ -42,7 +42,7 @@ jobs:
|
|||||||
run: printf "%s\n" "Package" >> package.txt
|
run: printf "%s\n" "Package" >> package.txt
|
||||||
|
|
||||||
- name: 📤 Upload artifact for ${{ matrix.system }}-${{ matrix.python }}
|
- name: 📤 Upload artifact for ${{ matrix.system }}-${{ matrix.python }}
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: ${{ fromJson(needs.Params.outputs.artifact_names).package_all }}
|
name: ${{ fromJson(needs.Params.outputs.artifact_names).package_all }}
|
||||||
path: package.txt
|
path: package.txt
|
||||||
|
|||||||
4
.github/workflows/_Checking_Nightly.yml
vendored
4
.github/workflows/_Checking_Nightly.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
|||||||
printf "%s\n" "Build log $(date --utc '+%d.%m.%Y - %H:%M:%S')" > build.log
|
printf "%s\n" "Build log $(date --utc '+%d.%m.%Y - %H:%M:%S')" > build.log
|
||||||
|
|
||||||
- name: 📤 Upload artifact
|
- name: 📤 Upload artifact
|
||||||
uses: pyTooling/upload-artifact@v6
|
uses: pyTooling/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: document
|
name: document
|
||||||
path: |
|
path: |
|
||||||
@@ -33,7 +33,7 @@ jobs:
|
|||||||
printf "%s\n" "Program $(date --utc '+%d.%m.%Y - %H:%M:%S')" > program.py
|
printf "%s\n" "Program $(date --utc '+%d.%m.%Y - %H:%M:%S')" > program.py
|
||||||
|
|
||||||
- name: 📤 Upload artifact
|
- name: 📤 Upload artifact
|
||||||
uses: actions/upload-artifact@v6
|
uses: actions/upload-artifact@v7
|
||||||
with:
|
with:
|
||||||
name: other
|
name: other
|
||||||
path: |
|
path: |
|
||||||
|
|||||||
@@ -164,12 +164,12 @@ Example Pipelines
|
|||||||
.. code-block:: toml
|
.. code-block:: toml
|
||||||
|
|
||||||
[build-system]
|
[build-system]
|
||||||
requires = ["setuptools >= 80.0", "wheel ~= 0.45.0", "pyTooling ~= 8.11"]
|
requires = ["setuptools >= 80.0", "pyTooling ~= 8.12"]
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
[tool.mypy]
|
[tool.mypy]
|
||||||
packages = ["myPackage"]
|
packages = ["myPackage"]
|
||||||
python_version = "3.13"
|
python_version = "3.14"
|
||||||
strict = true
|
strict = true
|
||||||
pretty = true
|
pretty = true
|
||||||
show_error_context = true
|
show_error_context = true
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
-r ../requirements.txt
|
-r ../requirements.txt
|
||||||
|
|
||||||
pyTooling ~= 8.11
|
pyTooling ~= 8.12
|
||||||
|
|
||||||
# Enforce latest version on ReadTheDocs
|
# Enforce latest version on ReadTheDocs
|
||||||
sphinx ~= 9.1
|
sphinx ~= 9.1
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ __author__ = "Patrick Lehmann"
|
|||||||
__email__ = "Paebbels@gmail.com"
|
__email__ = "Paebbels@gmail.com"
|
||||||
__copyright__ = "2017-2026, Patrick Lehmann"
|
__copyright__ = "2017-2026, Patrick Lehmann"
|
||||||
__license__ = "Apache License, Version 2.0"
|
__license__ = "Apache License, Version 2.0"
|
||||||
__version__ = "7.4.1"
|
__version__ = "7.4.4"
|
||||||
__keywords__ = ["GitHub Actions"]
|
__keywords__ = ["GitHub Actions"]
|
||||||
__issue_tracker__ = "https://GitHub.com/pyTooling/Actions/issues"
|
__issue_tracker__ = "https://GitHub.com/pyTooling/Actions/issues"
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
[build-system]
|
[build-system]
|
||||||
requires = [
|
requires = [
|
||||||
"setuptools >= 80.0",
|
"setuptools >= 80.0",
|
||||||
"wheel ~= 0.45.0",
|
"pyTooling ~= 8.12"
|
||||||
"pyTooling ~= 8.11"
|
|
||||||
]
|
]
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
@@ -26,7 +25,7 @@ variable-naming-style = "camelCase"
|
|||||||
|
|
||||||
[tool.mypy]
|
[tool.mypy]
|
||||||
packages = ["myPackage", "myFramework.Extension"]
|
packages = ["myPackage", "myFramework.Extension"]
|
||||||
python_version = "3.13"
|
python_version = "3.14"
|
||||||
strict = true
|
strict = true
|
||||||
pretty = true
|
pretty = true
|
||||||
show_error_context = true
|
show_error_context = true
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
pyTooling ~= 8.11
|
pyTooling ~= 8.12
|
||||||
|
|||||||
Reference in New Issue
Block a user