mattermost-community / mattermost-plugin-solar-lottery

A tool somewhat similar to pager duty, allows to have rotations with magic "solar lottery" scheduling, or overrides.
Apache License 2.0
4 stars 10 forks source link
hacktoberfest mattermost mattermost-plugin

Mattermost Solar Lottery Plugin (work in progress, PRE-ALPHA)

CircleCI Go Report Card Code Coverage Release HW

Maintainer: @levb Co-Maintainer: @iomodo

A Mattermost plugin somewhat similar to pager duty, allows to have rotations with magic "solar lottery" scheduling, or overrides.

About

Install

  1. Go the releases page and download the latest release.
  2. On your Mattermost instance, go to System Console -> Plugin Management and upload it.
  3. Configure plugin settings as desired.
  4. Start using the plugin!

Examples

Commands

/lotto autopilot

Run autopilot.

Usage: /lotto autopilot [--flags].

Flags:

/lotto rotation

Tools to manage rotations.

Usage: /lotto rotation <subcommand> <rotation-ID> [--flags].

Subcommands: archive - list - new - show - set autopilot | set fill | set limit | set require | set task

/lotto rotation new

Create a new rotation. Certain parameters can be specified only at creation time and may not be changed later.

Flags:

/lotto rotation archive

Archive a rotation.

/lotto rotation list

List active rotations.

/lotto rotation show

Show rotation details.

/lotto rotation set autopilot

Change rotation's autopilot settings.

Flags:

/lotto rotation set fill

Change rotation's settings for filling (assigning users to) tasks.

Flags:

/lotto rotation set limit

Change rotation's constraints (limits). A limit is like, "no more than 2 people with knowledge of netops, intermediate plus. Use any to indicate any skill/level.

Flags:

/lotto rotation set require

Change rotation's requirements (needs). A requirement is like, "at least 2 people with knowledge of netops, intermediate plus. Use any to indicate any skill/level.

Flags:

/lotto rotation set task

Change rotation's defaults for new tasks.

Flags:

/lotto task

Tools to manage tasks.

Usage: /lotto task <subcommand> [<rotation-ID>|<task-ID>] [@user1 @user2...] [--flags].

Subcommands: assign - fill - finish - new shift - new ticket - schedule - show - start - unassign

/lotto task assign

Assign users to tasks.

Flags:

/lotto task fill

Auto-assign users to tasks to meet the requirements.

/lotto task finish

Transition a task to the finished state.

/lotto task new shift

Create a new shift (i.e. recurring) task, sets its status to pending.

Flags:

/lotto task new ticket

Create a new ticket (i.e. on-request) task, sets its status to pending.

Flags:

/lotto task finish

Transition a task to the finished state.

/lotto task schedule

Transition a task to the scheduled state.

/lotto task show

Display task's details

/lotto task unassign

Display task's details

/lotto user

Tools to manage the user settings and calendars.

Usage: /lotto user <subcommand> [@user1 @user2...] [--flags].

Subcommands: disqualify - join - leave - qualify - show - unavailable

/lotto user disqualify

Disqualify users from skills.

/lotto user join

Add user(s) to a rotation.

/lotto user leave

Add user(s) to a rotation.

/lotto user qualify

Qualify users for skills, with optional skill levels.

Flags:

/lotto user show

Show user records.

/lotto user unavailable

Add or clear times when user(s) are unavailable.

Flags: