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

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.0.tar.gz (18.2 kB view hashes)

Uploaded Source

Built Distribution

Emojirades-0.10.0-py3-none-any.whl (40.6 kB view hashes)

Uploaded Python 3

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