Skip to main content

The Python library that powers Nanci CI pipelines

Project description

Nanci

nanci

The Python library that powers Nanci CI pipelines.

nanci.dev · Docs · Quickstart


nanci is the engine behind Nanci — a CI system where pipelines are plain Python files. Install this package to run Nanci pipelines locally or to build tooling on top of the same runtime the cloud uses.

from nanci import job, ci
import asyncio

@job(image="python:3.12-slim")
async def test():
    await ci.upload("src/", "/app/src")
    await ci.upload("tests/", "/app/tests")
    "cd /app && pip install -e . -q && pytest"

asyncio.run(test())

Each @job-decorated function runs inside an isolated Docker container. String literals in the function body are shell commands. Parallelism is plain asyncio.gather.

Quickstart

pip install nanci
# nanci_ci.py
from nanci import job
import asyncio

@job
async def hello():
    "echo Hello, world!"

asyncio.run(hello())
python nanci_ci.py

Full documentation at nanci.dev.

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

nanci-0.1.4.tar.gz (16.8 kB view details)

Uploaded Source

Built Distribution

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

nanci-0.1.4-py3-none-any.whl (23.0 kB view details)

Uploaded Python 3

File details

Details for the file nanci-0.1.4.tar.gz.

File metadata

  • Download URL: nanci-0.1.4.tar.gz
  • Upload date:
  • Size: 16.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nanci-0.1.4.tar.gz
Algorithm Hash digest
SHA256 75849710bb8eec14f525259b4a274899e3fee89077c445b5f9ec50fe3f71494a
MD5 dc3b27d4571d53f9b54076ea5c7d7960
BLAKE2b-256 431b49d6b4ee9837e115abe62d9c85a964e8d6edc9f9cc9c7f2a440c44e19130

See more details on using hashes here.

File details

Details for the file nanci-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: nanci-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 23.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for nanci-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2b1ca5d00fe57f5f214ba02be0fd0d8922575ab6183e1f8123cae5b9231f2393
MD5 3142ea54e0c5b3964c97dbf494b1659e
BLAKE2b-256 637742f862293cdae80c0aa7a744e8f4944496f277a4af47e83aa1e7d38628b1

See more details on using hashes here.

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