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 configuration file semantic-release.toml for python-semantic-release and a pipeline with reusable workflows in .github/workflows.

Usage

Prerequisites

You will have to do the flollowing things yourself:

  • 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 (default workflow name)
      • 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 With ci-starter

Run these commands:

$ ci-start psr-config
$ ci-start workflows
$ ci-start update-actions

The psr-config command creates the semantic-release.toml, the second one creates the workflow files (.github/workflows/*.yml), the third one fetches the current versions of the GitHub Actions used in the workflow files and updates the workflow files accordingly.

It is your responsibility to check whether it is safe to use the suggested current versions of the GitHub Actions (beware of supply chain attacks).

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.10.7.tar.gz (13.5 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.10.7-py3-none-any.whl (22.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ci_starter-0.10.7.tar.gz
  • Upload date:
  • Size: 13.5 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.10.7.tar.gz
Algorithm Hash digest
SHA256 0aff9ed5848e294bd0c59600343a86f9b519c5bc3f7dff433930cfc147e4b7d8
MD5 978b1e1b30c23dcea61f67aa4e9c039e
BLAKE2b-256 287a782f81bf14dae292bfcf93ac7f8a49ec179d36c40c4fd6797a97572c7cea

See more details on using hashes here.

Provenance

The following attestation bundles were made for ci_starter-0.10.7.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.10.7-py3-none-any.whl.

File metadata

  • Download URL: ci_starter-0.10.7-py3-none-any.whl
  • Upload date:
  • Size: 22.3 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.10.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0104e842cfdb2e396a2961b9ceae13f3b58793d92936d2f7a0fd27b19b31de38
MD5 e0d9277d612edc89a97f121a21eeb2ea
BLAKE2b-256 f57af67334a96fac65aa5e1ad9f63f97068922e2a787812f0fb8a86e321644e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for ci_starter-0.10.7-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