Skip to main content

CLI and Python bindings to mapchete Hub API.

Project description

mapchete Hub CLI

A command line interface for mapchete Hub.

https://img.shields.io/pypi/v/mapchete-hub-cli.svg https://img.shields.io/pypi/l/mapchete-hub-cli.svg https://img.shields.io/github/actions/workflow/status/mapchete/mapchete-hub-cli/python-package.yml?label=tests https://codecov.io/gh/mapchete/mapchete-hub-cli/graph/badge.svg?token=P1NV2UFVWK https://img.shields.io/github/repo-size/mapchete/mapchete-hub-cli

About mapchete Hub CLI

The mapchete Hub CLI provides a user-friendly command line interface (mhub) to interact with a running mapchete Hub instance. It simplifies the process of submitting, monitoring, and managing processing jobs without needing to write custom scripts or use tools like curl.

This CLI is the recommended tool for users who want to script workflows or manage mapchete Hub jobs from their terminal.

Key Features

  • 💻 Full Job Lifecycle Management: Intuitive commands to execute, job (status), jobs (list), cancel, and retry processing jobs.

  • ⚙️ Inspection: List available processes on a remote mapchete Hub and check remote package --remote-versions.

  • 🔒 Authentication Support: Handles basic authentication via command line options (-u, -p) or environment variables.

  • 🤖 Script-Friendly: Designed for easy integration into automated scripts and workflows.

Installation

Install the CLI and its dependencies from PyPI:

pip install mapchete-hub-cli

Quickstart

1. Point to your mapchete Hub

All commands require you to specify the mapchete Hub’s URL using the -h or --host option. If the mapchete Hub is running on the same machine with default settings (0.0.0.0:5000), you may not need this option.

2. List Available Processes

You can see what processes are available on the target mapchete Hub instance:

mhub -h 0.0.0.0:5000 processes

3. Prepare a mapchete File

Create a mapchete process file using YAML syntax. Note that all input and output paths must be absolute, as they are resolved on the remote server.

For example, hillshade.mapchete:

process: mapchete.processes.examples.hillshade
zoom_levels:
  - 10
pyramid:
  grid: geodetic
input:
  dem: https://data.example.com/path/to/dem.tif
output:
  path: s3://my-bucket/path/to/hillshade_output
  format: GTiff

4. Execute the Process

Use the execute command to send the job to the mapchete Hub.

mhub -h 0.0.0.0:5000 execute hillshade.mapchete

The mapchete Hub will return a unique job_id:

6227b68b-b7e6-4f40-a396-85763197f481

5. Check Job Status and Progress

Use the job_id with the job command to get a detailed status report, or progress for a quick look at the progress percentage.

# Get detailed status
mhub -h 0.0.0.0:5000 job 6227b68b-b7e6-4f40-a396-85763197f481

# Get just the progress
mhub -h 0.0.0.0:5000 progress 6227b68b-b7e6-4f40-a396-85763197f481

6. Manage Jobs

You can also list all jobs or cancel a running job:

# List all jobs on the mapchete Hub
mhub -h 0.0.0.0:5000 jobs

# Cancel a specific job
mhub -h 0.0.0.0:5000 cancel 6227b68b-b7e6-4f40-a396-85763197f481

Contributing

This is an open-source project and we welcome contributions! Please see the Contributing Guide in the main mapchete repository for guidelines on how to get started.

Acknowledgements

The initial development of this project was made possible with the resources and support of EOX IT Services GmbH.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mapchete_hub_cli-2025.8.0.tar.gz (20.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mapchete_hub_cli-2025.8.0-py2.py3-none-any.whl (29.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file mapchete_hub_cli-2025.8.0.tar.gz.

File metadata

  • Download URL: mapchete_hub_cli-2025.8.0.tar.gz
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for mapchete_hub_cli-2025.8.0.tar.gz
Algorithm Hash digest
SHA256 88ae27ae2bf324e982bbc684c840457c2382e03f93f8d8584bea173b2d778699
MD5 0c98427d99d83ad334f8424c8b37be86
BLAKE2b-256 b66d4ecd749d9dbb4de5b8dda34fa4ab0343ce842733375dc4d680526496d104

See more details on using hashes here.

File details

Details for the file mapchete_hub_cli-2025.8.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for mapchete_hub_cli-2025.8.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 fbf196db96e9f2f2816d10720301a8d18050a7a06b16dcc24c7f8def2625f5dd
MD5 d0c3e4b779046518af1926522f89e729
BLAKE2b-256 7668f5b4ed12b562c389b940771e279d4ccd1a3ee2b5d784610eb331f5551c50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page