-
Notifications
You must be signed in to change notification settings - Fork 3
/
extension.yaml
176 lines (156 loc) · 6.29 KB
/
extension.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
# Copyright Oddbit
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: crashlytics-github
version: 0.0.1
specVersion: v1beta
displayName: Crashlytics Github integration
description: Automatically create and update issues in Github with Crashlytics information.
license: Apache-2.0
sourceUrl: https://github.com/oddbit/crashlytics-github/tree/master
releaseNotesUrl: https://github.com/oddbit/crashlytics-github/tree/master/CHANGELOG.md
author:
authorName: Oddbit
email: contact@oddbit.id
url: https://oddbit.id
contributors:
- authorName: Dennis Alund
url: https://github.com/DennisAlund
billingRequired: true
roles:
- role: firebasecrashlytics.viewer
reason: Allows the extension to access Crashlytics issue reports
resources:
- name: createNewGithubIssue
type: firebaseextensions.v1beta.function
description: >-
Listens for new Crashlytics issues and creates a corresponding
Github issue for each new issue reported in Crashlytics.
properties:
location: ${LOCATION}
eventTrigger:
eventType: providers/firebase.crashlytics/eventTypes/issue.new
resource: projects/${PROJECT_ID}
- name: updateVelocityAlert
type: firebaseextensions.v1beta.function
description: >-
Listens for velocity alerts and updates existing Github issues with new
information, or creates a new Github issue if not possible to find any
existing Github issue that matches.
properties:
location: ${LOCATION}
eventTrigger:
eventType: providers/firebase.crashlytics/eventTypes/issue.velocityAlert
resource: projects/${PROJECT_ID}
- name: updateRegression
type: firebaseextensions.v1beta.function
description: >-
Listens for regressed issue reports in Crashlytics and updates existing Github
issues with new information, or creates a new Github issue if not possible to find any
existing Github issue that matches.
properties:
location: ${LOCATION}
eventTrigger:
eventType: providers/firebase.crashlytics/eventTypes/issue.regressed
resource: projects/${PROJECT_ID}
params:
- param: LOCATION
label: Cloud Functions location
description: >-
Where do you want to deploy the functions created for this extension?
type: select
options:
- label: Iowa (us-central1)
value: us-central1
- label: South Carolina (us-east1)
value: us-east1
- label: Northern Virginia (us-east4)
value: us-east4
- label: Belgium (europe-west1)
value: europe-west1
- label: London (europe-west2)
value: europe-west2
- label: Frankfurt (europe-west3)
value: europe-west3
- label: Hong Kong (asia-east2)
value: asia-east2
- label: Tokyo (asia-northeast1)
value: asia-northeast1
default: us-central1
required: true
immutable: true
- param: GITHUB_API_USER
label: Github API user
description: >-
The Github username that the extension will use is Github API requests.
All issues and comments that are created will be using this account as actor.
type: string
example: octocat
required: true
- param: GITHUB_PERSONAL_ACCESS_TOKEN
label: Github Personal Access Token
description: >-
The personal access token that will be used to authorize Github API requests.
This access token must have `repo` scope access.
[Read Github Documentation](https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line)
on how to obtain a Github Personal Access Token.
type: string
example: a1b2c3d4e5f6g7
required: true
- param: GITHUB_REPOSITORY
label: Github Repository
description: >-
The name of the Github Repository where the issue reports will be created.
This should be the full repository reference with both owner and repository
name. For example: `octocat/Hello-World`
type: string
example: octocat/Hello-World
required: true
- param: ISSUE_ASSIGNEES
label: Github Issue Assignees
description: >-
Which user(s) should be assigned to the issue by default? Provide one or
several **Github usernames** in a comma separated string.
type: string
example: octocat, DennisAlund
required: false
- param: ISSUE_LABELS_NEW
label: Crashlytics Issue Labels
description: >-
What [Github issue labels](https://help.github.com/en/github/managing-your-work-on-github/about-labels)
should be added to a **new** issue that is being created?
You can provide one or several labels in a comma separated string.
type: string
example: bug, crashlytics
default: bug, crashlytics
required: false
- param: ISSUE_LABELS_VELOCITY
label: Velocity Alert Labels
description: >-
What [Github issue labels](https://help.github.com/en/github/managing-your-work-on-github/about-labels)
should be added to a **velocity alert update**? You can provide one or several labels in a comma separated string.
The labels you provide here are **additional** to those that you provided for new issues.
Existing issue labels are unchanged if you skip this configuration value.
type: string
example: crashlytics:velocity, priority
required: false
- param: ISSUE_LABELS_REGRESSED
label: Regression Labels
description: >-
What [Github issue labels](https://help.github.com/en/github/managing-your-work-on-github/about-labels)
should be added to a **regressed issue**? You can provide one or several labels in a comma separated string.
The labels you provide here are **additional** to those that you provided for new issues.
Existing issue labels are unchanged if you skip this configuration value.
type: string
example: crashlytics:regression, priority
required: false