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
feanor-1.0.7.tar.gz
(10.0 kB
view details)
Built Distribution
feanor-1.0.7-py3-none-any.whl
(10.8 kB
view details)
File details
Details for the file feanor-1.0.7.tar.gz
.
File metadata
- Download URL: feanor-1.0.7.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4898d14d7ad4706af7ebb76bf57553765eb3f51c923777cdb521d3a0b353bde1 |
|
MD5 | 882148ae9258615a17d9e52617f73c32 |
|
BLAKE2b-256 | e94e97f09251abc35ce3a0ba8f5dff0124118cfa9cc524b82bf1fac76d7ab8bc |
File details
Details for the file feanor-1.0.7-py3-none-any.whl
.
File metadata
- Download URL: feanor-1.0.7-py3-none-any.whl
- Upload date:
- Size: 10.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63ee2e2e9b1ce3182c4c35b1f32c2028561b7a57dc27ea89d433748385e33171 |
|
MD5 | 1e9c07cb2d9b4a9c729265bc7aa9b91d |
|
BLAKE2b-256 | 6f89223d8e14b0d3a2e8af2cff8a5bdad11a960a22be41a39466d8d5e7c4ce72 |