util functions for software life cycle enforcement on github
Project description
PDS utility function for github
Enforces the PDS engineering node software lifecycle:
- releases
Prerequisites
libxml2 is used. It needs to be deployed as follow:
Macos
brew install libxml2
cd ./venv/lib/python3.7/site-packages/ # chose the site package of the used python
ln -s /usr/local/Cellar/libxml2/2.9.10/lib/python3.7/site-packages/* .
Ubuntu
sudo apt-get update && sudo apt-get install libxml2-dev libxslt-dev python-dev
pip install lxml
deploy and run
Deploy:
pip install pds-gihub-util
Some environment variable need to be set (they are defined by default in github action but need to be set manually otherwise)
export GITHUB_WORKSPACE=<where the repository which we want to publish a snapshot is cloned>
export GITHUB_REPOSITORY=<full name of the repository which we want to publish for example NASA-PDS-Incubator/pds-app-registry>
Get command arguments:
maven-snapshot-release --help
python-snapshot-release --help
requirement-report --help
Development
git clone ...
cd pds-github-util
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
Update the code
Test the code:
export GITHUB_TOKEN=<personal access token for github>
python setup.py test
Create package and publish it:
Set the version in setup.py
Tag the code
git tag <version>
git push origin --tags
The package will be published to pypi automatically though github action.
Manually publish the package
Create the package:
python setup.py sdist
Publish it as a github release.
Publish on pypi (you need a pypi account):
pip install twine
twine upload dist/*
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
pds_github_util-0.3.1.tar.gz
(7.5 kB
view hashes)
Built Distribution
Close
Hashes for pds_github_util-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7520aad6ec9f68160371341ce93f8678a4f9f2506ef1b88a3760e7a9866a08b |
|
MD5 | f30a27dafb6b462ecbe6df898c2a94ed |
|
BLAKE2b-256 | 2a7afe0cd4f5aa276a21049092f3ba9d18f658fdc06f592455f9785acd230ef5 |