Git Extension for the TRAC Model Runtime
This extension allows the tracdap-runtime to load models dynamically from Git repositories.
- Includes a pure-Python implementation using the excellent dulwich library
- Includes a native Git implementation that wraps a Git binaries on the host system
- Support for private repositories using tokens
- Handles corporate firewalls, proxies and SSL
Installing
The HTTP extension can be installed with pip:
$ pip install tracdap-ext-git
The package has the following dependencies:
- tracdap-runtime (version 0.10.0-beta2 or later)
- dulwich (0.24.x series)
- urllib3 (version 2.2 or later)
Using the Git model repository
With the Git extension installed, you can add a Git model repository as a resource in sys_config.yaml like this:
resources:
my_repository:
resourceType: MODEL_REPOSITORY
protocol: git
properties:
repoUrl: https://github.com/a-user/my-repository
By default the extension will use the pure-python implementation of Git, to use native Git binaries set
nativeGit: true as a property on the repository. To supply credentials, use either the username and
password properties, or the token property. In production deployments these properties should be
supplied using the TRAC secrets mechanism.
Using the pure-Python implementation, all of the runtime's network properties are respected.
In particular, to supply an enterprise root trust certificate you can set
network.ssl.caCertificates to the path of a certificate in PEM format.
Setting network.ssl.publicCertificates: true will include the global, public CAs
in addition to the enterprise root.
All properties starting with the prefix git. are treated as Git configuration and
written into the Git config file for the repository when it is checked out. For example,
setting git.http.sslCAInfo will set the sslCAInfo property in the http section of the
Git configuration. This is an alternate way of specifying SSL details that works with the
native Git implementation, but can also be used to set arbitrary Git configuration values
with either implementation. Some Git config values may not be respected by Dulwich, so it
is recommended to use the runtime's config settings with the pure-Python implementation and
native Git config settings with the native Git implementation.
Release files for tracdap-ext-git 0.10.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tracdap_ext_git-0.10.1.tar.gz | 13.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tracdap_ext_git-0.10.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.4 kB
Release files / tracdap_ext_git-0.10.1.tar.gz
| Download URL | tracdap_ext_git-0.10.1.tar.gz |
|---|---|
| Size | 13.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0ead612dd398790e0261673f33fa76be5d8589d5743531c278298bd5698ca9e0
|
|
BLAKE2b-256 checksum How to use checksums |
8353400d747b4eebb1584b990be686acb43e7e2893e105ba61453920928b598f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 26, 2026.
Transparency logRelease files / tracdap_ext_git-0.10.1-py3-none-any.whl
| Download URL | tracdap_ext_git-0.10.1-py3-none-any.whl |
|---|---|
| Size | 12.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78edf4cf4114a71de2f7cbf2cf840edb67b0267cf16f4a8bd0f6e76c4e45bf49
|
|
BLAKE2b-256 checksum How to use checksums |
3b617c08b4f440b742383953b808281629fd80bcc1fa61734c6b40d128fc4383
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Aug 26, 2026.
Transparency log