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.2.1.tar.gz
(9.9 kB
view details)
Built Distribution
feanor-1.2.1-py3-none-any.whl
(10.4 kB
view details)
File details
Details for the file feanor-1.2.1.tar.gz
.
File metadata
- Download URL: feanor-1.2.1.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 | 8b41489889fee5abfabb246f57f9eeae894e0b888528f60462857237357757d5 |
|
MD5 | bc1ddeab5047e9efaeac7829857a5d19 |
|
BLAKE2b-256 | 9e4a39547902c611097f7584f453c128cfd63d96cbee715762de0bf4a2fdcfe1 |
File details
Details for the file feanor-1.2.1-py3-none-any.whl
.
File metadata
- Download URL: feanor-1.2.1-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 | ca446c72ab171ad4a4e44d63da01ce1fb117d50b2c3a7c602d624ef0b99a29e3 |
|
MD5 | f67581809942e665bfa4ee61cb9cb240 |
|
BLAKE2b-256 | 8ab0e578a6a33ed36937591c307b6be16bbf81393d3a5f17b84239f88a2892ed |