Skip to main content

Craft parts tooling

Project description

# Craft Parts

[![Documentation Status](https://readthedocs.com/projects/canonical-craft-parts/badge/?version=latest)](https://canonical-craft-parts.readthedocs-hosted.com/en/latest/?badge=latest)

Craft-parts provides a mechanism to obtain data from different sources, process it in various ways, and prepare a filesystem subtree suitable for deployment. The components used in its project specification are called parts, which can be independently downloaded, built and installed, and also depend on each other in order to assemble the subtree containing the final artifacts.

# License

Free software: GNU Lesser General Public License v3

# Documentation

https://canonical-craft-parts.readthedocs-hosted.com/en/latest/

# Contributing

A Makefile is provided for easy interaction with the project. To see all available options run:

` make help `

## Development Environment

In order to develop any apt related items, the python-apt package is needed. The apt extra will require this package in general.

Apt package prerequisites for this development environment on an Ubuntu system can be installed with:

`bash sudo apt install libapt-pkg-dev intltool fuse-overlayfs `

On a Debian or Ubuntu system, the appropriate package can be installed by running

`bash apt source python-apt pip install ./python-apt_* `

or by downloading and installing the appropriate source tarball. On Ubuntu these are:

## Running tests

To run all tests in the suite run:

` make tests `

## Adding new requirements

If a new dependency is added to the project run:

` make freeze-requirements `

## Verifying documentation changes

To locally verify documentation changes run:

` make docs `

After running, newly generated documentation shall be available at ./docs/_build/html/.

## Committing code

Please follow these guidelines when committing code for this project:

  • Use a topic with a colon to start the subject

  • Separate subject from body with a blank line

  • Limit the subject line to 50 characters

  • Do not capitalize the subject line

  • Do not end the subject line with a period

  • Use the imperative mood in the subject line

  • Wrap the body at 72 characters

  • Use the body to explain what and why (instead of how)

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

craft_parts-1.31.0.tar.gz (333.5 kB view details)

Uploaded Source

File details

Details for the file craft_parts-1.31.0.tar.gz.

File metadata

  • Download URL: craft_parts-1.31.0.tar.gz
  • Upload date:
  • Size: 333.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for craft_parts-1.31.0.tar.gz
Algorithm Hash digest
SHA256 77f14ffbd6c3780326fec1a9ff71da9aae72595853c1b754b8c274eddaf590db
MD5 20b6b6edc8f5afbf5225c83a5b401ef2
BLAKE2b-256 e3f36d1e63d1dc41960ea1c17c98ca41fa27ebd52d643dc6e7720de9df8406bf

See more details on using hashes here.

Supported by

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