Skip to content

domix/wonky

Repository files navigation

wonky

Build Status codecov.io

Wonky is a port of slacking, to the JVM written in Java and Micronaut.

Features

  • A landing page you can point users to fill in their emails and receive an invite (http://slack.yourdomain.com)

Build

Docker Engine

Requirements

"JDK"

Slack token

To build & run wonky you need a Slack API token. Note that the user you use to generate the token must be an admin. You may want to create a dedicated @wonky-inviter user (or similar) for this.

You can find your API token here

Once you have the token, you need to write the configuration file.

Configuration file

The configuration file is very simple to write, it's a YAML.

Single Slack organization
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "localhost:8080"

NOTE: Wonky supports multiple organizations (aka multitenancy), Wonky will use the domain (HOST http header) to select the right token. Consider this.

Multiple Slack organizations
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "localhost:8080"
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "slack.myorganization.com"
Recomendation

We strongly recommend you write and name the config file as orgs_ignored.yaml and save it to the root source of wonky, in git is marked as ignored.

Environment variables

In order to run properly the test, you have to provide the following Environment Variables;

  • WONKY_TENANTS_FILE
  • WONKY_TEST_EMAIL_PREFIX

You can configued as follows in the shell:

$ export WONKY_TENANTS_FILE=./orgs_ignored.yaml
$ export WONKY_TEST_EMAIL_PREFIX=something

Now you can build wonky from source :)

Building from source

$ ./gradlew clean build

Run

By default wonky runs on port 8080, as any Micronaut application you can chance the port as you wish.

$ ./gradlew run  

Alternatively, you can run Wonky with Docker as a container:

$ docker run --rm -p 8080:8080 -v `pwd`/orgs_ignored.yaml:/etc/wonky/tenants.yaml  domix/wonky:0.3.7

Communities using Wonky

Development badges

codecov.io