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.1.1.tar.gz
(9.6 kB
view details)
Built Distribution
feanor-1.1.1-py3-none-any.whl
(10.0 kB
view details)
File details
Details for the file feanor-1.1.1.tar.gz
.
File metadata
- Download URL: feanor-1.1.1.tar.gz
- Upload date:
- Size: 9.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5f763e416920fbffe5190e4f0172626651e495eb910daec190a157a474f904d |
|
MD5 | 3ba7da75aa1ee1573eee3fc6b421d00b |
|
BLAKE2b-256 | fc4fb32ed485a09e660ae3a3f1c2ab04d078ca82c227826e64d28bb25a9e644a |
File details
Details for the file feanor-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: feanor-1.1.1-py3-none-any.whl
- Upload date:
- Size: 10.0 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 | dc53e02b0551a884c09426a9bf356df174c49e823bf5d0f709a55f21ea024644 |
|
MD5 | d07701908db7b77944d48512f54b354d |
|
BLAKE2b-256 | c524fe1a36304d5ea056730e116bbf2ff99c72ed8427c0f1da4aea41513ed821 |