Hatch plugin for building Apache NiFi NAR bundles
Project description
hatch-datavolo-nar
This project provides a Builder plugin for the Hatch Python project manager that enables building packaged archives for Apache NiFi. The NAR format uses the ZIP file structure, containing a manifest and NiFi components with dependencies.
Integrating
This project requires the Hatch project manager for Python with a working pyproject.toml configuration.
Build System
The hatch-datavolo-nar library must be added to the build-system.requires field in a
pyproject.toml configuration
for Hatch to load the plugin.
[build-system]
requires = ["hatchling", "hatch-datavolo-nar"]
build-backend = "hatchling.build"
Build Packages
The hatch-datavolo-nar plugin reads the Hatch
build configuration to select files for packaging.
The nar build target should be configured with a packages field that identifies the directory
containing Python files to be included.
The following configuration section provides an example for a project containing a processors package
using the src layout
for directory organization:
[tool.hatch.build.targets.nar]
packages = ["src/processors"]
Build Command
The hatch-datavolo-nar plugin provides the nar build target, which can be invoked using the Hatch build command.
hatch build -t nar
A Python NAR with platform-specific dependencies requires building on a machine with the same architecture as the runtime system.
Developing
Run the following Hatch command to build the project:
hatch build
The Python wheel can be referenced using a file URI in a project build system.
[build-system]
requires = ["hatchling", "hatch-datavolo-nar@file:///dist/hatch_datavolo_nar-0.1.0-py3-none-any.whl"]
build-backend = "hatchling.build"
The Hatch build environment caches build plugins, which requires pruning existing environments to use a new version of the plugin.
hatch env prune
Coding Conventions
This project uses the following tools to evaluate adherence to coding conventions:
- Coverage.py for code coverage
- mypy for typing
- Ruff for formatting
Versioning
This project follows the Semantic Versioning Specification 2.0.0.
Licensing
This project is distributed under the terms of the Apache License 2.0.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hatch_datavolo_nar-1.0.1.tar.gz.
File metadata
- Download URL: hatch_datavolo_nar-1.0.1.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11a050c8a11c1481612061583ecb32e3d0f95bbfb3889f6159f593c77b58332a
|
|
| MD5 |
40c3df667f32f0b23d4d38fd063f69a7
|
|
| BLAKE2b-256 |
a8c490a48df03af89c3fcbf332864e3cbc2fa8ed941471dc5a31bb9e2cd5b253
|
File details
Details for the file hatch_datavolo_nar-1.0.1-py3-none-any.whl.
File metadata
- Download URL: hatch_datavolo_nar-1.0.1-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f6ecf2261dbf9b3b89c8e3dd33108e0f5f353a9d506e31ac051ec1d8a756925
|
|
| MD5 |
7435cd35fd153fbcbefac43e8c3969e4
|
|
| BLAKE2b-256 |
88ddb449627271a78fbb4a0b3ddb397bc6772f39f0264ed93e248ab5211e97e0
|