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.9.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.9.0-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mapchete_hub_cli-2025.9.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.9.0.tar.gz
Algorithm Hash digest
SHA256 9cbb7693d736d2d59b8de9dde7c35bf06ad4acbdaf6629fa678653c0ee5ce003
MD5 5c88061c8b631f1518483d02cd0488ae
BLAKE2b-256 443821e9c6bc45aeb7b77d46d8e03aa19bea9082316f956e7f3be9f1d1ece38e

See more details on using hashes here.

File details

Details for the file mapchete_hub_cli-2025.9.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mapchete_hub_cli-2025.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f830be14347d6c64d89c589ca8aede63d5cff555156788e9353016aab74a6db
MD5 fa267a8dce5015265d4ccd1e8cb7fd17
BLAKE2b-256 2072f4039f07333426b9a38847850f2b62d002791b4f6758c7dd619ba0833bb8

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