-
Notifications
You must be signed in to change notification settings - Fork 54
/
config.yaml
271 lines (239 loc) · 10.4 KB
/
config.yaml
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
# Metasearch config file.
#
# Anywhere in this file, you can reference environment variables using
# placeholders such as ${FOOBAR} that Metasearch will expand at runtime (if
# using Docker, remember to pass the host's env vars through to the container
# via `docker run` flags such as `-e ZOOM_KEY`).
###############################################################################
# ENGINE CONFIG
#
# An "engine" is an individual content source, e.g. Confluence. All supported
# engines are listed below.
#
# You should customize the config values (required unless stated otherwise) for
# all engines that you plan to use and simply delete the entries for any engines
# that you don't plan to use.
#
# Each engine's config accepts an optional `name` key (not shown in this
# example) that you may declare to override the engine's default name for
# display purposes, e.g. `name: Employee directory` in Pingboard's config.
###############################################################################
engines:
# AWS tagged resources. Metasearch assumes that AWS credentials are located in
# ~/.aws. You should mount the host's .aws folder into the container if
# running Metasearch in Docker, e.g. -v "$HOME/.aws:/root/.aws"
aws:
# Comma-separated AWS regions
region: us-east-1
# Confluence pages
confluence:
# Confluence server URL origin
origin: https://example.atlassian.net
# Atlassian API token
token: Ex4mp1eEx4mp1eEx4mp1eEx4
# Atlassian user who owns the API token
user: admin@example.com
# Dropbox files and folders
dropbox:
# Case-insensitive regex for excluding search results based on file path
# (optional)
exclude: wip
# Case-insensitive top-level folder to search in (optional, defaults to all
# folders)
folder: untitled (2)
# Dropbox API token
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eE
# Google Drive documents
drive:
# Path to Google OAuth credentials. You can obtain this file by going to the
# Google API console, creating credentials of type "OAuth client ID" with
# application type "Web application" and `http://localhost:3001/` as an
# authorized redirect URI, and clicking "DOWNLOAD JSON".
#
# https://console.developers.google.com/apis/credentials
# https://github.com/googleapis/google-api-nodejs-client/tree/62f8193#oauth2-client
#
# Note that if you run Metasearch using Docker, you need to make the host's
# credentials file accessible from inside the container. One way to do so is
# by entering `/data/credentials.json` as this option's value and supplying
# to `docker run` an additional flag that mounts the host file to that path:
# `-v '/path/to/credentials.json:/data/credentials.json'`
credentials: /path/to/credentials.json
# OAuth2 refresh token. You can obtain this by piping the aforementioned
# credentials file into this repo's `make oauth` command and then following
# the CLI's instructions.
#
# For example: make oauth < /path/to/credentials.json
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp
# Figma files, projects, and teams
figma:
# Organization ID, the number that appears in the URL when viewing your
# Figma organization's home page: https://www.figma.com/files/<org_id>
organization: 123456789012345678
# Figma password. If your account doesn't have a password yet (e.g. because
# you sign into Figma via Google), you can add one to your account by going
# through Figma's "Forgot password?" flow.
password: Ex4mp1eEx4mp1e
# Figma user account
user: admin@example.com
# GitHub repo names and descriptions (for GitHub code, use Hound engine)
github:
# GitHub organization
organization: example
# GitHub API origin (optional, defaults to https://api.github.com)
origin: https://api.github.com
# GitHub personal access token
token: abcdef0123456789abcdef0123456789abcdef01
# GitLab Merge Requests
gitlab:
# GitLab API origin (optional, defaults to https://gitlab.com)
origin: https://gitlab.com
# GitLab personal access token
token: abcdef0123456789abcdef0123456789abcdef01
# Greenhouse job posts
greenhouse:
# Board token
token: example
# Google Groups (i.e. mailing lists)
groups:
# (See `drive` engine config for an explanation of this property)
credentials: /path/to/credentials.json
# Domain of groups to search
domain: example.com
# (See `drive` engine config for an explanation of this property)
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp
# Guru cards
guru:
# API user token
token: 12345678-90ab-cdef-1234-567890abcdef
# Token owner
user: admin@example.com
# Hound-indexed code: https://github.com/hound-search/hound
hound:
# GitHub organization
organization: example
# Hound server URL origin
origin: https://hound.example.com
# Jenkins job names
jenkins:
# Jenkins server URL origin
origin: https://jenkins.example.com
# Jenkins API token (optional, requires user)
token: 0123456789abcdefg0123456789abcdefg
# Jenkins user who owns the API token (optional, requires token)
user: username
# Jira issue titles and descriptions
jira:
# Jira server URL origin
origin: https://example.atlassian.net
# Atlassian API token
token: Ex4mp1eEx4mp1eEx4mp1eEx4
# Atlassian user who owns the API token
user: admin@example.com
# Lingo assets
lingo:
# List of public and/or private kit URLs. Several URL formats are supported;
# your kit URL may or may not include `?kit_token` depending on when it was
# created in Lingo
kits:
- https://www.lingoapp.com/space/1234/k/34AFA130-49FC-43E1-8BA0-5F8849FE5FDE?kit_token=Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eE
- https://www.lingoapp.com/1234/k/Icons-RWEr24?kit_token=Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eE
- https://www.lingoapp.com/1234/k/Illustrations-Ex4mp1
# Mattermost posts
mattermost:
origin: https://my-mattermost-server.com
team: team-name
# Create a bot and use the token here.
# In order to search non-public channels, add the bot as a member to the channel
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eE
# Notion page titles
notion:
# Create an internal integration at https://www.notion.so/my-integrations
# and paste the token below. Make sure to share the notion pages with this
# integration for them to be searchable.
token: secret_Ex4mp1eEx4mp1eEx4mp1eEEx4mp1eEx4mp1eEx4mp1eE
# ID of the space where you want to search pages, see URL of any page in
# workspace (notion.so/happy/).
workspace: happy
# Outlook Calendar Events
outlookCalendar:
# Step 1: Register a new application on Microsoft Azure
# (https://youtu.be/qOmeSDUNg_Q):
clientId: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp
clientSecret: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp
# Step 2: Microsoft Graph API refresh token (lasts 90 days): Similar to the
# `drive` engine's config, you can obtain this token by providing the
# values above to this repo's `make oauth_microsoft` command as ID and
# SECRET environment variables and then following the CLI's instructions.
#
# To illustrate: ID=*** SECRET=*** make oauth_microsoft
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp
# PagerDuty schedules and services
pagerduty:
# PagerDuty API token
token: Ex4mp1eEx4mp1eEx4mp1
# Pingboard employees
pingboard:
# Pingboard non-admin API key ID
key: 1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
# Pingboard organization name (appears before `.pingboard.com` in your account's URLs)
organization: example
# Pingboard non-admin API secret
secret: 1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
# Rollbar projects
rollbar:
# Rollbar organization
organization: example
# Account access token with `read` scope
token: 1234567890abcdef1234567890abcdef
# Slack messages and channels
slack:
# Whether to include bot messages in search results
bots: false
# Slack organization name (appears before `.slack.com` in your account's URLs)
organization: example
# Slack OAuth token that has the scopes `channels:read` and `search:read`
token: xoxp-1234567890-1234567890123-1234567890123-1234567890abcdef1234567890abcdef
# Stack Overflow for Teams questions
stackoverflow:
# Last fragment of "Team URL" (https://stackoverflow.com/c/example) found at
# Admin settings > Name & URL > Team URL
team: example
# Personal access token. See instructions here for how to obtain:
# https://stackoverflow.help/en/articles/4385859-stack-overflow-for-teams-api
token: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx
# TalentLMS courses
talentlms:
# TalentLMS API key
key: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx
# TalentLMS organization name (appears before `.talentlms.com` in your account's URLs)
organization: example
# Trello actions, boards, cards, members, and organizations
trello:
# API key
key: 12345678901234567890123456789012
# API token
token: 1234567890123456789012345678901234567890123456789012345678901234
# Arbitrary website content
website:
# XML sitemaps to scrape. Metasearch will download and search the HTML
# content of each <url> location that appears in these sitemaps. The HTML is
# kept in memory and rescraped every day, so it probably isn't a good idea
# to specify sitemaps that have a million <url> entries
sitemaps:
- https://www.example.com/sitemap.xml
# Zoom room names
zoom:
# Zoom API key used for JWT authentication
key: Ex4mp1eEx4mp1eEx4mp1eE
# Zoom API secret used for JWT authentication
secret: Ex4mp1eEx4mp1eEx4mp1eEx4mp1eEx4mp1eE
###############################################################################
# ADVANCED CONFIG
#
# All config properties below are optional and commented out by default.
###############################################################################
# Some custom HTML to render at the bottom of the page
# footer: 'Lorem ipsum dolor sit amet'
# Google Analytics tracking ID
# trackingId: UA-00000000-00