Python script for simplify automatic build, tests, publish and deploy of projects.
Project description
Fëanor
Description
Python script for simplify automatic build, tests, publish and deploy of projects.
- only one file to create
- based on python classes
- easy to use
- compatible with any language
- usable in CI/CD pipelines
- clear logs for debugging
- build from a temporary directory, so the source code is not modified
- fully support python virtual environments, useful for python projects
- can process custom arguments, for set up a conditional build for example
- choose the files you want to export from the build
Usage
create a file named pack.py
in the root of your project with the following content:
from feanor import BaseBuilder
class Builder(BaseBuilder):
def Setup(self):
pass
def Tests(self):
pass
def Docs(self):
pass
def Build(self):
pass
def BuildTests(self):
pass
def Publish(self):
pass
You can rename the
Builder
class to any name you want.
You can rename the file to any name you want.
Remove the methods that you don't need (
Setup
andBuild
are the only required methods).
run the script with:
python pack.py
Options
use python pack.py --help
to see the available options:
-h, --help show this help message and exit
--debug Enable debug messages
--deep-debug Enable deep debug messages
--version, -v show program's version number and exit
Builder options:
--no-tests Do not run tests
--no-docs Do not generate documentation
--publish Publish the package
--no-clean Do not clean temporary files
--dist-dir DIST_DIR Distribution directory (where to save the built files)
-pv PACKAGE_VERSION, --package-version PACKAGE_VERSION
set the version of the package you want to build
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
Built Distribution
File details
Details for the file feanor-1.2.5.tar.gz
.
File metadata
- Download URL: feanor-1.2.5.tar.gz
- Upload date:
- Size: 9.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6721c713f42b7b943936b6a97a52dde01fa26bf04ed37b93615f27c70ca0814b |
|
MD5 | 2868bf362b75b54467772fe5b434bb82 |
|
BLAKE2b-256 | 0ba88c66a4832034b83b598865fba3a64e0a0472777962667c00d7966ff4e08f |
Provenance
The following attestation bundles were made for feanor-1.2.5.tar.gz
:
Publisher:
OnRelease.yml
on T0ine34/feanor
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
feanor-1.2.5.tar.gz
- Subject digest:
6721c713f42b7b943936b6a97a52dde01fa26bf04ed37b93615f27c70ca0814b
- Sigstore transparency entry: 146084110
- Sigstore integration time:
- Predicate type:
File details
Details for the file feanor-1.2.5-py3-none-any.whl
.
File metadata
- Download URL: feanor-1.2.5-py3-none-any.whl
- Upload date:
- Size: 10.4 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 | 2ff26085b73465686c7ca90eeeb439d045cd34a4ac366feb0f391a50813c5caf |
|
MD5 | 1f5a4ae6d77958e867fd559b3de99019 |
|
BLAKE2b-256 | 45ae4345880d271a4052b2a3d0ef84f653c0f8b1e755c89209d4b58b3cd75aaf |
Provenance
The following attestation bundles were made for feanor-1.2.5-py3-none-any.whl
:
Publisher:
OnRelease.yml
on T0ine34/feanor
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
feanor-1.2.5-py3-none-any.whl
- Subject digest:
2ff26085b73465686c7ca90eeeb439d045cd34a4ac366feb0f391a50813c5caf
- Sigstore transparency entry: 146084111
- Sigstore integration time:
- Predicate type: