Digital Marketplace developer tools
Common developer tooling for Digital Marketplace repos.
Quickstart
Install the digitalmarketplace-developer-tools package from PyPI and run Invoke in a Digital Marketplace repo to see what tasks are available:
$ pip install digitalmarketplace-developer-tools
$ invoke --list
Stuff in this repo
Invoke tasks
Developers on the Digital Marketplace need to be able to easily set-up a developer environment for a repo, so they can quickly start making changes to the code.
Traditionally this need has been met with make, however on the Digital
Marketplace we are starting to use Invoke instead.
Invoke lets us write tasks once and use them for multiple repos. Being written in Python, we can create a library of tasks and publish them on PyPI for reuse. The package for this repo includes these tasks.
To start using the tasks in a repo, add a tasks.py file and import the
collection of tasks appropriate for the repo. For instance, for a frontend app:
# tasks.py
from dmdevtools.invoke_tasks import frontend_app_tasks as ns
The as ns part is needed so that the invoke command line tool sees the
imported tasks, read the Invoke documentation on collections and
namespaces for more details on how this works.
For backwards-compatibility, make can still be used for a repo. Just copy the
Makefile from this repo (or just the % goal), and any
unrecognised goals will be sent to invoke.
Pre-commit hooks
This project has a pre-commit hook to do some general file checks and check the pyproject.toml.
Follow the Quick start to see how to set this up in your local checkout of this project.
Licence
Unless stated otherwise this codebase is released under the MIT License. This covers both the codebase and any sample code in the documentation.
The documentation is © Crown copyright and available under the terms of the Open Government 3.0 licence.
Metadata
Release files for digitalmarketplace-developer-tools 2.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| digitalmarketplace_developer_tools-2.0.0.tar.gz | 6.1 kB | Without provenance | Details for digitalmarketplace_developer_tools-2.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| digitalmarketplace_developer_tools-2.0.0-py3-none-any.whl | Python 3 | none | any | Details for digitalmarketplace_developer_tools-2.0.0-py3-none-any.whl |
Total release size: 12.5 kB
Release files / digitalmarketplace_developer_tools-2.0.0.tar.gz
| Download URL | digitalmarketplace_developer_tools-2.0.0.tar.gz |
|---|---|
| Size | 6.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e6a98864b3f51593347ce2f65b30ff79c217d94a70eeb061cc3ad3ab1d17babf
|
|
BLAKE2b-256 checksum How to use checksums |
49c6ce3ea0d5a2b29d7843a3e577167899577862a82570a75119ed23efd22ee9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / digitalmarketplace_developer_tools-2.0.0-py3-none-any.whl
| Download URL | digitalmarketplace_developer_tools-2.0.0-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08419a7eedb9d859c20c7d1b2433aca1e3aac8f5fc02611c80a9f330fcbcb9b5
|
|
BLAKE2b-256 checksum How to use checksums |
d4e8d5829ee58dfb3e3949afbbe1b6dd57d2da1e170ec0de3ead3d84b2cc7114
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Security for digitalmarketplace-developer-tools 2.0.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.