Home
About
Blog
Products
Forum
Support
Contact
Sunbelt Computer Software
PL/B Language Development and Support
Home
About
Blog
Products
Forum
Support
Contact
slack-bot/config.example.yaml at master · innogames/slack-bot · GitHub
Skip to content
Navigation Menu
Sign in
Products
Platform
GitHub
Repository hosting, code review, and collaboration
Copilot
AI coding agent for tasks, projects and automated work
Build & Ship
Actions
CI/CD and automation
Code Quality
Quality analysis, fixes, and enforcement
Codespaces
Cloud development environments
Secure
Code Security
Vulnerability detection and remediation
Secret Protection
Secret scanning and leak prevention
All Features
Developers
Learn
Documentation
Training
Certifications
Build
Build with Copilot
Customize Copilot
Integrations
Explore
Trending repos
GitHub Sponsors
Events
Changelog
Changelog
Your source for the latest features, improvements, and fixes across GitHub products, all in one place.
Businesses
By Stage
Enterprises
Team
Startups
Nonprofits
By Industry
Healthcare
Financial services
Manufacturing
Government
See all industries
Evaluate GitHub
Why GitHub
Customer Stories
Business insights
Trust Center
Add-ons
GitHub Advanced Security
Enterprise-grade code security
Copilot for business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Resources
Learn & Connect
Documentation
Resource center
Blog
Events & webinars
Community Forum
Customer Stories
Integrations
Support
Customer support
Training
GitHub Status
Company
About
Partners
Changelog
GitHub Universe
GitHub Universe
The event for developers, by developers — talks, workshops, and what’s next for GitHub.
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
innogames
slack-bot
Repository navigation
Code
Issues
3
(3)
Pull requests
Discussions
Actions
Security and quality
Insights
More
items
Files
Expand file tree
master
Breadcrumbs
slack-bot
/
config.example.yaml
Copy path
Blame
More file actions
Blame
More file actions
Latest commit
History
History
History
127 lines (111 loc) · 4.03 KB
master
Breadcrumbs
slack-bot
/
config.example.yaml
Copy path
Top
File metadata and controls
Code
Blame
127 lines (111 loc) · 4.03 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
slack
:
token
:
#
use xoxb-1234567-secret
socket_token
:
#
needed for Socket mode, starts with "xapp-"
debug
:
false
#
some more slack debug information
#
list of trusted slack users: allows the user-id and the name
allowed_users
:
-
your.name
-
U122323
#
there are some restricted commands, like reading logs or show runtime stats
admin_users
:
-
UADMINID
#
define a custom set of own commands: They match a regular expression any can call a set of other internal/custom commands
#
here just some examples:
commands
:
#
Jenkins example: "deploy feature-1234" will build clients, deploy it and prints a link after success.
#
- name: Deploy
#
trigger: "deploy (?P<branch>[\\w\\d\\-_\\.\\/]+)"
#
commands:
#
- trigger job BuildClients {{.branch}}
#
- trigger job Deploy {{.branch}}
#
- reply I deployed {{.branch}}
#
- add link "Open Admintool" https://project.example.com/admintool/
#
Jira example: "open backend bugs" will print a list of all matching Jira issues
#
- name: List open Jira bugs
#
trigger: "open (?P<project>(backend|mobile|frontend)) bugs"
#
description: "Lists open Jira bugs from a given component"
#
category: QA
#
commands:
#
- "add reaction :bug:"
#
- jql issuetype = Bug AND component = "{{.project}}" AND resolution = Unresolved ORDER BY priority DESC, created DESC
#
examples:
#
- open backend bugs
#
- open mobile bugs
#
- open frontend bugs
#
optional Jenkins integration
#
jenkins:
#
host: https://jenkins.example.com
#
username: username
#
password: secret
#
approval_timeout: 5m # optional, default timeout for job approvals (default: 5m)
#
jobs:
#
BackendTests:
#
parameters:
#
- name: BRANCH
#
default: master
#
type: branch
#
DeployProduction:
#
needs_approval: true # requires user confirmation via DM before starting
#
parameters:
#
- name: BRANCH
#
default: master
#
optional Jira integration
jira
:
#
host: https://jira.example.de
username
:
readonlyuser
password
:
secret
project
:
FOO
#
optional Github integration to watch PR state
github
:
access_token
:
#
optional when using github features
#
optional Gitlab integration to watch merge request state
#
gitlab:
#
host: https://gitlab.example.de
#
accesstoken: # needed for the API
#
crons:
#
Cron example: 3 times a day check in the given channel if there are more than 5 background jobs, which might be watched pull requests
#
- schedule: "CRON_TZ=Europe/Berlin 0 9,13,16 * * * MON-FRI"
#
channel: "#pull-requests"
#
commands:
#
- |
#
{{$prs := countBackgroundJobsInChannel "C12121"}}
#
{{$allowedPrs := 5}}
#
{{if gt $prs $allowedPrs }}
#
reply <@devs> There are *{{$prs}}* pull requests open...please take a look! :scream:
#
{{end}}
#
plugins which are compiled into the bot binary via the slack-bot-builder, see docs/plugins.md
#
"make build-custom CONFIG=config.yaml" builds build/slack-bot-custom and build/cli-custom including these plugins
plugins
:
#
reference plugin of this repository, adds the "echo <text>" command
example
:
source
:
./plugins/example
config
:
prefix
:
echo
#
weather:
#
source: github.com/innogames/slack-bot/plugins/weather
#
config:
#
apikey: ${OPENWEATHER_API_KEY}
#
location: Hamburg
#
my_plugin:
#
source: ./plugins/my_plugin
#
optional define a pool of resources which can be locked / unlocked by a user
#
pool:
#
lockduration: 2h # default duration to lock a resource
#
notifyexpire: 30m # time to notify the user before a lock expires
#
resources:
#
- name: xa
#
explicitlock: true # will not be used for auto lock via "pool lock" can be locked only explicit via "pool lock xa"
#
addresses: # additional addresses which could be useful
#
- "market: https://xa1.local"
#
- "admin: https://xa-admin.local"
#
- "web: https://xa.local"
#
features: # list of features the resource provides
#
- "web beauty"
#
- "usb plugs"
#
openai/chatgpt
#
openai:
#
api_key: a12121
logger
:
level
:
info
file
:
./bot.log
timezone
:
UTC
You can’t perform that action at this time.