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.3.tar.gz
(9.9 kB
view details)
Built Distribution
feanor-1.2.3-py3-none-any.whl
(10.4 kB
view details)
File details
Details for the file feanor-1.2.3.tar.gz
.
File metadata
- Download URL: feanor-1.2.3.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 | 0f5c2e88b88f334191edd8e47deb2ebcf3ac7b5ffe685139db8d4f5ad6e0d03a |
|
MD5 | c4b079b2b45447b5041b8c2e0eeb6420 |
|
BLAKE2b-256 | 9e3b2102b708f32803c53df5b6a93faec90ce2cf950881d7351a7ba053187667 |
File details
Details for the file feanor-1.2.3-py3-none-any.whl
.
File metadata
- Download URL: feanor-1.2.3-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 | 580a497080ab6bb594213b933233431ada949c4a82227b1755cbe5e06edba645 |
|
MD5 | 3b0c91682c369ef82b4fc959ef2ba086 |
|
BLAKE2b-256 | 50cb3009f15516648563a80755757b52550615b0f652dec1b305a0fd323c72d9 |