-
Notifications
You must be signed in to change notification settings - Fork 1
/
CHANGELOG
592 lines (486 loc) · 16.9 KB
/
CHANGELOG
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
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
# Change Log
All notable changes to this project will be documented in this file.
## [4.0.0] - 2024-08-09
# Removed
- Support of tasks as it unused to due its incompatibility with GitHub.
# Added
- Bert-E's status notifications through a build status check.
- Support of development branches with only major version: `development/x`.
# Changed
- Integration queue branches pattern is now `q/w/{pr.id}/{integration.branch}`
instead of `q/{pr.id}/{integration.branch}`.
- Allow admins to self-bypass their own PRs.
## [3.12.0] - 2024-02-26
# Added
- Add toggable list of options and commands to init message.
## [3.11.0] - 2024-01-26
# Added
- Support of merging a PR and skip the queue when it is not needed.
## [3.10.0] - 2023-11-14
# Added
- Support of tags created with `v` prefix.
## [3.9.0] - 2023-07-20
# Added
- Introducing a new option that prevent the creation of
integration branches.
## [3.7.0] - 2022-08-08
# Added
- Support config settings through environment.
## [3.6.22] - 2022-08-08
# Fixed
- Fixed configuration for Webhook authentication.
## [3.6.21] - 2022-08-05
# Added
- Making reverse proxy configuration through env.
# Fixed
- Wsgi config for http scheme had a typo.
## [3.6.19] - 2022-06-30
# Fixed
- Ensure check suites build status are stored on webhook event.
## [3.6.18] - 2022-05-20
# Added
- Extra logs to debug status of queue branches in the UI
# Fixed
- Fixup implementation of verifying status from different branches
## [3.6.17] - 2022-05-20
# Fixed
- Get best result from different branches that build on same commit.
## [3.6.16] - 2022-05-19
# Fixed
- Take into account queued or pending status as inprogress.
## [3.6.14] - 2022-05-18
# Fixed
- Infinite loop when searching for workflow dispatch runs.
## [3.6.13] - 2022-05-12
# Added
- Support check-suites event on GitHub Actions
# Fixed
- Changing url returned on status page for queue build on GitHub Actions
## [3.6.12] - 2022-05-04
# Fixed
- Fix Key error when retrieve html_url for checksuites
## [3.6.11] - 2022-04-28
# Fixed
- Fix Key error when retrieve html_url for checksuites
## [3.6.10] - 2022-04-25
# Fixed
- Fix Key error when workflow dispatch is triggered on the commit_status checked
## [3.6.9] - 2022-04-25
# Fixed
- Handle GitHub Actions status when workflow is pending.
- Don't check workflow triggerd by "workflow_dispatch" event
## [3.6.8] - 2021-11-09
# Fixed
- Allways get the latest check-runs link status
## [3.6.7] - 2021-11-09
# Changed
- Allow jira issue keys to be lowercase
## [3.6.6] - 2021-11-08
# Changed
- Track new pattern for epic branches
## [3.6.5] - 2021-10-29
# Fixed
- Build status is green with Github Action even if a step is skipped
## [3.6.4] - 2021-10-08
# Added
- Github Actions check_run events trigger a CommitJob and update the PR status
## [3.6.3] - 2021-08-26
# Fixed
- Changed order between stabilization and development branches to fix KeyError issues.
## [3.6.2] - 2021-06-24
# Changed
- Conflict resolution steps split to allow direct copy and paste
## [3.6.1] - 2021-05-26
# Fixed
- API call error was returning to much information, now it return only action results.
## [3.6.0] - 2021-04-27
# Added
- Support GitHub Action CI thanks to a new build key config `github_actions`
## [3.5.0] - 2021-04-27
# Added
- Add "pr_author_options" option to config, which add bypass to a specifique user
## [3.4.2] - 2020-10-14
# Fixed
- CommandError "Command git log --no-merges --pretty=..." for delete src branch
## [3.4.1] - 2020-10-08
# Fixed
- success message did not display hotfix target branch
- incorrect fix version message for hotfix PR
- queue UI display order
- removed password basic auth for github
## [3.4.0] - 2020-07-24
# Added
- Do not ignore fixVersion in X.Y.Z.0 format during jira check
- Support Hotfix branches with no gitwaterflow
# Fixed
- delete_queues broken for branches with version with more than 2 numbers
## [3.3.7] - 2020-04-06
# Added
- Support enhanced bitbucket editor
- Fixed a typo in the help about the approve command.
## [3.3.6] - 2019-08-07
# Added
- Support branches with the prefix dependabot.
## [3.3.5] - 2019-07-22
# Added
- Commands and options can now by called with the / prefix in a PR comment.
## [3.3.4] - 2019-06-18
# Fixed
- Renaming jira related variables due to authentication changes in the API.
## [3.3.3] - 2019-04-29
# Added
- Ensure we use byte based objects on all githost clients
## [3.3.2] - 2019-04-29
# Added
- Comments base abstract method now contains created_on property
# Fixed
- Ensure comments are sorted by creation date on Bitbucket API client.
## [3.3.1] - 2019-04-26
# Fixed
- Broken dependencies due to update on markdown upstream. Now
fixing it with a proper constraint.
## [3.3.0] - 2019-04-25
# Added
- Enabling Schema validation for all githosts.
- Changing the way Bitbucket API Client works, due to GDPR breaking
changes on their API. Therefore removing the usage of the 'username' field:
https://developer.atlassian.com/cloud/bitbucket/bitbucket-api-changes-gdpr/
# Fixed
- No more API v1 calls for bitbucket.
# Changed
- Robot username setting is now robot and not robot_username.
## [3.2.10] - 2019-02-14
# Added
- Add support for the "design" branch prefix
## [3.2.9] - 2019-02-08
# Fixed
- Fix the github review summarizing function to handle reviewers with only
"COMMENTED" reviews.
## [3.2.8] - 2019-01-30
# Fixed
- Fix rendering of the Init Message for open PRs including the user doc link
- Fix the author approval counting logic for github when commenting after an
approval
# Added
- Add support for review dismissal and request for changes in github review
system. Requests for change now block bert-e's progress.
## [3.2.7] - 2018-12-17
# Added
- Add a configuration field to specify the reachable URL for BertE's UI
# Changed
- Improve BertE's init messages with a link to its UI for the users
## [3.2.6] - 2018-11-28
# Fixed
- Fixed the user documentation for the disable_version_check flag
## [3.2.5] - 2018-11-28
# Added
- Add a configuration flag to allow disabling version checks for a bert-e
instance
## [3.2.4] - 2018-11-16
# Fixed
- Lower case bugs on admin page and with PR authors
## [3.2.3] - 2018-11-13
# Fixed
- Change the author approval option from "approved" to "approve"
## [3.2.2] - 2018-11-12
# Fixed
- Handle insensitive case for usernames
# Added
- Add support for installing a link in Bitbucket
- Add support of author approval via comments (useful for Github)
## [3.2.1] - 2018-10-15
# Fixed
- Chart deployment can now be set without tls on ingress.
## [3.2.0] - 2018-09-11
# Added
- Add docker container for Bert-E and server.
- Add Kubernetes chart.
- Add repository management page to server.
- Add documentation pages to server.
- Add OAuth based authentication to server.
- Add API system.
- Add API command line client.
- Add API documentation.
- Extend API with pull-request, branch and queue endpoints.
# Changed
- Rename BERT_E_BB_PWD into BERT_E_GITHOST_PWD.
- Move /api/rebuild_queues to /api/gwf/queues[POST].
# Fixed
- Update requirements to fix python 3.7 support.
- Fix queue system for development branches > 10.0.
## [3.1.13] - 2018-07-16
# Added
- Implement mandatory project leader approvals.
- Remove code around tester approval.
# Fixed
- Fix build status cache and build status presentation for Github projects.
- Fix evaluation of approvals on Github in case a reviewer changed his/her
mind and removed his/her stamp.
## [3.1.12] - 2018-06-27
# Fixed
- Fix incomplete conflict resolution suggestion.
- Fix markdown syntax errors on PR messages.
## [3.1.11] - 2018-05-30
# Fixed
- Fix unexpected NothingToDo on new build status in the case integration
pull requests are not created.
- Fix comment in case of build failure on an integration branch.
- Fix reference to Jira key when ticket is not found.
- Fix parsing output of ls-remote for more recent git versions.
## [3.1.10] - 2018-04-17
# Added
- Retry mechanism to be more robust to 429 and 500 git host errors.
- Fix build assessment of pull requests that target stabilization branches.
## [3.1.9] - 2018-03-09
# Added
- Do not create integration pull requests by default.
## [3.1.8] - 2018-01-18
# Added
- Added instance name on each log line.
- Added API request logging on git host with useful information.
## [3.1.7] - 2017-12-12
# Fixed
- Fix crash on PR where comments were deleted.
## [3.1.6] - 2017-07-27
# Fixed
- Fix second feature branch merge on earlier dev branch.
## [3.1.5] - 2017-06-30
# Added
- A test to determine the behavior when adding a dev + stabilization branch.
# Fixed
- The reset command is now robust to amends and rebases of the feature branch.
## [3.1.4] - 2017-06-22
# Added
- The user is instructed to track remote counterparts of locally created branches.
- no_octopus option to disable octopus merge (do consecutive merge instead).
- robust_merge strategy to perform both (and keep the best result from) octopus and consecutive merges.
## [3.1.3] - 2017-05-22
# Fixed
- Log traceback of unknown errors.
- Errors during rmtree (local clone reset) used to crash the jobs.
# Added
- Bert-E can send exceptions to Sentry.
- System test relative to development branch deletion.
- System test relative to stabilization branch addition.
- Bert-E explicitely name target branch in the integration pr created message.
## [3.1.2] - 2017-05-09
# Fixed
- Fix default branch prefix in settings.
## [3.1.1] - 2017-05-04
# Added
- Bert-E adds a link to the commit URL in the message posted for a failed build.
- Bert-E's REST API was bootstrapped.
- REST API 'rebuild_queues' command.
- JIRA checks can be bypassed according to the source branch prefix (e.g. "documentation").
# Fixed
- Bert-E no longer crashes silently when encountering an unknown issue type.
## [3.1.0] - 2017-04-21
# Changed
- No longer create integration branch/pull request for the first destination branch.
- Lossy resets are detected in a cleaner and more reliable way.
# Added
- BertE can block when a pull request diverges too much from its destination branch.
## [3.0.11] - 2017-04-14
# Fixed
- Random options were showed as active in the robot's greetings message.
- Don't display "wrong destination branch" message in case of a failed git ls-remote.
- Commit link points to the build in the robot's completed job queue.
- Prevent from putting duplicate jobs in the task queue.
- Ignore suffixed versions (such as "5.1.9_hf3") in JIRA fixVersion field.
## [3.0.10] - 2017-03-27
# Added
- Better scm version support in setup.py and version display in status page.
## [3.0.9] - 2017-03-23
# Added
- Fallback to two 2-way merge in case of conflict during 3-way octopus merge.
# Fixed
- Bert-E does not crash when an argument is given to the status command in pull requests.
## [3.0.8] - 2017-03-16
# Added
- Bert-E supports GitHub (except for tasks, author approvals and unanimity option).
- Comment.delete() is specified in the abstract githost API + the github implementation.
- need_author_approval optional configuration key (defaulting to true).
# Changed
- Pull request author is optional during filtered scans, with sensible default values.
## [3.0.7] - 2017-03-08
# Changed
- Refactoring: BertE is now a long-living job dispatching service.
## [3.0.6] - 2017-03-07
# Fixed
- Reset: do not crash when bitbucket fails.
- Reset: check existence of branches.
## [3.0.5] - 2017-03-06
# Added
- Implement GitHub API
- Git Host API allows to filter on pull request status.
- Add explicit message when using a command with a wrong syntax.
- Implement reset and force_reset commands.
# Changed
- Refactoring: the bert_e.utils module became the bet_e.lib package.
- System tests now use the abstract git_host API.
## [3.0.4] - 2017-02-16
# Fixed
- Bert-E specifically handles the case where the destination of a PR is archived/deleted
# Added
- Provide the url to failed builds in pull requests
## [3.0.3] - 2017-02-15
# Fixed
- Filter on open pull requests only to avoid getting stuck in a loop.
- Fixed conflict resolution instructions on non-pushed integration branches.
## [3.0.2] - 2017-02-13
# Changed
- Bitbucket API HTTP calls were optimized to avoid full-scan (and throttling by Bitbucket).
- Made approval messages less verbose.
# Added
- The abstract Git HOST API allows for filtering when listing pull requests.
# Fixed
- BertE no longer pushes empty integration branches to the repository.
- Add mechanism to hide BertE's credentials from error messages and logs.
## [3.0.1] - 2017-02-07
# Fixed
- Some exceptions slipped through and killed the BertE worker thread in the server.
- Tasks were set in reversed order on bitbucket.
## [3.0.0] - 2017-02-06
# Changed
- Dropped Python 2 support, in favor of Python 3.5+.
- Defined an abstract git_host API for Bitbucket and similar services.
- Major refactoring: the big bert_e.bert_e module was exploded in independent packages.
- Support for Bitbucket's STOPPED build status.
## [2.0.10] - 2017-01-23
# Changed
- do not fail in case the internal API of tasks has changed at bitbucket
# Fixed
- fixed init message when there is no default review tasks for the project
## [2.0.9] - 2017-01-18
# Added
- customized review tasks auto-creation on init
# Fixed
- unstarted builds in queue show as NOTSTARTED rather than INPROGRESS
# Changed
- removed reference to Jira ticket types `EPIC` in documentation
## [2.0.8] - 2016-12-30
# Changed
- Bert-E is now provided as an installable package
- optimised templating for status page
- information added to status page: merge date, details of internal errors
# Fixed
- server tests can now run individually
- fixed tests based on get_pull_request
- fixed permanent CommandError for new repositories
## [2.0.7] - 2016-12-23
# Changed
- faster retrieval of all git branches using mirror clones
- removed the --reference option as it was replaced by an internal git cache
## [2.0.6] - 2016-12-20
# Changed
- monitoring page is now in HTML
- delayed git clone and added an ls-remote cache to speed bert-e up
## [2.0.4] - 2016-11-16
# Changed
- moved settings to per-project files
- renamed tools to Bert-E / server
- update documentation files
# Added
- added user documentation
- licence
## [2.0.3] - 2016-10-20
# Fixed
- improve robustness against QueueConflict exceptions
## [2.0.2] - 2016-10-19
# Added
- externalise settings to yaml files
- add a sample settings file
- allow multiple Jira issue keys per project
## [2.0.1] - 2016-10-18
# Added
- allow multiple ticket keys for projects
- show return status in server's monitoring view
# Fixed
- avoid raising trivial conflicts due to branch update order
- selective git transactions (push only modified branches)
## [2.0.0] - 2016-09-29
# Added
- new queueing system
- more information on server's monitoring view
## [1.0.14] - 2016-09-23
# Added
- new standalone webhook listener&parser (server.py)
- (experimental) react to commit sha1 instead of pull-request ID
- add a timeout to all system commands
- improve reactivity by not reacting to 'build started' events
# Fixed
- fix freeze on a git command
## [1.0.13] - 2016-06-22
### Fixed
- quote commands in git API to avoid bash interpolation
### Changed
- remove 'tester' role and replace the tester approval with a second peer approval
## [1.0.12] - 2016-06-03
### Fixed
- only use long sha1 where possible for safety
- fix recognition of incorrect commands
- fix over-long Bert-E instances when target branch has diverged a lot
### Changed
- do not add author as a reviewer on integration PR, to reduce email traffic (opt-in)
- more comprehensive conflict resolution message
- informative messages are now sent in the same session of Bert-E
### Added
- clean integration data when the original PR is declined
## [1.0.11] - 2016-05-09
### Fixed
- fix typo in new tester name
## [1.0.10] - 2016-05-04
### Fixed
- support long PR titles
### Changed
- update Jenkinsfile
- reword messages
- remove email handler
- rework no-repeat strategy
### Added
- add 'integration PR created' message
- add retry strategy
- block on unrecognised or unauthorized messages
- add more testers to Ring project
## [1.0.9] - 2016-04-19
### Changed
- add new administrators to Ring project
## [1.0.8] - 2016-04-08
### Fixed
- workaround random order of messages obtained from BB PRs
## [1.0.7] - 2016-04-07
### Fixed
- remove all previous artifacts from workspace
### Added
- detect and resolve laggy bitbucket situations (PR skew)
## [1.0.6] - 2016-03-24
### Fixed
- do not abort merge in case of problem during merge
## [1.0.5] - 2016-03-24
### Fixed
- increase rename limit in Git
## [1.0.4] - 2016-03-15
### Fixed
- fix display of expected fix versions
### Changed
- improve Jenkinsfile: use externalised bitbucketNotify function
- update link to online documentation
### Added
- add releng-jenkins project
## [1.0.3] - 2016-02-25
### Fixed
- fix prefix in Mismatch Prefix message
- fix formatting of log statement
### Added
- add demo project
## [1.0.2] - 2016-02-24
### Fixed
- RELENG-1005 display of the non-targetted branches is incorrect
## [1.0.1] - 2016-02-22
### Added
- support stabilization branches
- unanimity option
- after_pull_request option
- bypass_incompatible_branch option
## [1.0.0] - 2015-02-11
Initial release