Dockflow CLI
This package requires docker to be installed and running on your machine.
Getting started
-
Install dockflow:
pip install dockflow -
Authenticate docker to pull from private GCR repository:
2.1. First make sure that yourgcloudis authenticated usinggcloud auth application-default login --impersonate-service-account=<service-account>.
2.2. Ensure you are in the correct project usinggcloud config set project <project name>
2.3. Usegcloud auth configure-docker <location>-docker.pkg.devto configure gcloud as the credential helper for the Artifact Registry domain associated with your repository’s location. For example,gcloud auth configure-docker europe-west1-docker.pkg.dev.
Quickstart
- Ensure that your docker file sharing settings allows access to your development directory.
- Navigate to the root directory of your
dagsfolder. - Use
dockflow configand enter your container repo url excluding the version.- This will save the url in a config file.
- Eg.
<location>-docker.<domain>/<project-id>/<repo-id>/<image> - If you get permission errors, Ensure that you have artifact reader permission on this registry.
- This should only be used if the container repo changes.
- If the image version tag is not
composer-2.9.8-airflow-2.9.3specify the tag usingdockflow start -iv <version>. Alternatively, use the--check-imagesflag to list the available images at the provided container repo. - Use
dockflow start(This will mount the dag folder and start Airflow). - Use the UI to add connections.
- Admin -> Connections -> Create
- If you need to connect to a GCP resource, provide values for the following fields:
- Project Id, e.g.
research-se-de - Credential configuration file, located at
/usr/local/airflow/gcp_credentials.json - Impersonation chain, e.g.
local-file-ingestor@research-se-de.iam.gserviceaccount.com
- Project Id, e.g.
- Use
dockflow refreshto refresh the configs cache or to bundle configs. - Remember to use
dockflow stopto shut down the instance to save local machine resources.- The state will be persisted in the same directory as the
dagsfolder.
- The state will be persisted in the same directory as the
- To stop and remove the container use
dockflow stop --rm
CloudSQL Proxy
docker run -d \
-v <PATH_TO_KEY_FILE>:/config \
-p 127.0.0.1:5432:5432 \
--network='dockflow' \
--name='cloudsql' \
gcr.io/cloudsql-docker/gce-proxy:1.17 /cloud_sql_proxy \
-instances=<INSTANCE_CONNECTION_NAME>=tcp:0.0.0.0:5432 -credential_file=/config
Metadata
Release files for dockflow 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 |
|---|---|---|---|---|
| dockflow-2.0.0.tar.gz | 12.7 kB | Without provenance | Details for dockflow-2.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dockflow-2.0.0-py3-none-any.whl | Python 3 | none | any | Details for dockflow-2.0.0-py3-none-any.whl |
Total release size: 24.8 kB
Release files / dockflow-2.0.0.tar.gz
| Download URL | dockflow-2.0.0.tar.gz |
|---|---|
| Size | 12.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
30c1bbe4573fe68733853d2b21fdc42b01f44130b68b7f1967a15ab155d4f04a
|
|
BLAKE2b-256 checksum How to use checksums |
285909317ebc756bbeed3ac75056b4e9b6bc3047504125a45fa1d4a2caa0cf74
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.20
|
Release files / dockflow-2.0.0-py3-none-any.whl
| Download URL | dockflow-2.0.0-py3-none-any.whl |
|---|---|
| Size | 12.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
274555d1ff08e8c4d3b21ff81eb55b56d03b02f197ef7bd888e1c6536c4609f2
|
|
BLAKE2b-256 checksum How to use checksums |
9fa91e1f29e8c303e2c65d0ba999753fce2fcb32245973e8e7f36c8bc838cd74
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.20
|
Security for dockflow 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.