Skip to main content

Plastron STOMP daemon

Project description

plastron-stomp

STOMP listener client for asynchronous and synchronous operations

Running with Python

As a Python module:

python -m plastron.stomp.daemon -c <config file>

Using the console script entrypoint:

plastrond-stomp -c <config file>

Integration Tests

See the integration test README for instructions on running the manual integration tests.

Docker Image

The plastron-stomp package contains a Dockerfile for building the plastrond-stomp Docker image.

Building

Important: This image MUST be built from the main plastron project directory, in order to include the other plastron packages in the build context.

docker build -t docker.lib.umd.edu/plastrond-stomp:latest \
    -f plastron-stomp/Dockerfile .

Running with Docker Swarm

This repository contains a compose.yml file that defines part of a plastrond Docker stack intended to be run alongside the umd-fcrepo-docker stack. This repository's configuration adds a plastrond-stomp container.

# if you are not already running in swarm mode
docker swarm init

# build the image
docker build -t docker.lib.umd.edu/plastrond-stomp:latest \
    -f plastron-stomp/Dockerfile .

# Create an "archelon_id" private/public key pair
# The Archelon instance should be configured with "archelon_id.pub" as the
# PLASTRON_PUBLIC_KEY
ssh-keygen -q -t rsa -N '' -f archelon_id

# Copy the docker-plastron-template.yml and edit the configuration
cp docker-plastron.template.yml docker-plastron.yml
vim docker-plastron.yml

# deploy the stack to run the STOMP application
docker stack deploy -c plastron-stomp/compose.yml plastrond

To watch the logs:

docker service logs -f plastrond_stomp

To stop the STOMP service:

docker service rm plastrond_stomp

Configuration

See docker-plastron.template.yml for an example of the config file.

STOMP Message Headers

The Plastron Daemon expects the following headers to be present in messages received on the JOBS destination:

  • PlastronCommand
  • PlastronJobId

Additional arguments for a command are sent in headers with the form PlastronArg-{name}. Many of these are specific to the command, but there is one with standard behavior across all commands:

Header Description
PlastronArg-on-behalf-of Username to delegate repository operations to

See the messages documentation for details on the headers and bodies of the messages the Plastron STOMP Daemon emits.

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

plastron_stomp-4.4.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

plastron_stomp-4.4.0-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file plastron_stomp-4.4.0.tar.gz.

File metadata

  • Download URL: plastron_stomp-4.4.0.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for plastron_stomp-4.4.0.tar.gz
Algorithm Hash digest
SHA256 6ed86ea8d5e4ae41cad1184452085419f51d342a9fe8869558eb44a5e650af8d
MD5 02127918dec3263ba6f830b75e2fef78
BLAKE2b-256 faa4069332212a6fe9e84dd8432278a2c4bc8432c2d20eaaa387d4d6540f202e

See more details on using hashes here.

File details

Details for the file plastron_stomp-4.4.0-py3-none-any.whl.

File metadata

  • Download URL: plastron_stomp-4.4.0-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for plastron_stomp-4.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18f1838349e77a4a1d7108d4f82345efe991bed7f4f5ecbddd0efbc97bda92f1
MD5 f41651fc105b96f9615ae9c450824200
BLAKE2b-256 5fa4523ff331204f94ebe97a1c214111e2727bb664d1d9c1dae9df1b9db833f1

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