No project description provided
Release facilitator for pop-projects.
Pop Release is a simple tool to automate the process of creating a release. When making POP software releases should be happening very quickly, every few commits should justify a release.
Since releases happen so frequently, and since they should be executed in an identical way from project to project, pop-release becomes a simple command to update the release locally and on pypi.
What is POP?
This project is built with pop, a Python-based implementation of Plugin Oriented Programming (POP). POP seeks to bring together concepts and wisdom from the history of computing in new ways to solve modern computing problems.
For more information:
- Python 3.6+
- git (if installing from source, or contributing to the project)
If wanting to contribute to the project, and setup your local development environment, see the CONTRIBUTING.rst document in the source repository for this project.
If wanting to use pop-release, you can do so by either installing from PyPI or from source.
Install from PyPI
If package is available via PyPI, include the directions.pip install pop-release
Install from source
# clone repo git clone email@example.com/saltstack/pop/pop-release.git cd pop-release # Setup venv python3 -m venv .venv source .venv/bin/activate pip install -e .
pop-release can be run several ways. The traditional method uses a ~/.pypirc config file. The most powerful and versatile method is to use idem/acct’s authentication.
Set up a file called “.pypirc” in your home directory. Your username will be “__token__” and your password will be an API token With this method you can’t choose between the configured profiles.
[distutils] index-servers= pypi [pypi] repository = https://upload.pypi.org/legacy/ username = __token__ password = pypi-<pypi_api_token>
With your credentials set up, you can simply run the pop-release command in the root of the directory that contains your source code. The only argument you need is a semantic version number.
Using the acct plugin, we can have multiple named profiles. The “default” and “testing” examples below show the bare minimum of configuration required. Any options that can be used by a twine.settings.Settings object can be included in a twine acct profile.
twine: default: username: __token__ password: pypi-api-auth-token repository_name: pypi repository_url: https://upload.pypi.org/legacy/ testing: username: __token__ password: pypi-testing-api-auth-token repository_name: testpypi repository_url: https://test.pypi.org/legacy/ internal: sign: True sign_with: gpg identity: username: __token__ password: pypi-internal-api-auth-token comment: My project's private repository config_file: ~/.pypirc skip_existing: False cacert: client_cert: repository_name: internal_pypi repository_url: https://pypi.<my_domain>.com/api
Now encrypt your credentials with acct
acct encrypt credentials.yaml
If this is the first time you used the command, it will output a fernet key. Save this key to the environment:
There will also be a new file created called <credentials_file_name>.fernet. Save the full path to this file to your environment:
Now you can run pop-release using your encrypted credentials. The profile called “default” will be used implicitly. You can choose a profile for running pop-release by using the –acct-profile option.
PyPi release using the default profile:
PyPi testing release:
pop-release 2.0.0 --acct-profile=testing
- Img Shields for making repository badges easy.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size pop_release-12.0.1-py3-none-any.whl (15.7 kB)||File type Wheel||Python version py3||Upload date||Hashes View|
|Filename, size pop-release-12.0.1.tar.gz (14.2 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for pop_release-12.0.1-py3-none-any.whl