Skip to main content

A Slack bot that understands the Emojirades game!

Project description

emojirades

Slack bot that understands the emojirades game and handles score keeping

Build Status PyPI version

Installation Guide

# Preferably run on a virtualenv

Install the dependencies

pip3 install -r requirements.txt --upgrade

Install the module ( For Dev )

cd emojirades
pip3 install -e .

Run the tests

pip3 install -r test_requirements.txt --upgrade
pycodestyle
pytest

Set environment variables

Register your bot on slack, or pass me your email so I can add you to my Dev Slack workspace

export SLACK_BOT_TOKEN='xoxb-*******'

Optionally if you are saving data into S3, you might need to set the profile to use

export AWS_PROFILE='dev-profile'

Run the daemon

emojirades --score-file scores.csv --state-file state.json -vv

Service configuration

cp emojirades.service /etc/systemd/system/
sudo chmod 0664 /etc/systemd/system/emojirades.service

# Edit the /etc/systemd/system/emojirades.service file and update the user and group

cp emojirades.config /etc/emojirades
sudo chmod 0400 /etc/emojirades

# Edit the /etc/emojirades config file with your configuration for the bot

sudo systemctl daemon-reload
sudo systemctl enable emojirades
sudo systemctl start emojirades

Release process (for master branch)

  1. Create release branch containing new version in setup.py and Dockerfile
  2. Perform a PR into master
  3. Perform release in GitHub
  4. TravisCI will automatically build and deploy on a tagged commit into master (the release does this)

Dealing with Containers

Currently this repo is set to auto build Docker images and deploy to Dockerhub on each tagged commit to master

Building the Container Image

docker build --pull --no-cache -t michaelrobbins/emojirades:X.Y.Z -t michaelrobbins/emojirades:latest .

Running the Container

docker run -d \
  --name emojirades \
  --restart=always \
  -v "/path/to/your/.aws/:/root/.aws/:ro" \
  -e "AWS_PROFILE=emojirades" \
  -e "SLACK_BOT_TOKEN=xoxb-111111111111-222222222222222222222222" \
  michaelrobbins/emojirades:X.Y.Z \
    --score-file /path/to/scores.json \
    --state-file /path/to/state.json \
    -vv

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

Emojirades-0.10.3.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

Emojirades-0.10.3-py3-none-any.whl (40.6 kB view details)

Uploaded Python 3

File details

Details for the file Emojirades-0.10.3.tar.gz.

File metadata

  • Download URL: Emojirades-0.10.3.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.1

File hashes

Hashes for Emojirades-0.10.3.tar.gz
Algorithm Hash digest
SHA256 49a1a88ece51dd5fb97209e40962ab9d3bc043eaadb67b88ebc5e710a05e27f7
MD5 08e778ef95d6194be34616c63fbfa2f5
BLAKE2b-256 af4b7e2f6d3530df9385c86e89abe69d6feceeead9bfd72ede0ab6416c940765

See more details on using hashes here.

File details

Details for the file Emojirades-0.10.3-py3-none-any.whl.

File metadata

  • Download URL: Emojirades-0.10.3-py3-none-any.whl
  • Upload date:
  • Size: 40.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.1

File hashes

Hashes for Emojirades-0.10.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ba09482ce3651828dac3b8002bc82953d4fad4cb94f52c4da88201e483a6e744
MD5 e81a44f195a0c9e5a9f29dafc218149b
BLAKE2b-256 491a7910abf2afbe5cec4dd65168e001a9472ae72db33342506cad83ca475cfd

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