oe-python-template 0.6.17__tar.gz → 0.6.19__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.copier-answers.yml +1 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/workflows/docker-image-build-publish.yml +8 -10
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/workflows/package-build-publish-release.yml +2 -2
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/workflows/test-and-report.yml +7 -7
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/CHANGELOG.md +21 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/CONTRIBUTING.md +7 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/PKG-INFO +1 -1
- oe_python_template-0.6.19/RELEASE_NOTES.md +8 -0
- oe_python_template-0.6.19/VERSION +1 -0
- oe_python_template-0.6.19/docs/source/_static/openapi_v1.yaml +204 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/_static/openapi_v2.yaml +32 -16
- oe_python_template-0.6.19/docs/source/api_v1.rst +9 -0
- oe_python_template-0.6.19/docs/source/api_v2.rst +9 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/conf.py +1 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/examples/notebook.py +1 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/pyproject.toml +2 -2
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/sonar-project.properties +1 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/workflows/docker-image-build-publish.yml.jinja +8 -8
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/workflows/package-build-publish-release.yml.jinja +2 -2
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/workflows/test-and-report.yml.jinja +7 -7
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/CONTRIBUTING.md.jinja +7 -0
- oe_python_template-0.6.19/template/docs/source/api_v1.rst.jinja +9 -0
- oe_python_template-0.6.19/template/docs/source/api_v2.rst.jinja +9 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/examples/notebook.py.jinja +1 -1
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/uv.lock +1 -1
- oe_python_template-0.6.17/RELEASE_NOTES.md +0 -8
- oe_python_template-0.6.17/VERSION +0 -1
- oe_python_template-0.6.17/docs/source/_static/openapi_v1.yaml +0 -36
- oe_python_template-0.6.17/docs/source/api_v1.rst +0 -15
- oe_python_template-0.6.17/docs/source/api_v2.rst +0 -15
- oe_python_template-0.6.17/template/docs/source/api_v1.rst.jinja +0 -15
- oe_python_template-0.6.17/template/docs/source/api_v2.rst.jinja +0 -15
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.act-env-public +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.devcontainer/Dockerfile +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.devcontainer/devcontainer.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.devcontainer/onCreateCommand +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.devcontainer/postAttachCommand +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.devcontainer/postCreateCommand +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.env.example +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/copilot-instructions.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/dependabot.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/prompts/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/workflows/codeql.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.gitignore +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.pre-commit-config.yaml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.python-version +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.readthedocs.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.secrets.baseline +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.vscode/extensions.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/.vscode/settings.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/CODEOWNERS +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/CODE_STYLE.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/Dockerfile +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/LICENSE +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/README.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/SECURITY.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/SERVICE_CONNECTIONS.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/bin/git-cliff +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/codecov.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/compose.yaml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/copier.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/Makefile +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/make.bat +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/partials/README_footer.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/partials/README_header.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/partials/README_main.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/_static/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/_static/openapi_v1.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/_static/openapi_v2.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/code-style.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/contributing.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/index.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/latexmkrc +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/main.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/reference.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/release-notes.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/docs/source/security.rst +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/examples/__init__.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/examples/notebook.ipynb +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/examples/script.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/examples/streamlit.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/CHANGELOG.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/LICENSE-APACHE +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/LICENSE-MIT +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/README.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/completions/_git-cliff +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/completions/_git-cliff.ps1 +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/completions/git-cliff.bash +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/completions/git-cliff.elv +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/completions/git-cliff.fish +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/git-cliff-completions +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/git-cliff-mangen +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0/man/git-cliff.1 +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/git-cliff-2.7.0-x86_64-unknown-linux-gnu.tar.gz +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/github-action-run +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/logo.png +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/n +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/noxfile.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/renovate.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/reports/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/src/oe_python_template/__init__.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/src/oe_python_template/api.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/src/oe_python_template/cli.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/src/oe_python_template/constants.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/src/oe_python_template/service.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.act-env-public.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.devcontainer/Dockerfile.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.devcontainer/devcontainer.json.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.devcontainer/onCreateCommand.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.devcontainer/postAttachCommand.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.devcontainer/postCreateCommand.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.env.example.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/copilot-instructions.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/dependabot.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.github/workflows/codeql.yml +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.gitignore.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.pre-commit-config.yaml.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.python-version +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.readthedocs.yml.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.vscode/extensions.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/.vscode/settings.json.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/CHANGELOG.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/CODEOWNERS.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/CODE_STYLE.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/Dockerfile.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/LICENSE.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/README.md +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/SECURITY.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/SERVICE_CONNECTIONS.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/VERSION +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/codecov.yml.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/compose.yaml.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/Makefile.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/make.bat.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/partials/README_footer.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/partials/README_header.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/partials/README_main.md.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/_static/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/code-style.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/conf.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/contributing.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/index.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/main.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/reference.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/release-notes.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/docs/source/security.rst.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/examples/__init__.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/examples/notebook.ipynb.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/examples/script.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/examples/streamlit.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/github-action-run.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/logo.png +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/n.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/noxfile.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/pyproject.toml.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/renovate.json +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/reports/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/sonar-project.properties.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/src/{{ project_name_snake_case }}/__init__.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/src/{{ project_name_snake_case }}/api.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/src/{{ project_name_snake_case }}/cli.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/src/{{ project_name_snake_case }}/constants.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/src/{{ project_name_snake_case }}/service.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/tests/__init__.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/tests/api_test.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/tests/cli_test.py.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/tests/fixtures/.keep +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/template/{{_copier_conf.answers_file}}.jinja +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/tests/__init__.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/tests/api_test.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/tests/cli_test.py +0 -0
- {oe_python_template-0.6.17 → oe_python_template-0.6.19}/tests/fixtures/.keep +0 -0
|
@@ -21,18 +21,18 @@ jobs:
|
|
|
21
21
|
id-token: write
|
|
22
22
|
steps:
|
|
23
23
|
- name: Checkout
|
|
24
|
-
uses: actions/checkout@v4
|
|
24
|
+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
25
25
|
|
|
26
26
|
- name: Set up QEMU
|
|
27
|
-
uses: docker/setup-qemu-action@v3
|
|
27
|
+
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
|
28
28
|
|
|
29
29
|
- name: Set up Docker Buildx
|
|
30
|
-
uses: docker/setup-buildx-action@v3
|
|
30
|
+
uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
- name: Log in to Docker Hub
|
|
35
|
-
uses: docker/login-action@v3
|
|
35
|
+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
|
36
36
|
with:
|
|
37
37
|
|
|
38
38
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
@@ -41,7 +41,7 @@ jobs:
|
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
- name: Log in to GitHub container registry
|
|
44
|
-
uses: docker/login-action@v3
|
|
44
|
+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
|
45
45
|
with:
|
|
46
46
|
registry: ghcr.io
|
|
47
47
|
|
|
@@ -51,7 +51,7 @@ jobs:
|
|
|
51
51
|
|
|
52
52
|
- name: Extract metadata (tags, labels) for Docker
|
|
53
53
|
id: meta
|
|
54
|
-
uses: docker/metadata-action@v5
|
|
54
|
+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
|
55
55
|
with:
|
|
56
56
|
|
|
57
57
|
|
|
@@ -73,7 +73,7 @@ jobs:
|
|
|
73
73
|
|
|
74
74
|
- name: Build and push Docker image
|
|
75
75
|
id: push
|
|
76
|
-
uses: docker/build-push-action@v6
|
|
76
|
+
uses: docker/build-push-action@471d1dc4e07e5cdedd4c2171150001c434f0b7a4 # v6.15.0
|
|
77
77
|
with:
|
|
78
78
|
context: .
|
|
79
79
|
file: ./Dockerfile
|
|
@@ -86,10 +86,8 @@ jobs:
|
|
|
86
86
|
|
|
87
87
|
|
|
88
88
|
- name: Generate artifact attestation
|
|
89
|
-
uses: actions/attest-build-provenance@v2
|
|
89
|
+
uses: actions/attest-build-provenance@c074443f1aee8d4aeeae555aebba3282517141b2 # v2.2.3
|
|
90
90
|
with:
|
|
91
91
|
subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
92
92
|
subject-digest: ${{ steps.push.outputs.digest }}
|
|
93
93
|
push-to-registry: true
|
|
94
|
-
|
|
95
|
-
|
|
@@ -15,12 +15,12 @@ jobs:
|
|
|
15
15
|
packages: read
|
|
16
16
|
steps:
|
|
17
17
|
- name: Checkout
|
|
18
|
-
uses: actions/checkout@v4
|
|
18
|
+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
19
19
|
with:
|
|
20
20
|
fetch-depth: 0
|
|
21
21
|
|
|
22
22
|
- name: Generate release notes
|
|
23
|
-
uses: orhun/git-cliff-action@v4
|
|
23
|
+
uses: orhun/git-cliff-action@4a4a951bc43fafe41cd2348d181853f52356bee7 # v4.4.2
|
|
24
24
|
id: git-cliff
|
|
25
25
|
with:
|
|
26
26
|
config: pyproject.toml
|
{oe_python_template-0.6.17 → oe_python_template-0.6.19}/.github/workflows/test-and-report.yml
RENAMED
|
@@ -17,7 +17,7 @@ jobs:
|
|
|
17
17
|
id-token: write
|
|
18
18
|
steps:
|
|
19
19
|
- name: Checkout
|
|
20
|
-
uses: actions/checkout@v4
|
|
20
|
+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
21
21
|
with:
|
|
22
22
|
fetch-depth: 0
|
|
23
23
|
|
|
@@ -30,7 +30,7 @@ jobs:
|
|
|
30
30
|
sudo apt-get install -y curl jq xsltproc gnupg2 libcairo2
|
|
31
31
|
|
|
32
32
|
- name: Install uv (python package manager)
|
|
33
|
-
uses: astral-sh/setup-uv@v5
|
|
33
|
+
uses: astral-sh/setup-uv@f94ec6bedd8674c4426838e6b50417d36b6ab231 # v5.3.1
|
|
34
34
|
with:
|
|
35
35
|
version: "0.5.9"
|
|
36
36
|
enable-cache: true
|
|
@@ -58,7 +58,7 @@ jobs:
|
|
|
58
58
|
echo "Development build - Current version in pyproject.toml: $TOML_VERSION"
|
|
59
59
|
|
|
60
60
|
- name: Create .env file
|
|
61
|
-
uses: SpicyPizza/create-envfile@v2.0
|
|
61
|
+
uses: SpicyPizza/create-envfile@ace6d4f5d7802b600276c23ca417e669f1a06f6f # v2.0.3
|
|
62
62
|
with:
|
|
63
63
|
envkey_ENV_KEY: "ENV_VALUE"
|
|
64
64
|
fail_on_empty: true
|
|
@@ -80,7 +80,7 @@ jobs:
|
|
|
80
80
|
uv run nox
|
|
81
81
|
|
|
82
82
|
- name: Upload test results
|
|
83
|
-
uses: actions/upload-artifact@v4
|
|
83
|
+
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
|
|
84
84
|
if: ${{ always() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
|
|
85
85
|
with:
|
|
86
86
|
name: test-results
|
|
@@ -94,7 +94,7 @@ jobs:
|
|
|
94
94
|
retention-days: 30
|
|
95
95
|
|
|
96
96
|
- name: Upload coverage reports to Codecov
|
|
97
|
-
uses: codecov/codecov-action@v5
|
|
97
|
+
uses: codecov/codecov-action@0565863a31f2c772f9f0395002a31e3f06189574 # v5.4.0
|
|
98
98
|
if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
|
|
99
99
|
with:
|
|
100
100
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
@@ -102,12 +102,12 @@ jobs:
|
|
|
102
102
|
|
|
103
103
|
- name: Upload test results to Codecov
|
|
104
104
|
if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
|
|
105
|
-
uses: codecov/test-results-action@v1
|
|
105
|
+
uses: codecov/test-results-action@f2dba722c67b86c6caa034178c6e4d35335f6706 # v1.1.0
|
|
106
106
|
with:
|
|
107
107
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
108
108
|
- name: SonarQube Scan
|
|
109
109
|
if: ${{ !cancelled() && (env.GITHUB_WORKFLOW_RUNTIME != 'ACT') }}
|
|
110
|
-
uses: SonarSource/sonarqube-scan-action@v5
|
|
110
|
+
uses: SonarSource/sonarqube-scan-action@0303d6b62e310685c0e34d0b9cde218036885c4d # v5.0.0
|
|
111
111
|
env:
|
|
112
112
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
113
113
|
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
|
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
[🧠 OE Python Template](https://oe-python-template.readthedocs.io/en/latest/)
|
|
2
2
|
|
|
3
|
-
## [0.6.
|
|
3
|
+
## [0.6.19](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.6.18..0.6.19) - 2025-03-18
|
|
4
|
+
|
|
5
|
+
### 🚜 Refactor
|
|
6
|
+
|
|
7
|
+
- *(codeql)* Fix - ([0af319f](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/0af319fcf7a24c06cb3cacdfa3140e6121830e09))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## [0.6.18](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.6.17..v0.6.18) - 2025-03-18
|
|
11
|
+
|
|
12
|
+
### 📚 Documentation
|
|
13
|
+
|
|
14
|
+
- *(api)* Pdf - ([ecd7dda](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/ecd7dda9fedc464976b5b2f8afa56cf0a35c645f))
|
|
15
|
+
|
|
16
|
+
### ⚙️ Miscellaneous Tasks
|
|
17
|
+
|
|
18
|
+
- *(rtd)* Debug - ([80703d7](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/80703d734a8cd77e35aad6aec14bdefb9d61ed51))
|
|
19
|
+
- Debug rtd - ([bc760ac](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/bc760aca603950b8dd1cf5c77241b2f8ccc091d2))
|
|
20
|
+
- Debug rtd pdf link - ([192df7f](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/192df7f2552180eb721fd21b32f9e074c0f35073))
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## [0.6.17](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.6.16..v0.6.17) - 2025-03-18
|
|
4
24
|
|
|
5
25
|
### ⛰️ Features
|
|
6
26
|
|
|
@@ -20,6 +20,7 @@ fi
|
|
|
20
20
|
which jq &> /dev/null || brew install jq
|
|
21
21
|
which xmllint &> /dev/null || brew install xmllint
|
|
22
22
|
which act &> /dev/null || brew install act
|
|
23
|
+
which pinact &> /dev/null || brew install pinact
|
|
23
24
|
uv run pre-commit install # install pre-commit hooks, see https://pre-commit.com/
|
|
24
25
|
```
|
|
25
26
|
|
|
@@ -130,6 +131,12 @@ docker build -t oe-python-template .
|
|
|
130
131
|
docker run --env THE_VAR=THE_VALUE oe-python-template --help
|
|
131
132
|
```
|
|
132
133
|
|
|
134
|
+
### Pinning github actions
|
|
135
|
+
|
|
136
|
+
```shell
|
|
137
|
+
pinact run # See https://dev.to/suzukishunsuke/pin-github-actions-to-a-full-length-commit-sha-for-security-2n7p
|
|
138
|
+
```
|
|
139
|
+
|
|
133
140
|
### Copier
|
|
134
141
|
|
|
135
142
|
Update from template
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: oe-python-template
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.19
|
|
4
4
|
Summary: 🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling.
|
|
5
5
|
Project-URL: Homepage, https://oe-python-template.readthedocs.io/en/latest/
|
|
6
6
|
Project-URL: Documentation, https://oe-python-template.readthedocs.io/en/latest/
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
## [0.6.19](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/compare/v0.6.18..v0.6.19) - 2025-03-18
|
|
2
|
+
|
|
3
|
+
### 🚜 Refactor
|
|
4
|
+
|
|
5
|
+
- *(codeql)* Fix - ([0af319f](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/commit/0af319fcf7a24c06cb3cacdfa3140e6121830e09))
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.6.19
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
components:
|
|
2
|
+
schemas:
|
|
3
|
+
EchoRequest:
|
|
4
|
+
description: Request model for echo endpoint.
|
|
5
|
+
properties:
|
|
6
|
+
text:
|
|
7
|
+
description: The text to echo back
|
|
8
|
+
examples:
|
|
9
|
+
- Hello, world!
|
|
10
|
+
minLength: 1
|
|
11
|
+
title: Text
|
|
12
|
+
type: string
|
|
13
|
+
required:
|
|
14
|
+
- text
|
|
15
|
+
title: EchoRequest
|
|
16
|
+
type: object
|
|
17
|
+
EchoResponse:
|
|
18
|
+
description: Response model for echo endpoint.
|
|
19
|
+
properties:
|
|
20
|
+
message:
|
|
21
|
+
description: The message content
|
|
22
|
+
examples:
|
|
23
|
+
- Hello, world!
|
|
24
|
+
minLength: 1
|
|
25
|
+
title: Message
|
|
26
|
+
type: string
|
|
27
|
+
required:
|
|
28
|
+
- message
|
|
29
|
+
title: EchoResponse
|
|
30
|
+
type: object
|
|
31
|
+
HTTPValidationError:
|
|
32
|
+
properties:
|
|
33
|
+
detail:
|
|
34
|
+
items:
|
|
35
|
+
$ref: '#/components/schemas/ValidationError'
|
|
36
|
+
title: Detail
|
|
37
|
+
type: array
|
|
38
|
+
title: HTTPValidationError
|
|
39
|
+
type: object
|
|
40
|
+
Health:
|
|
41
|
+
description: Health status model.
|
|
42
|
+
properties:
|
|
43
|
+
reason:
|
|
44
|
+
anyOf:
|
|
45
|
+
- type: string
|
|
46
|
+
- type: 'null'
|
|
47
|
+
title: Reason
|
|
48
|
+
status:
|
|
49
|
+
$ref: '#/components/schemas/_HealthStatus'
|
|
50
|
+
required:
|
|
51
|
+
- status
|
|
52
|
+
title: Health
|
|
53
|
+
type: object
|
|
54
|
+
HelloWorldResponse:
|
|
55
|
+
description: Response model for hello-world endpoint.
|
|
56
|
+
properties:
|
|
57
|
+
message:
|
|
58
|
+
description: The hello world message
|
|
59
|
+
examples:
|
|
60
|
+
- Hello, world!
|
|
61
|
+
title: Message
|
|
62
|
+
type: string
|
|
63
|
+
required:
|
|
64
|
+
- message
|
|
65
|
+
title: HelloWorldResponse
|
|
66
|
+
type: object
|
|
67
|
+
ValidationError:
|
|
68
|
+
properties:
|
|
69
|
+
loc:
|
|
70
|
+
items:
|
|
71
|
+
anyOf:
|
|
72
|
+
- type: string
|
|
73
|
+
- type: integer
|
|
74
|
+
title: Location
|
|
75
|
+
type: array
|
|
76
|
+
msg:
|
|
77
|
+
title: Message
|
|
78
|
+
type: string
|
|
79
|
+
type:
|
|
80
|
+
title: Error Type
|
|
81
|
+
type: string
|
|
82
|
+
required:
|
|
83
|
+
- loc
|
|
84
|
+
- msg
|
|
85
|
+
- type
|
|
86
|
+
title: ValidationError
|
|
87
|
+
type: object
|
|
88
|
+
_HealthStatus:
|
|
89
|
+
description: Health status enumeration.
|
|
90
|
+
enum:
|
|
91
|
+
- UP
|
|
92
|
+
- DOWN
|
|
93
|
+
title: _HealthStatus
|
|
94
|
+
type: string
|
|
95
|
+
info:
|
|
96
|
+
contact:
|
|
97
|
+
email: helmuthva@gmail.com
|
|
98
|
+
name: Helmut Hoffer von Ankershoffen
|
|
99
|
+
url: https://github.com/helmut-hoffer-von-ankershoffen
|
|
100
|
+
termsOfService: https://oe-python-template.readthedocs.io/en/latest/
|
|
101
|
+
title: OE Python Template
|
|
102
|
+
version: 1.0.0
|
|
103
|
+
openapi: 3.1.0
|
|
104
|
+
paths:
|
|
105
|
+
/echo:
|
|
106
|
+
post:
|
|
107
|
+
description: "Echo back the provided text.\n\nArgs:\n request
|
|
108
|
+
(EchoRequest):\
|
|
109
|
+
\ The request containing the text to echo back.\n\nReturns:\n
|
|
110
|
+
EchoResponse:\
|
|
111
|
+
\ A response containing the echoed text.\n\nRaises:\n 422
|
|
112
|
+
Unprocessable\
|
|
113
|
+
\ Entity: If text is not provided or empty."
|
|
114
|
+
operationId: echo_echo_post
|
|
115
|
+
requestBody:
|
|
116
|
+
content:
|
|
117
|
+
application/json:
|
|
118
|
+
schema:
|
|
119
|
+
$ref: '#/components/schemas/EchoRequest'
|
|
120
|
+
required: true
|
|
121
|
+
responses:
|
|
122
|
+
'200':
|
|
123
|
+
content:
|
|
124
|
+
application/json:
|
|
125
|
+
schema:
|
|
126
|
+
$ref: '#/components/schemas/EchoResponse'
|
|
127
|
+
description: Successful Response
|
|
128
|
+
'422':
|
|
129
|
+
content:
|
|
130
|
+
application/json:
|
|
131
|
+
schema:
|
|
132
|
+
$ref: '#/components/schemas/HTTPValidationError'
|
|
133
|
+
description: Validation Error
|
|
134
|
+
summary: Echo
|
|
135
|
+
tags:
|
|
136
|
+
- Basics
|
|
137
|
+
/health:
|
|
138
|
+
get:
|
|
139
|
+
description: "Check the health of the service.\n\nThis endpoint returns
|
|
140
|
+
the\
|
|
141
|
+
\ health status of the service.\nThe health status can be either UP or
|
|
142
|
+
DOWN.\n\
|
|
143
|
+
If the service is healthy, the status will be UP.\nIf the service is
|
|
144
|
+
unhealthy,\
|
|
145
|
+
\ the status will be DOWN and a reason will be provided.\nThe response
|
|
146
|
+
will\
|
|
147
|
+
\ have a 200 OK status code if the service is healthy,\nand a 500
|
|
148
|
+
Internal\
|
|
149
|
+
\ Server Error status code if the service is unhealthy.\n\nReturns:\n
|
|
150
|
+
Health:\
|
|
151
|
+
\ The health status of the service."
|
|
152
|
+
operationId: health_health_get
|
|
153
|
+
responses:
|
|
154
|
+
'200':
|
|
155
|
+
content:
|
|
156
|
+
application/json:
|
|
157
|
+
schema:
|
|
158
|
+
$ref: '#/components/schemas/Health'
|
|
159
|
+
description: Successful Response
|
|
160
|
+
summary: Health
|
|
161
|
+
tags:
|
|
162
|
+
- Observability
|
|
163
|
+
/healthz:
|
|
164
|
+
get:
|
|
165
|
+
description: "Check the health of the service.\n\nThis endpoint returns
|
|
166
|
+
the\
|
|
167
|
+
\ health status of the service.\nThe health status can be either UP or
|
|
168
|
+
DOWN.\n\
|
|
169
|
+
If the service is healthy, the status will be UP.\nIf the service is
|
|
170
|
+
unhealthy,\
|
|
171
|
+
\ the status will be DOWN and a reason will be provided.\nThe response
|
|
172
|
+
will\
|
|
173
|
+
\ have a 200 OK status code if the service is healthy,\nand a 500
|
|
174
|
+
Internal\
|
|
175
|
+
\ Server Error status code if the service is unhealthy.\n\nReturns:\n
|
|
176
|
+
Health:\
|
|
177
|
+
\ The health status of the service."
|
|
178
|
+
operationId: health_healthz_get
|
|
179
|
+
responses:
|
|
180
|
+
'200':
|
|
181
|
+
content:
|
|
182
|
+
application/json:
|
|
183
|
+
schema:
|
|
184
|
+
$ref: '#/components/schemas/Health'
|
|
185
|
+
description: Successful Response
|
|
186
|
+
summary: Health
|
|
187
|
+
tags:
|
|
188
|
+
- Observability
|
|
189
|
+
/hello-world:
|
|
190
|
+
get:
|
|
191
|
+
description: "Return a hello world message.\n\nReturns:\n
|
|
192
|
+
HelloWorldResponse:\
|
|
193
|
+
\ A response containing the hello world message."
|
|
194
|
+
operationId: hello_world_hello_world_get
|
|
195
|
+
responses:
|
|
196
|
+
'200':
|
|
197
|
+
content:
|
|
198
|
+
application/json:
|
|
199
|
+
schema:
|
|
200
|
+
$ref: '#/components/schemas/HelloWorldResponse'
|
|
201
|
+
description: Successful Response
|
|
202
|
+
summary: Hello World
|
|
203
|
+
tags:
|
|
204
|
+
- Basics
|
|
@@ -104,9 +104,12 @@ openapi: 3.1.0
|
|
|
104
104
|
paths:
|
|
105
105
|
/echo:
|
|
106
106
|
post:
|
|
107
|
-
description: "Echo back the provided utterance.\n\nArgs:\n request
|
|
108
|
-
|
|
109
|
-
\
|
|
107
|
+
description: "Echo back the provided utterance.\n\nArgs:\n request
|
|
108
|
+
(Utterance):\
|
|
109
|
+
\ The request containing the utterance to echo back.\n\nReturns:\n
|
|
110
|
+
EchoResponse:\
|
|
111
|
+
\ A response containing the echoed utterance.\n\nRaises:\n 422
|
|
112
|
+
Unprocessable\
|
|
110
113
|
\ Entity: If utterance is not provided or empty."
|
|
111
114
|
operationId: echo_v2_echo_post
|
|
112
115
|
requestBody:
|
|
@@ -133,12 +136,18 @@ paths:
|
|
|
133
136
|
- Basics
|
|
134
137
|
/health:
|
|
135
138
|
get:
|
|
136
|
-
description: "Check the health of the service.\n\nThis endpoint returns
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
139
|
+
description: "Check the health of the service.\n\nThis endpoint returns
|
|
140
|
+
the\
|
|
141
|
+
\ health status of the service.\nThe health status can be either UP or
|
|
142
|
+
DOWN.\n\
|
|
143
|
+
If the service is healthy, the status will be UP.\nIf the service is
|
|
144
|
+
unhealthy,\
|
|
145
|
+
\ the status will be DOWN and a reason will be provided.\nThe response
|
|
146
|
+
will\
|
|
147
|
+
\ have a 200 OK status code if the service is healthy,\nand a 500
|
|
148
|
+
Internal\
|
|
149
|
+
\ Server Error status code if the service is unhealthy.\n\nReturns:\n
|
|
150
|
+
Health:\
|
|
142
151
|
\ The health status of the service."
|
|
143
152
|
operationId: health_health_get
|
|
144
153
|
responses:
|
|
@@ -153,12 +162,18 @@ paths:
|
|
|
153
162
|
- Observability
|
|
154
163
|
/healthz:
|
|
155
164
|
get:
|
|
156
|
-
description: "Check the health of the service.\n\nThis endpoint returns
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
165
|
+
description: "Check the health of the service.\n\nThis endpoint returns
|
|
166
|
+
the\
|
|
167
|
+
\ health status of the service.\nThe health status can be either UP or
|
|
168
|
+
DOWN.\n\
|
|
169
|
+
If the service is healthy, the status will be UP.\nIf the service is
|
|
170
|
+
unhealthy,\
|
|
171
|
+
\ the status will be DOWN and a reason will be provided.\nThe response
|
|
172
|
+
will\
|
|
173
|
+
\ have a 200 OK status code if the service is healthy,\nand a 500
|
|
174
|
+
Internal\
|
|
175
|
+
\ Server Error status code if the service is unhealthy.\n\nReturns:\n
|
|
176
|
+
Health:\
|
|
162
177
|
\ The health status of the service."
|
|
163
178
|
operationId: health_healthz_get
|
|
164
179
|
responses:
|
|
@@ -173,7 +188,8 @@ paths:
|
|
|
173
188
|
- Observability
|
|
174
189
|
/hello-world:
|
|
175
190
|
get:
|
|
176
|
-
description: "Return a hello world message.\n\nReturns:\n
|
|
191
|
+
description: "Return a hello world message.\n\nReturns:\n
|
|
192
|
+
HelloWorldResponse:\
|
|
177
193
|
\ A response containing the hello world message."
|
|
178
194
|
operationId: hello_world_hello_world_get
|
|
179
195
|
responses:
|
|
@@ -29,7 +29,7 @@ extensions = [
|
|
|
29
29
|
project = "oe-python-template"
|
|
30
30
|
author = "Helmut Hoffer von Ankershoffen"
|
|
31
31
|
copyright = f" (c) 2025-{datetime.now(UTC).year}, {author}" # noqa: A001
|
|
32
|
-
version = "0.6.
|
|
32
|
+
version = "0.6.19"
|
|
33
33
|
release = version
|
|
34
34
|
github_username = "helmut-hoffer-von-ankershoffen"
|
|
35
35
|
github_repository = "oe-python-template"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "oe-python-template"
|
|
3
|
-
version = "0.6.
|
|
3
|
+
version = "0.6.19"
|
|
4
4
|
description = "🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
authors = [
|
|
@@ -242,7 +242,7 @@ source = ["src/"]
|
|
|
242
242
|
|
|
243
243
|
|
|
244
244
|
[tool.bumpversion]
|
|
245
|
-
current_version = "0.6.
|
|
245
|
+
current_version = "0.6.19"
|
|
246
246
|
parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
|
|
247
247
|
serialize = ["{major}.{minor}.{patch}"]
|
|
248
248
|
search = "{current_version}"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
sonar.projectKey=helmut-hoffer-von-ankershoffen_oe-python-template
|
|
2
2
|
sonar.organization=helmut-hoffer-von-ankershoffen
|
|
3
|
-
sonar.projectVersion=0.6.
|
|
3
|
+
sonar.projectVersion=0.6.19
|
|
4
4
|
sonar.projectDescription=🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling.
|
|
5
5
|
sonar.links.homepage=https://oe-python-template.readthedocs.io/en/latest/
|
|
6
6
|
sonar.links.scm=https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template
|
|
@@ -21,18 +21,18 @@ jobs:
|
|
|
21
21
|
id-token: write
|
|
22
22
|
steps:
|
|
23
23
|
- name: Checkout
|
|
24
|
-
uses: actions/checkout@v4
|
|
24
|
+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
25
25
|
|
|
26
26
|
- name: Set up QEMU
|
|
27
|
-
uses: docker/setup-qemu-action@v3
|
|
27
|
+
uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0
|
|
28
28
|
|
|
29
29
|
- name: Set up Docker Buildx
|
|
30
|
-
uses: docker/setup-buildx-action@v3
|
|
30
|
+
uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
{% if docker_io_enabled %}
|
|
34
34
|
- name: Log in to Docker Hub
|
|
35
|
-
uses: docker/login-action@v3
|
|
35
|
+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
|
36
36
|
with:
|
|
37
37
|
{% raw %}
|
|
38
38
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
@@ -41,7 +41,7 @@ jobs:
|
|
|
41
41
|
{% endif %}
|
|
42
42
|
|
|
43
43
|
- name: Log in to GitHub container registry
|
|
44
|
-
uses: docker/login-action@v3
|
|
44
|
+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
|
|
45
45
|
with:
|
|
46
46
|
registry: ghcr.io
|
|
47
47
|
{% raw %}
|
|
@@ -51,7 +51,7 @@ jobs:
|
|
|
51
51
|
|
|
52
52
|
- name: Extract metadata (tags, labels) for Docker
|
|
53
53
|
id: meta
|
|
54
|
-
uses: docker/metadata-action@v5
|
|
54
|
+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
|
|
55
55
|
with:
|
|
56
56
|
{% if docker_io_enabled %}
|
|
57
57
|
{% raw %}
|
|
@@ -78,7 +78,7 @@ jobs:
|
|
|
78
78
|
{% raw %}
|
|
79
79
|
- name: Build and push Docker image
|
|
80
80
|
id: push
|
|
81
|
-
uses: docker/build-push-action@v6
|
|
81
|
+
uses: docker/build-push-action@471d1dc4e07e5cdedd4c2171150001c434f0b7a4 # v6.15.0
|
|
82
82
|
with:
|
|
83
83
|
context: .
|
|
84
84
|
file: ./Dockerfile
|
|
@@ -91,7 +91,7 @@ jobs:
|
|
|
91
91
|
{% if docker_io_enabled %}
|
|
92
92
|
{% raw %}
|
|
93
93
|
- name: Generate artifact attestation
|
|
94
|
-
uses: actions/attest-build-provenance@v2
|
|
94
|
+
uses: actions/attest-build-provenance@c074443f1aee8d4aeeae555aebba3282517141b2 # v2.2.3
|
|
95
95
|
with:
|
|
96
96
|
subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
|
97
97
|
subject-digest: ${{ steps.push.outputs.digest }}
|
|
@@ -15,12 +15,12 @@ jobs:
|
|
|
15
15
|
packages: read
|
|
16
16
|
steps:
|
|
17
17
|
- name: Checkout
|
|
18
|
-
uses: actions/checkout@v4
|
|
18
|
+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
19
19
|
with:
|
|
20
20
|
fetch-depth: 0
|
|
21
21
|
|
|
22
22
|
- name: Generate release notes
|
|
23
|
-
uses: orhun/git-cliff-action@v4
|
|
23
|
+
uses: orhun/git-cliff-action@4a4a951bc43fafe41cd2348d181853f52356bee7 # v4.4.2
|
|
24
24
|
id: git-cliff
|
|
25
25
|
with:
|
|
26
26
|
config: pyproject.toml
|