Welcome to PWBS’s documentation!¶
PAiP Web Build System¶
Actual Version : v.0.5.0-dev2
PWBS is Build System for easy automation process.
- PyPi Package: https://pypi.org/project/pwbs/
Features¶
Current Features¶
- Single Tasks
- Task executes one command
- Multi Command Tasks
- Task executes multiple commands
Planned Features¶
- Multi Task
- Tasks that executes other tasks
- Watcher Task
- Task that executes command or task when something in watched path changes
- Scheduler Task
- Task that executes command or task every X time
- Server Mode Task
- Task that makes simple HTTP Server that listens for request and on request executes specified tasks or commands
- WebSocket Server Mode
- Mode that makes PWBS create WebSocket Server listenning tasks to execute
- Web Interface Server Mode
- Mode that makes HTTP Server that serves simple Web Interface for executing tasks through it
Credits¶
Created by Patryk Adamczyk
Changelog¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog with additional group for informations, and this project adheres to Semantic Versioning.
[0.5.0-dev2] - 2019-06-19¶
Informations¶
- Release 12 (pwbs 0.5.0.dev2)
- 0.5.0-dev1 was backed by wrong Changelog data
Added¶
- More info on Error Dumping to Sentry
Changed¶
- Relative Imports changed to absolute imports
[0.5.0-dev0] - 2019-05-16¶
Informations¶
Added¶
- Sentry Error Tracking
- Help on run without arguments
- PWBS Event Manager
- [Schema] PWBS Local Configuration File Schema Version v.0.4
Changed¶
- Changelog Format
- Absolute Imports
- Documentation Rephrase
Deprecated¶
- PWM (To change into internal functions or pwm as dependency)
Removed¶
- PWBS (Old version of PWBS runnning automation tasks for semantic versioning)
- Handling STDOUT of Commands
Fixed¶
- Code Style
[0.4.0-alpha0] - 2018-09-25¶
Informations¶
- Release 10 (pwbs 0.4.0a0)
- Release for blocking stable on Alpha Release
[0.4.0-dev0] - 2018-09-25¶
Informations¶
- Release 9 (pwbs 0.4.0.dev0)
- Complete Rewrite of PWBS
Added¶
- [PWBS Functionality] Single Tasking
- [PWBS Functionality] Multi Command Tasking
- CLI Argument Parsing using argparse
- PWBS Config Manager
- PWBS Logger
- [PWBS CLI] Special Command –verbose (Set Verbose Level [Possible: 0, 1, 2, 3, 255]
- [PWBS CLI] Special Commnad –debug (Turn on Debug Mode)
- [PWBS CLI] Special Command –version (Show version of PWBS)
- [PWBS CLI] Special Commnad –new-config (Generate new configuration file)
- [PWBS CLI] Special Command –log (Turning on logging to file)
- [PWBS CLI] Special Command –logfile (File to log onto)
- [PWBS CLI] Special Commnad –configfile (File to load as configuration file)
- [PWBS CLI] Special Command –test-mode (Special Test Mode (V: 255, Debug: on))
- [PWBS CLI] Special Command –run-tests (Run PWBS Testing Module)
- Tests for PWBS
- Loggers -> LoggerAssertionError
- Loggers -> Base Logger (Handling logging to console)
- Loggers -> Log Logger (Handling logging to file)
- Loggers -> Logger (Handling Logging to file and console)
- Config -> PWBSConfigFileDontExistError
- Config -> PWBSInvalidConfigFile
- Config -> Config Manager
- Config -> PWBS Config Manager
- Command -> Command Type Enum
- Command -> Command Platform Enum
- Command -> Command Mode Enum
- Command -> Command Class
- Command -> Commnad List Class [Command Collection]
- Full Documentation in RST using Sphinx
- [Schema] PWBS Local Configuration File Schema Version v.0.1
- [Schema] PWBS Local Configuration File Schema Version v.0.2
- [Schema] PWBS Local Configuration File Schema Version v.0.3
- [Schema] PWBS Local Configuration File Schema Version Working Draft
- Configuration to host documentation on ReadTheDocs
Changed¶
- Moved PWM to lib/pwm
Removed¶
- [PWBS Functionality] Multi Tasking
- Task Interpreter
- Special Commands Interpreter
- Commands Interpreter
- PWBS Utilities Functions
- Tests
- Documentation
[0.2.0-dev3] - 2017-12-20¶
Informations¶
- Not Released on PyPi (Eventually it’s not on in Release History)
Changed¶
- [PWM] Tests for PWM to check is Modules reads files correctly on whatever OS
Fixed¶
- File Path Errors (By base on Windows)
[0.2.0-dev1] - 2017-12-16¶
Informations¶
Added¶
- Task Interpreter
- Task Interpreter - Support for Single Tasks
- Command Interpreter -> Normal Task Interpreter
- [PWM] [pwm_exec] Execute Generator Function
[0.1.0-dev2] - 2017-12-16¶
Informations¶
Added¶
- [PWBS CLI] Special Command –new-config
- [PWBS CLI] Special Command –config <file>
- PWBS Config Manager for loading Configuration File
[0.1.0-dev1] - 2017-12-13¶
Informations¶
Added¶
- Documentation Base
- Test for PWBS Module
- [PWM] Tests for PAiP Web Modules
Fixed¶
- Package Description
[0.0.1-dev4] - 2017-12-12¶
Informations¶
Added¶
- AUTHORS File
- Contribution Guide
- Error List
- PWBS Command Interpreter
- [PWBS CLI] Special Command –help
- [PWBS CLI] Special Command –verbose <mode>
- Tox as Test Runner for Python Versions Testing
- Changed Python Required Minimum Version to Python 3.5
- Changed encoding to open files that are part of description to UTF-8
[0.0.1-dev3] - 2017-12-09¶
Informations¶
Added¶
- Full Baner with Debug Information in verbose modes [PWBS CLI]
- Description for Package on PyPi
- Basic Test for PWBS
[0.0.1-dev2] - 2017-12-09¶
Informations¶
- First Release on PyPi
- Release 1 (pwbs 0.0.1.dev2)
Changed¶
- README File
- Ready To Release Improvements
[0.0.1-dev1] - 2017-12-09¶
Informations¶
- PAiP Web Modules
- It’s was an idea as simple modules which act like little libraries for specific things
- From this version on PWM was little library writed in pwbs as internal dependency
Added¶
- Setup Configuration for Release to PyPi
- PyLint Configuration
- Coverage Configuration
- First Version of Changelog
- PAiP Web Modules
- PWM - Debug
- PWM - Execution
- PWM - JSON
- PWM - System Information
- PWM - Watcher
- Basic Baner in PWBS CLI
[0.0.0-dev4] - 2017-12-08¶
Added¶
- Tests for checking is Python working correctly
- Started working on base Python Module
[0.0.0-dev3] - 2017-12-08¶
Informations¶
- First Commit on GitLab Repository of PWBS Project
Added¶
- PAiP Web Build System Edition 1 - v.0.9.1.0
- GitLab Repository for Project
- Base requirements file
- Base version of PWBS is used for automation of development of new one
- Bumpversion Configuration for Semantic Versioning Tooling
- CI Python Script [For Continuos Testing in Local Development Environment[
Types of Contributions¶
Submit Feedback¶
The best way to send feedback is to file an issue at https://gitlab.com/paip-web/pwbs/issues .
Issue template is in another section of that document.
If you are proposing a feature explain in detail how it would work.
Write Documentation¶
PWBS (PAiP Web Build System) could always use more documentation and always can have better constructed documentation. Whether as part of official PWBS docs, in docstrings, or even on the web in blog posts, articles, and such.
If you find mistyped word then file an issue or change and submit merge request.
Report Bugs¶
Report bugs at https://gitlab.com/paip-web/pwbs/issues .
Issue template is in another section of that document.
If you are reporting a bug, please include:
- Your operating system name and version
- Any details about your local setup that might be helpful in troubleshooting.
- Detailed steps to reproduce bug.
Fix Bugs¶
Look through the GitLab issues for bugs. Anything tagged with “bug” is open to whoever wants to implement it.
Implement Features¶
Look through the Roadmap in documentation and check what wasn’t done. Everything what will be there is open to whoever wants to implement it.
Rules¶
Pull Request Guidelines¶
Before you submit a pull request, check that it meets these guidelines:
The pull request should include tests.
Add your changes to ChangeLogs
- docs/source/n_changelog.rst (Every even small change)
- HISTORY.rst (For every big change in functionality)
The pull request should work for Python >= 3.6 and be OS independent.
Tests¶
To run tests run any of these:
pytest
pwbs --run-tests
python -m pwbs --run-tests
If you make tests keep ordering don’t fillout missing numbers. Last Documented Test is 5? Then make test 6 not 4 because it’s missing number.
Templates¶
Feedback Issue Template¶
There where in this template is <Something> that means your data.
Issue
Title | Feedback: <Name or Nick>
Description | <Your Feedback and/or Your Feature Proposal>
Milestone | NEXT
Label | FEEDBACK
Bug Report Issue Template¶
There where in this template is <Something> that means your data.
Issue
Title | BUG: <Name of Bug>
Description | <Your Information about the bug>
Milestone | BUG
Label | BUG
Credits¶
Development Lead¶
- Patryk Adamczyk <patrykadamczyk@patrykadamczyk.net>
Contributors¶
- Mateusz Barański <mateusbaranski@gmail.com>