Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cloudlena/train-conductor
A slackbot to announce the schedule of a release train
https://github.com/cloudlena/train-conductor
automation javascript nodejs release-train slack slack-bot
Last synced: 2 days ago
JSON representation
A slackbot to announce the schedule of a release train
- Host: GitHub
- URL: https://github.com/cloudlena/train-conductor
- Owner: cloudlena
- License: other
- Created: 2016-12-19T08:27:23.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2024-02-10T23:01:25.000Z (9 months ago)
- Last Synced: 2024-02-11T00:20:08.856Z (9 months ago)
- Topics: automation, javascript, nodejs, release-train, slack, slack-bot
- Language: TypeScript
- Size: 604 KB
- Stars: 0
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Train Conductor
[![Build Status](https://travis-ci.org/mastertinner/train-conductor.svg?branch=master)](https://travis-ci.org/mastertinner/train-conductor)
[![Docker Build](https://img.shields.io/docker/cloud/build/mastertinner/train-conductor.svg?style=flat-square)](https://hub.docker.com/r/mastertinner/train-conductor)A Slack bot which announces the schedule of a [software release train](https://en.wikipedia.org/wiki/Software_release_train). Can be deployed to Cloud Foundry or any other server/platform.
## Features
- Announces one day before the release train leaves that people should get their releases ready
- Announces on time that the release train is leaving
- Can be asked for the next scheduled departure of the release train
- Can be asked for the current schedule of release trains## Configuration
Train Conductor is configured using environment variables:
- `SLACK_API_TOKEN` - Your Slack API token
- `SLACK_WEBHOOK_URL`- The webhook to use (must be configured to use the correct channel)
- `START_DATE` - When the release train leaves for the first time (e.g. `"16/03/2016"`)
- `SCHEDULE_TIME` - The time of day on which the train leaves (e.g. `"14:00"`)
- `INTERVAL_DAYS` - How many days between departures
- `SLACK_CHANNEL`- Optional. The slack channel to use (defaults to `"#release"`)## Run locally with restarting live server
1. Run `npm install`
1. Run `npm run start:dev`## Build and run
1. Run `npm install`
1. Run `npm run build`
1. Run `npm start`## Build Docker image
The image is available on [Docker Hub](https://hub.docker.com/r/mastertinner/train-conductor/)
1. Run `npm run build:docker`