Skip to main content

Easily post good looking slack messages about your operations

Project description

SlackOps

Post process information to the slack without clogging up the channel with a bunch of messages. Easily update status, see when operation started / finished and how much time it took.

PyPI version

Installation

$ pip install slackops

Table of contents

Basic usage

import slackops

slack = slackops.Operation(token=SLACK_BOT_TOKEN, channel=CHANNEL_NAME)

slack.start("Application update", "Backup")

1. Start

slack.update("2. Updating application")

2. Updating application"

slack.update("3. Healthchecks")

3. Healthchecks

slack.finish("4. Application successfully updated!")

4. Application successfully updated!

Operation statuses also posted to thread:

Thread messages

Simple message

Note: any formatting you see in 'Message' template (header, text, context), can also be used with 'Operation' template you seen before.

slack = slackops.Message(token=SLACK_BOT_TOKEN, channel=CHANNEL_NAME)

slack.post(
    text="Example message",
    severity="error", # info | success | warning | error
    header="Header",
    context=["from ip: 192.162.1.1"],
)

message

Formatting. Default and persistent values

You can set default values:

slack.tmpl.default.set(context=["default context - from ip: 192.162.1.1"])
slack.tmpl.default.set(severity="success")

slack.post("If no value is passed, the default value will be used (if available).")

default values

And persistent values:

slack.tmpl.persistent.set(header="API event: ")
slack.tmpl.persistent.set(text="*Details:*\n")

slack.post("username: haru\n ", header="new user!")

persistent values

AWS Lambda

To use 'Operation' template beetwen different lamdas, you can do following:

  1. Export in first lambda:
packed_operation = slack.pack()
  1. And import in second lambda:
slack = slackops.Operation(packed_operation=packed_operation)

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

slackops-0.1.7.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

slackops-0.1.7-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file slackops-0.1.7.tar.gz.

File metadata

  • Download URL: slackops-0.1.7.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.9.16 Linux/5.15.0-1033-azure

File hashes

Hashes for slackops-0.1.7.tar.gz
Algorithm Hash digest
SHA256 bf148bcebb3174c0b78bfa2fd733cf5c1902b554852802d180755675d41b0239
MD5 d54232f8646083a181a51363894d6f73
BLAKE2b-256 a6a6e7091cf8aa4e2c425cd2f931496b09f3073b240657953af672ba52eb5dfe

See more details on using hashes here.

File details

Details for the file slackops-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: slackops-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.9.16 Linux/5.15.0-1033-azure

File hashes

Hashes for slackops-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d5cde807312a87976f4564361ddae825f746c2d11236f879cc9b36cfe1ab4f8e
MD5 27a39fd88bb5409692d035a223926948
BLAKE2b-256 fddebe3af75b30b6754d25c1934dd258b8e48629ecb506bdcfced12bcac99284

See more details on using hashes here.

Supported by

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