Skip to main content

Kickstarts the semantic release pipeline for your Python project

Project description

ci-starter

Kickstarts the semantic release pipeline for your Python project on GitHub. It creates an opinionated configuration file for python-semantic-release, semantic-release.toml and a pipeline with reusable workflows in .github/workflows.

Usage

Prerequisites

  • Create your project:
    • Use uv to initialize your project (must be a package)
      • Fill it with some minimally meaningful content, I recommend:
        • set version to 0.0.0
        • project urls
        • keywords
        • classifiers
        • license
      • Add a dependency group for running tests (group shall contain at least your test runner, e.g. pytest)
    • Create tests (CI/CD pipeline would fail if no tests are found)
    • Format and check everything with ruff
    • Set up a trusted publisher for your project on pypi.org:
      • Workflow: continuous-delivery.yml
      • Environment name: pypi
    • Set up a trusted publisher for your project on test.pypi.org:
      • Workflow: continuous-delivery.yml
      • Environment name: testpypi
    • Create a GitHub repository for your project
    • Add remote origin and its ssh address at your local clone

Create CI/CD Pipeline

  • run ci-start (not ci-starter) in the project directory:
ci-start \
    --module-name my_app \
    --package-name my-app \
    --workflow-file continuous_delivery.yml \
    --test-group test`
    --test-command "uv run -- pytest -v"
    .

That should create you a configuration file (semantic-release.toml) and some workflow files (.github/workflows/*.yml) to start with.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ci_starter-0.5.0.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ci_starter-0.5.0-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file ci_starter-0.5.0.tar.gz.

File metadata

  • Download URL: ci_starter-0.5.0.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ci_starter-0.5.0.tar.gz
Algorithm Hash digest
SHA256 4260f48aa97f9c89591a9c15af3135031d634bd46958624e9bc0b41103b2d4bb
MD5 e0050dcc1d716f5b69fba5bb92a5a3ed
BLAKE2b-256 c62f955dc67d0a44897e53b57da6dcb9d23760bfccd8a469759ff94c90b1af9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ci_starter-0.5.0.tar.gz:

Publisher: continuous-delivery.yml on fleetingbytes/ci-starter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ci_starter-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: ci_starter-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ci_starter-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4d4277a8ebd27550eadc209e11a901337dad9a1d6e148c41be6dd25b268fd851
MD5 0f25ce37e28dd1771d92675cca9039aa
BLAKE2b-256 6d8a62622a5b531fddaed52abec1db1c3d7c0ce45a8e723b2c9aaedf9080cded

See more details on using hashes here.

Provenance

The following attestation bundles were made for ci_starter-0.5.0-py3-none-any.whl:

Publisher: continuous-delivery.yml on fleetingbytes/ci-starter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page