blob: f0758b28d006d2886862228c52c893c40de3829f [file] [log] [blame]
Ales Komarek3446a0a2016-03-08 10:21:00 +01001
Ales Komarek7f93ce22016-08-29 23:27:47 +02002======
3Gerrit
4======
Ales Komarek3446a0a2016-03-08 10:21:00 +01005
Ales Komarek7f93ce22016-08-29 23:27:47 +02006Gerrit provides web based code review and repository management for the Git version control system.
Ales Komarek3446a0a2016-03-08 10:21:00 +01007
8Sample pillars
9==============
10
Ales Komarek49a37292016-08-31 16:18:31 +020011Simple gerrit service
Ales Komarek3446a0a2016-03-08 10:21:00 +010012
13.. code-block:: yaml
14
15 gerrit:
16 server:
17 enabled: true
Ales Komarek7f93ce22016-08-29 23:27:47 +020018 source:
19 engine: http
20 address: https://gerrit-ci.gerritforge.com/job/Gerrit-stable-2.13/20/artifact/buck-out/gen/gerrit.war
21 hash: 2e17064b8742c4622815593ec496c571
Ales Komarek3446a0a2016-03-08 10:21:00 +010022
Ales Komarek49a37292016-08-31 16:18:31 +020023Full service setup
24
25.. code-block:: yaml
26
27 gerrit:
28 server:
29 canonical_web_url: http://10.10.10.148:8082/
30 email_private_key: ""
31 token_private_key: ""
32 initial_user:
33 full_name: John Doe
34 email: 'mail@jdoe.com'
35 username: jdoe
36 plugin:
37 download-commands:
38 engine: gerrit
39 # replication:
40 # engine: gerrit
41 reviewnotes:
42 engine: gerrit
43 singleusergroup:
44 engine: gerrit
45 ssh_rsa_key: |
46 -----BEGIN RSA PRIVATE KEY-----
47 MIIEowIBAAKCAQEAs0Y8mxS3dfs5zG8Du5vdBkfOCOng1IEUmFZIirJ8oBgJOd54
48 QgmkDFB7oP9eTCgz9k/rix1uJWhhVCMBzrWzH5IODO+tyy/tK66pv2BWtVfTDhBA
49 nShOLDNbSIBaV8E/NcrbnQN+b0alp4N7rQnavkOYl+JQncKjz1csmCodirscB9Oj
50 rdo6NG9olv9IQd/tDQxEeDyQkoW50aCEWcq7o+QaTzgnlrL+XZEzhzjdcvA9m8go
51 ...
52 jvMXms60iD/A5OpG33LWHNNzQBP486SxG75LB+Xs5sp5j2/b7VF5LJLhpGiJv9Mk
53 ydbuy8iuuvali2uF133kAlLqnrWfVTYQQI1OfW5glOv1L6kv94dU
54 -----END RSA PRIVATE KEY-----
55 ssh_rsa_key_pub: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzRjybFLd1+znMbwO7m90GR84I6eDUgRSYVkiKsnygGAk53nhCCaQMUHug/15MKDP2T+uLHW4laGFUIwHOtbMfkg4M763LL+0rrqm/YFa1V9MOEECdKE4sM1tIgFpXwT81ytudA35vRqWng3utCdq+Q5iX4lCdwqPPVyyYKh2KuxwH06Ot2jo0b2iW/0hB3+0NDER4PJCShbnRoIRZyruj5BpPOCeWsv5dkTOHON1y8D2byCgNGdCBIRx7x9Qb4dKK2F01r0/bfBGxELJzBdQ8XO14bQ7VOd3gTxrccTM4tVS7/uc/vtjiq7MKjnHGf/svbw9bTHAXbXcWXtOlRe51
56 email: mail@domain.com
57 auth:
58 engine: HTTP
59 source:
60 engine: http
61 address: https://gerrit-releases.storage.googleapis.com/gerrit-2.12.4.war
62 hash: sha256=45786a920a929c6258de6461bcf03ddec8925577bd485905f102ceb6e5e1e47c
63 database:
64 engine: postgresql
65 host: localhost
66 port: 5432
67 name: gerrit
68 user: gerrit
69 password: ${_param:postgresql_gerrit_password}
70
Ales Komarek2fc39002016-09-14 11:43:56 +020071
72Gerrit client enforcing groups
73
74.. code-block:: yaml
75
76 gerrit:
77 client:
78 group:
79 Admin001:
80 description: admin 01
81 Admin002:
82 description: admin 02
83
84
Filip Pytloun33d84dd2016-12-20 16:13:24 +010085Gerrit client enforcing users, install using pip
Ales Komarek2fc39002016-09-14 11:43:56 +020086
87.. code-block:: yaml
88
89 gerrit:
90 client:
Filip Pytloun33d84dd2016-12-20 16:13:24 +010091 source:
92 engine: pip
Ales Komarek2fc39002016-09-14 11:43:56 +020093 user:
94 jdoe:
95 fullname: John Doe
96 email: "jdoe@domain.com"
97 ssh_key: ssh-rsa
98 http_password: password
99 groups:
100 - Admin001
101
102
Ales Komarek49a37292016-08-31 16:18:31 +0200103Gerrit client enforcing projects
104
105.. code-block:: yaml
106
107 gerrit:
108 client:
109 enabled: True
110 server:
111 host: 10.10.10.148
112 user: newt
113 key: |
114 -----BEGIN RSA PRIVATE KEY-----
115 MIIEowIBAAKCAQEAs0Y8mxS3dfs5zG8Du5vdBkfOCOng1IEUmFZIirJ8oBgJOd54
116 QgmkDFB7oP9eTCgz9k/rix1uJWhhVCMBzrWzH5IODO+tyy/tK66pv2BWtVfTDhBA
117 ...
118 l1UrxQKBgEklBTuEiDRibKGXQBwlAYvK2He09hWpqtpt9/DVel6s4A1bbTWDHyoP
119 jvMXms60iD/A5OpG33LWHNNzQBP486SxG75LB+Xs5sp5j2/b7VF5LJLhpGiJv9Mk
120 ydbuy8iuuvali2uF133kAlLqnrWfVTYQQI1OfW5glOv1L6kv94dU
121 -----END RSA PRIVATE KEY-----
Ales Komarek50c558e2016-09-05 23:34:43 +0200122 email: "Project Creator <infra@lists.domain.com>"
Ales Komarek49a37292016-08-31 16:18:31 +0200123 project:
124 test_salt_project:
125 enabled: true
126
Ales Komarek50c558e2016-09-05 23:34:43 +0200127Gerrit client enforcing project, full project example
128
129.. code-block:: yaml
130
131 gerrit:
132 client:
133 enabled: True
134 project:
135 test_salt_project:
136 enabled: true
137 access:
138 "refs/heads/*":
139 actions:
140 - name: abandon
141 group: openstack-salt-core
142 - name: create
143 group: openstack-salt-release
144 labels:
145 - name: Code-Review
146 group: openstack-salt-core
147 score: -2..+2
148 - name: Workflow
149 group: openstack-salt-core
150 score: -1..+1
151 "refs/tags/*":
152 actions:
153 - name: pushSignedTag
154 group: openstack-salt-release
155 require_change_id: true
156 require_agreement: true
157 merge_content: true
Alexander Noskov338d3c72017-09-19 12:10:32 +0400158 action: "fast forward only"
Ales Komarek50c558e2016-09-05 23:34:43 +0200159
Ales Komarek1acb14d2016-09-09 15:14:12 +0200160
161.. code-block:: yaml
162
163 gerrit:
164 client:
165 enabled: True
166 group:
167 groupname:
168 enabled: true
169 members:
170 - username
171 account:
172 username:
173 enabled: true
174 full_name: hovno
175 email: mail@newt.cz
176 public_key: rsassh
177 http_password: passwd
178
179
Ales Komarek50c558e2016-09-05 23:34:43 +0200180Sample project access
181
182.. code-block:: yaml
183
184 [access "refs/*"]
185 read = group Administrators
186 read = group Anonymous Users
187 [access "refs/for/refs/*"]
188 push = group Registered Users
189 pushMerge = group Registered Users
190 [access "refs/heads/*"]
191 create = group Administrators
192 create = group Project Owners
193 forgeAuthor = group Registered Users
194 forgeCommitter = group Administrators
195 forgeCommitter = group Project Owners
196 push = group Administrators
197 push = group Project Owners
198 label-Code-Review = -2..+2 group Administrators
199 label-Code-Review = -2..+2 group Project Owners
200 label-Code-Review = -1..+1 group Registered Users
201 label-Verified = -1..+1 group Non-Interactive Users
202 submit = group Administrators
203 submit = group Project Owners
204 editTopicName = +force group Administrators
205 editTopicName = +force group Project Owners
206 [access "refs/meta/config"]
207 exclusiveGroupPermissions = read
208 read = group Administrators
209 read = group Project Owners
210 push = group Administrators
211 push = group Project Owners
212 label-Code-Review = -2..+2 group Administrators
213 label-Code-Review = -2..+2 group Project Owners
214 submit = group Administrators
215 submit = group Project Owners
216 [access "refs/tags/*"]
217 pushTag = group Administrators
218 pushTag = group Project Owners
219 pushSignedTag = group Administrators
220 pushSignedTag = group Project Owners
221 [label "Code-Review"]
222 function = MaxWithBlock
223 copyMinScore = true
224 value = -2 This shall not be merged
225 value = -1 I would prefer this is not merged as is
226 value = 0 No score
227 value = +1 Looks good to me, but someone else must approve
228 value = +2 Looks good to me, approved
229 [label "Verified"]
230 function = MaxWithBlock
231 copyMinScore = true
232 value = -1 Fails
233 value = 0 No score
234 value = +1 Verified
235
Ales Komarek3446a0a2016-03-08 10:21:00 +0100236Read more
237=========
238
Ales Komarek7f93ce22016-08-29 23:27:47 +0200239* https://www.gerritcodereview.com/
Ales Komarekf93ac812016-08-31 19:37:43 +0200240* https://gerrit-review.googlesource.com/Documentation/
Ales Komarek7f93ce22016-08-29 23:27:47 +0200241* https://github.com/openstack-infra/puppet-gerrit/
242* https://gerrit-ci.gerritforge.com/
Ales Komarek10526762016-09-19 15:21:46 +0200243* https://github.com/morucci/exzuul
Filip Pytlounc5f32652017-02-02 13:02:03 +0100244
245Documentation and Bugs
246======================
247
248To learn how to install and update salt-formulas, consult the documentation
249available online at:
250
251 http://salt-formulas.readthedocs.io/
252
253In the unfortunate event that bugs are discovered, they should be reported to
254the appropriate issue tracker. Use Github issue tracker for specific salt
255formula:
256
257 https://github.com/salt-formulas/salt-formula-gerrit/issues
258
259For feature requests, bug reports or blueprints affecting entire ecosystem,
260use Launchpad salt-formulas project:
261
262 https://launchpad.net/salt-formulas
263
264You can also join salt-formulas-users team and subscribe to mailing list:
265
266 https://launchpad.net/~salt-formulas-users
267
268Developers wishing to work on the salt-formulas projects should always base
269their work on master branch and submit pull request against specific formula.
270
271 https://github.com/salt-formulas/salt-formula-gerrit
272
273Any questions or feedback is always welcome so feel free to join our IRC
274channel:
275
276 #salt-formulas @ irc.freenode.net