This repository has been archived by the owner on Jul 29, 2024. It is now read-only.
243 [davidbrownell] on 44/merge #243
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# ---------------------------------------------------------------------- | |
# | |
# Copyright (c) 2024 Scientific Software Engineering Center at Georgia Tech | |
# Distributed under the MIT License. | |
# | |
# ---------------------------------------------------------------------- | |
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.20.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.20.0 | |
with: | |
operating_system: ${{ matrix.os }} | |
python_version: ${{ matrix.python_version }} | |
# ---------------------------------------------------------------------- | |
package_coverage: | |
needs: validate | |
name: Postprocess Coverage Info | |
permissions: | |
contents: read | |
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_package_python_coverage.yaml@CI-v0.20.0 | |
with: | |
gist_id: 2f9d770d13e3a148424f374f74d41f4b | |
gist_filename: PythonProjectBootstrapper_coverage.json | |
secrets: | |
GIST_TOKEN: ${{ secrets.GIST_TOKEN }} | |
# ---------------------------------------------------------------------- | |
create_package: | |
needs: 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: Create Package | |
permissions: | |
contents: read | |
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_create_python_package.yaml@CI-v0.20.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.20.0 | |
with: | |
operating_system: ${{ matrix.os }} | |
python_version: ${{ matrix.python_version }} | |
validation_command: python -c "from PythonProjectBootstrapper import __version__; print(__version__); from PythonProjectBootstrapper import EntryPoint; print(EntryPoint)" | |
# ---------------------------------------------------------------------- | |
create_binary: | |
needs: validate | |
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.20.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.20.0 | |
with: | |
operating_system: ${{ matrix.os }} | |
python_version: ${{ matrix.python_version }} | |
validation_command: PythonProjectBootstrapper package this_value_is_ignored --version | |
# ---------------------------------------------------------------------- | |
publish: | |
needs: | |
- validate_package | |
- validate_binary | |
name: Publish | |
permissions: | |
contents: write | |
uses: davidbrownell/dbrownell_DevTools/.github/workflows/callable_publish_python.yaml@CI-v0.20.0 | |
with: | |
release_sources_configuration_filename: .github/release_sources.yaml | |
secrets: | |
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} |