hatch-build-scripts 0.0.4

Creator: bradpython12

Last updated:

Add to Cart

Description:

hatchbuildscripts 0.0.4

Hatch Build Scripts
A plugin for Hatch that allows you to run arbitrary
build scripts and include their artifacts in your package distributions.
Installation
To set up hatch-build-scripts for your project you'll need to configure it in your
project's pyproject.toml file as a build-system requirement:
[build-system]
requires = ["hatchling", "hatch-build-scripts"]
build-backend = "hatchling.build"

Usage
Now you'll need to configure the build scripts you want to run. This is done by adding
an array of scripts to the tool.hatch.build.hooks.build-scripts.scripts key in your
pyproject.toml file. Each script is configured with the following keys:



Key
Default
Description




commands
required
An array of commands to run. Each command is run in a separate shell.


artifacts
required
An array of artifact patterns (same as .gitignore) to include in your package distributions.


out_dir
"."
The directory to copy artifacts into.


work_dir
"."
The directory to run the commands in. All artifact patterns are relative to this directory.


clean_artifacts
true
Whether to clean files from the out_dir that match the artifact patterns before running the commands.


clean_out_dir
false
Whether to clean the out_dir before running the commands.



In practice this looks like:
[[tool.hatch.build.hooks.build-scripts.scripts]]
out_dir = "out"
commands = [
"echo 'Hello, world!' > hello.txt",
"echo 'Goodbye, world!' > goodbye.txt",
]
artifacts = [
"hello.txt",
"goodbye.txt",
]

[[tool.hatch.build.hooks.build-scripts.scripts]]
# you can add more scripts here...

You can configure script defaults for scripts by adding a [tool.hatch.build.hooks.build-scripts] table to your pyproject.toml file. The following keys are supported:



Key
Default
Description




out_dir
"."
The directory to copy artifacts into.


work_dir
"."
The directory to run the commands in. All artifact patterns are relative to this directory.


clean_artifacts
true
Whether to clean files from the out_dir that match the artifact patterns before running the commands.


clean_out_dir
false
Whether to clean the out_dir before running the commands.

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.