Skip to content

185 [davidbrownell] on main #185

185 [davidbrownell] on main

185 [davidbrownell] on main #185

Workflow file for this run

name: "Standard"
run-name: ${{ github.run_number }} [${{ github.actor }}] on ${{ github.ref_name }}
on:
pull_request:
branches:
- main
push:
branches:
- main
schedule:
- cron: '0 0 * * *' # Once a day at 12am UTC
workflow_dispatch:
permissions: {}
jobs:
# ----------------------------------------------------------------------
action_contexts:
name: "Display GitHub Action Contexts"
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_display_action_contexts.yaml@CI-v0.23.0
# ----------------------------------------------------------------------
validate:
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
python_version:
- "3.12"
- "3.11"
- "3.10"
# - "3.9" # Not supported
# - "3.8" # Not supported
name: Validate
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_validate_python.yaml@CI-v0.23.0
with:
operating_system: ${{ matrix.os }}
python_version: ${{ matrix.python_version }}
secrets:
CUSTOM_INITIALIZATION_SECRET: ${{ secrets.TESTING_GITHUB_PAT }}
# ----------------------------------------------------------------------
package_coverage:
needs: validate
name: Postprocess Coverage Info
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_package_python_coverage.yaml@CI-v0.23.0
with:
gist_id: 2f9d770d13e3a148424f374f74d41f4b
gist_filename: RepoAuditor_coverage.json
secrets:
GIST_TOKEN: ${{ secrets.GIST_TOKEN }}
# ----------------------------------------------------------------------
create_package:
needs: package_coverage
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
python_version:
- "3.12"
- "3.11"
- "3.10"
# - "3.9" # Not supported
# - "3.8" # Not supported
name: Create Package
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_create_python_package.yaml@CI-v0.23.0
with:
operating_system: ${{ matrix.os }}
python_version: ${{ matrix.python_version }}
# ----------------------------------------------------------------------
validate_package:
needs: create_package
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
python_version:
- "3.12"
- "3.11"
- "3.10"
# - "3.9" # Not supported
# - "3.8" # Not supported
name: Validate Package
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_validate_python_package.yaml@CI-v0.23.0
with:
operating_system: ${{ matrix.os }}
python_version: ${{ matrix.python_version }}
validation_command: python -c "from RepoAuditor import __version__; print(__version__)"
# ----------------------------------------------------------------------
create_binary:
needs: package_coverage
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
python_version:
- "3.11"
name: Create Binary
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_create_python_binary.yaml@CI-v0.23.0
with:
operating_system: ${{ matrix.os }}
python_version: ${{ matrix.python_version }}
# ----------------------------------------------------------------------
validate_binary:
needs: create_binary
strategy:
fail-fast: false
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
python_version:
- "3.11"
name: Validate Binary
permissions:
contents: read
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_validate_python_binary.yaml@CI-v0.23.0
with:
operating_system: ${{ matrix.os }}
python_version: ${{ matrix.python_version }}
validation_command: RepoAuditor --version
# ----------------------------------------------------------------------
publish:
needs:
- validate_package
- validate_binary
name: Publish
permissions:
contents: write
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_publish_python.yaml@CI-v0.23.0
with:
release_sources_configuration_filename: .github/release_sources.yaml
secrets:
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
MINISIGN_PRIVATE_KEY: ${{ secrets.MINISIGN_PRIVATE_KEY }}