In Steinwurf we have a few general tasks that every developer in Steinwurf needs to carry out once in a while.
For example, Releasing a new version of a project.
Steinwurf Tasker is the tool for automating such tasks.
Installation
Install the steinwurf-tasker tool using pip:
python -m pip install steinwurf-tasker
Alternatively you can also use pipx for the installation (this works in ubuntu 23.04):
pipx install steinwurf-tasker
Setup config
Create a file in your home folder called .steinwurf-tasker.yaml.
Add the following content and modify the values to the
editor: code
resolve_path: /home/username/projects/dependencies
project_paths:
- /home/username/projects/
release_email:
host: smtp.emailhost.com
port: 587
sender: release_email@email.com
password: release_email_password
receiver: release_email_receiver@email.com
tailscale:
api_key: tskey-123456789
url: <tailscale api URL, something like: https://api.tailscale.com/api/v2/tailnet/{user}>
credentials:
user: common_account_name
password: common_account_password
Usage
You’ll now be able to use the sw command line tool. The following will list the available sw commands:
sw -l
You can also release a project without a config file by passing the project path directly:
sw project.release myproject --project-path /home/username/projects
Update
To update Steinwurf Tasker use pip:
python -m pip install steinwurf-tasker
Please make sure to also extend the config file with required information.
Development
When developing a new feature for Steinwurf Tasker it can be nice to install the local version in editable mode. This can done using the following command:
cd steinwurf-tasker python3 -m pip install -e .
To revert this and use the pip package use this command:
cd steinwurf-tasker python3 -m pip uninstall steinwurf-tasker python -m pip install steinwurf-tasker
Release
PyPI releases for this repository are published through the GitHub Actions workflow .github/workflows/pypi-publish.yml.
The workflow runs when a *.*.* tag is pushed, and it can also be started manually from the Actions tab using workflow_dispatch.
Release files for steinwurf-tasker 3.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| steinwurf_tasker-3.0.6.tar.gz | 14.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| steinwurf_tasker-3.0.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 30.4 kB
Release files / steinwurf_tasker-3.0.6.tar.gz
| Download URL | steinwurf_tasker-3.0.6.tar.gz |
|---|---|
| Size | 14.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2ad063f5538c389870bfc605bf768815c8d401633af880bca6d62e78e49bd255
|
|
BLAKE2b-256 checksum How to use checksums |
9ec165a2e9674b5f5af578fcd06f831d287a2a01d7f5217cd6dbc8a5c50ec020
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency logRelease files / steinwurf_tasker-3.0.6-py3-none-any.whl
| Download URL | steinwurf_tasker-3.0.6-py3-none-any.whl |
|---|---|
| Size | 16.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1906974ab6e34221dda6827edb059cd5878f70648608091fba2cc4143070b50a
|
|
BLAKE2b-256 checksum How to use checksums |
1ff913dea7ed79b61611621ad07bff7b88159d4d1371b4c814ca71818de2c241
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency log