/gopher

Slack bot for Gophers slack https://invite.slack.golangbridge.org

Primary LanguageGoApache License 2.0Apache-2.0

Gopher

CircleCI GoDoc Go Report Card

This is a Slack bot for the Gophers Slack.

You can get an invite from here

Running

To run this you need to set the the following environment variables:

  • GOPHERS_SLACK_BOT_TOKEN - the Slack bot token
  • GOPHERS_SLACK_BOT_NAME - the Slack bot name (in development tempbot is used)
  • GOPHERS_SLACK_BOT_DEV_MODE - boolean, set the bot in development mode

Kubernetes

To get the bot running in Kubernetes you need to run the following commands:

gcloud container clusters create gopher-slack-bot \
    --zone europe-west1-c \
    --additional-zones=europe-west1-d,europe-west1-b \
    --num-nodes=1 \
    --local-ssd-count=0 \
    --machine-type=f1-micro \
    --disk-size=10

kubectl create namespace gopher-slack-bot

cp secrets.yaml.template secrets.yaml
echo `echo -n 'slackTokenHere' | base64` >> secrets.yaml
kubectl create -f ./secrets.yaml --namespace=gopher-slack-bot

cp secrets-datastore.yaml.template secrets-datastore.yaml
echo `cat datastore.json | base64 -w 0` >> secrets-datastore.yaml
kubectl create -f ./secrets-datastore.yaml --namespace=gopher-slack-bot

kubectl create -f ./deployment.yaml --namespace=gopher-slack-bot

Development

To run gometalinter

go get -v -u github.com/alecthomas/gometalinter
gometalinter ./... --deadline=20s --vendor --sort=linter --disable=gotype

License

This software is created under Apache v2 License. For the full license text, please see License.md