Skip to main content

Dummy package for exercising the scm-python release CI/CD + PyPI flow

Project description

python-cicd-demo

A throwaway Python package whose only purpose is to exercise the release CI/CD + PyPI flow used by scm-python, end to end:

  • Version-driven release — the version in pyproject.toml is the single source of truth. Merging a version bump into main triggers a publish.
  • CHANGELOG-driven notes — the ## [X.Y.Z] section becomes the GitHub Release body; a missing/empty section fails the release early.
  • PyPI Trusted Publishing (OIDC) — no stored API tokens; publishing runs in an approval-gated pypi environment.

Layout

cicd_demo/            # the (flat-layout) package
tests/                # a trivial pytest suite
pyproject.toml        # setuptools build + version of record
CHANGELOG.md          # Keep a Changelog; drives Release notes
.github/workflows/
  test.yml            # CI on develop
  release-python-sdk.yml  # version-triggered release to PyPI

Local use

python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest
cicd-demo            # prints: Hello, world! (python-cicd-demo 0.1.0)

How to cut a release

  1. Edit pyproject.toml → bump version.
  2. In CHANGELOG.md, promote ## [Unreleased] to ## [X.Y.Z] - <date>.
  3. Commit on develop, open a PR to main, merge it.
  4. Approve the run in the pypi environment → it builds, publishes to PyPI, and cuts a vX.Y.Z tag + GitHub Release.

See SETUP.md for the one-time PyPI/GitHub configuration required first.

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

python_cicd_demo-0.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

python_cicd_demo-0.1.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file python_cicd_demo-0.1.0.tar.gz.

File metadata

  • Download URL: python_cicd_demo-0.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for python_cicd_demo-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4da9fd104a245f1ffe50f3991911935dbef86da20876d7e112a583c2298ed0bb
MD5 452b467067030be5402be7f1ebb816b1
BLAKE2b-256 d4d4e204d2b072abb2cb712e1d0751debb80dbd79e44dd8922456d248100879d

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_cicd_demo-0.1.0.tar.gz:

Publisher: release-python-sdk.yml on PaloAltoNetworks/python-cicd-demo

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

File details

Details for the file python_cicd_demo-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_cicd_demo-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3c2ed1ebaa7c25a5d8090a162dddc3071f1fd56f7305a38b63bb96295c608787
MD5 c9817318caacc15fde1341eff352bb86
BLAKE2b-256 792291d5c4ec4151b37c2cd58972aef155100dc5ca20da63917ce873309d8359

See more details on using hashes here.

Provenance

The following attestation bundles were made for python_cicd_demo-0.1.0-py3-none-any.whl:

Publisher: release-python-sdk.yml on PaloAltoNetworks/python-cicd-demo

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