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.5.1.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.5.1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: plastron_stomp-4.5.1.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.5.1.tar.gz
Algorithm Hash digest
SHA256 86ed82d647fd23c2a569fd135974c865734d9980d930e8969ad454cde228cb8c
MD5 89e34b5ea3c343f591e24bd06b368110
BLAKE2b-256 9dbb196247515ed96c26789a86f0f4e295471fd4985573cc2286d92dd4b0138f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: plastron_stomp-4.5.1-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.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6edefcd35678f816f84d4582ffba3da758b73fb19d7d815f50f96cd663e4b78f
MD5 c6403830d7201d747169704b909dfae7
BLAKE2b-256 bcd838aaa571c37f1aa212f9bf6364f1515664d38f228e47811fb943621079f6

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