Skip to main content

jbussdieker-service

A modern Python development toolkit plugin for managing systemd services. This plugin integrates with the jbussdieker CLI framework to provide easy systemd service installation and management capabilities.

🚀 Features

  • Systemd Service Installation: Automatically creates and configures systemd service files
  • Service Management: Provides commands to install and manage jbussdieker services
  • CLI Integration: Seamlessly integrates with the jbussdieker CLI framework
  • Automatic Restart: Configures automatic restart on failure with configurable intervals
  • Logging Integration: Proper logging configuration with journald integration
  • User Management: Configures proper user and group permissions

📦 Installation

pip install jbussdieker-service --upgrade

🔧 Prerequisites

  • Python 3.9 or higher
  • Linux system with systemd
  • jbussdieker CLI framework installed
  • Appropriate user permissions for systemd service management

🎯 Usage

Install Systemd Service

Install the jbussdieker service as a systemd service:

jbussdieker service install

This command will:

  • Create a systemd service file at /etc/systemd/system/jbussdieker.service
  • Configure the service with proper restart policies
  • Set up logging to journald
  • Configure user and group permissions

Start the Service

After installation, you can manage the service using standard systemd commands:

# Start the service
sudo systemctl start jbussdieker

# Enable the service to start on boot
sudo systemctl enable jbussdieker

# Check service status
sudo systemctl status jbussdieker

# View service logs
sudo journalctl -u jbussdieker -f

🔍 How It Works

  1. Service Installation: Creates a systemd service file with proper configuration
  2. Service Configuration: Sets up restart policies, logging, and user permissions
  3. Integration: Integrates with the jbussdieker CLI framework for seamless operation
  4. Monitoring: Provides continuous service operation with proper logging

🛠️ Development

This plugin is part of the jbussdieker ecosystem. It integrates seamlessly with the jbussdieker CLI framework.

Project Structure

src/jbussdieker/service/
├── __init__.py
└── cli.py          # CLI interface and service management

Service Configuration

The plugin creates a systemd service with the following configuration:

  • Type: Simple service
  • Restart Policy: Restart on failure with 5-second intervals
  • User: jbussdieker
  • Group: jbussdieker
  • Working Directory: /tmp
  • Logging: Integrated with systemd journal

📝 License

This project is licensed under MIT.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📚 Related

Metadata

Release files for jbussdieker-service 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jbussdieker-service 0.5.1
File Size Uploaded
jbussdieker_service-0.5.1.tar.gz 8.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jbussdieker-service 0.5.1
File Interpreter ABI Platform
jbussdieker_service-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.8 kB

Release files / jbussdieker_service-0.5.1.tar.gz

Download URL jbussdieker_service-0.5.1.tar.gz
Size 8.1 kB
Tags Source
SHA-256 checksum
How to use checksums
601ae8ed4e7c6b013c34d449dda729657b35b63e02ea0f0953670ab068a1dd7b
BLAKE2b-256 checksum
How to use checksums
29fdbe2d77933aa1d1600f0666098ebc9e25c221a42486d32856a03bbd627740
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / jbussdieker_service-0.5.1-py3-none-any.whl

Download URL jbussdieker_service-0.5.1-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c4a70f490ef211865ddaa73d255c53eeba9c928092dadc6128e99322bdcdd541
BLAKE2b-256 checksum
How to use checksums
acab098155f0786f3447b81ff5e9c62f26a93e78a3735997db5e9a217c5a2c33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.11

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.1.0

1 release file

0.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page