Commit Graph

407 Commits

Author SHA1 Message Date
Simon Baslé
ea76d81630 fix #185 Redirect commands stdout/stderr to releaser.commands logger
This allows configuration of that specific logger to append only to
eg. a File instead of polluting the main application log.
2020-02-21 23:09:25 +01:00
Marcin Grzejszczak
eb723b9157 Oleg Oleg Oleg 2020-02-13 14:58:51 +01:00
Marcin Grzejszczak
2551f9d6f6 THank you Oleg so much 2020-02-13 14:51:58 +01:00
Oleg Zhurakousky
52ef699a30 Wrapp additional sagan update elements in try/catch 2020-02-13 14:15:47 +01:00
Marcin Grzejszczak
d66fa96735 Extending the stream projects 2020-02-13 14:08:55 +01:00
Oleg Zhurakousky
e7b3c05824 Disable further operation if updateSaganForNonSnapshot fails 2020-02-13 13:56:49 +01:00
Oleg Zhurakousky
1b7981c113 Mark Sagan unstable in case of exception
Ensures that any exceptions thrown during Sagan update does not halt the release
2020-02-13 13:49:12 +01:00
Marcin Grzejszczak
186a1fc358 Added same bom parsing logic for stream as it is for cloud 2020-02-13 08:35:24 +01:00
Marcin Grzejszczak
9c4c2dc517 Improved the version comparison algorithm 2020-02-12 17:05:13 +01:00
Marcin Grzejszczak
aadd5baaf0 Uses releaser properties of a given project for certain tasks 2020-02-03 16:32:39 +01:00
Marcin Grzejszczak
7497446dfe Should fix issues ith post processing 2020-02-03 09:42:13 +01:00
Marcin Grzejszczak
987e800213 Store release result only for commands that need it 2020-01-23 18:21:52 +01:00
Simon Baslé
353cbc1ab7 Allow live output + output capture thanks to zt-exec (#184) 2020-01-23 18:13:55 +01:00
Spencer Gibb
0d5460e051 Add ProcessBuilder.inheritIO() back 2020-01-23 11:38:08 -05:00
Marcin Grzejszczak
6251019073 Read custom config for a single project 2020-01-23 16:17:20 +01:00
Spencer Gibb
93598690ab Splits BuildReportHandler from ExecutionResultHandler 2020-01-22 14:59:45 -05:00
Marcin Grzejszczak
99dd179e13 Fixed the broken compilation 2020-01-22 15:53:27 +01:00
Simon Baslé
188c079bd6 Improvements to common build and new Reactor task (merge with rebase) (#183)
* Reactor: For reference, mention additional inputs in app properties

* Polish: fix javadoc copypasta and mark potential problem in GitRepo

* Common: Expose method for git log (list revisions between 2 refs)

* Common: Only post-process RtGithub beans into CachingGithub

* Common: Make Sagan noOp if property is not explicitly set

* Common: Fix Process command executor outputting to app's stdout

This prevents the command executor from capturing the command's output.

* Common: Fix findTagOrBranchHeadRevision and log

In findTag... we need to compare name using refs/tags/
and refs/heads/ prefixes.

In log we need to peel symbolic tags to get the right
ObjectId. Optional.map did seem to cause issues.

* Common: Add isMergeCommit to SimpleCommit

* Common: Add method to find tag SHA by name

* Common: Polish how exit codes are generated and used

* Common: Add BuildReportHandler to show report earlier than last step

This commit also filters out tasks that haven't run yet, avoiding
NPE due to endTime being null.

* Reactor: restart task should not be part of dry-runs

* Reactor: Alter Gradle build command to include bumpVersionsInReadme task

* Reactor: Add GenerateReleaseNotesTask

Also added partial tests for the task.

Avoids generating notes if snapshot, mark as pre-release if milestone
or rc.

* Reactor: Split out configurations and use profiles for test

* Reactor: Fix org in application.yml

* Reactor: Fix some formatting

* Reactor: Force github OAuth token at Github client creation

* Reactor: Split parseChangelog into several more testable methods

* Reactor: Let interactive GenerateReleaseNotesTask force a log range

* Reactor: Allow multiple dispatch of note entries

Switching from a single TYPE to an EnumSet

* Reactor: Extract issue numbers in title too just in case

* Reactor: Fix alternative titles markdown and description

Also better protect agains Github client failures when
fetching more info like title and labels.

* Reactor: Polish format (newlines) in tag input, notes output

* Reactor: Check tag exists but not release. Check on SHA1

* Reactor: Make checks we can save notes draft BEFORE querying commits

* Reactor: Attempt to find existing release draft (max 2 month old), avoid unnecessary calls

If an existing draft is found, append notes to it.

* Reactor: Ask only for "from" change for interactive log/release notes
2020-01-22 10:44:59 +01:00
Marcin Grzejszczak
7632b99031 Don't run post release tasks if main ones failed 2020-01-21 14:17:36 +01:00
Marcin Grzejszczak
0506113ee7 Fixed
- not breaking the build when a release task has failed
- added skipped state of task
2020-01-21 13:39:11 +01:00
Marcin Grzejszczak
b8c8d1dc2c Making tests less brittle 2020-01-20 13:06:07 +01:00
Marcin Grzejszczak
7667643176 Added automatic github caching 2020-01-09 17:09:20 +01:00
Marcin Grzejszczak
25f16ba90e Added release train shortcut for args 2020-01-09 16:53:01 +01:00
Marcin Grzejszczak
78d645c4e4 Parametrized org name 2020-01-09 16:28:03 +01:00
Marcin Grzejszczak
36a8acc591 Added reactor setup 2020-01-07 16:21:19 +01:00
Marcin Grzejszczak
7e5d225a7e Should not throw an exception from batch 2019-12-28 14:07:45 +01:00
Marcin Grzejszczak
b8d17b6dc8 Catching execution result 2019-12-28 13:49:38 +01:00
Marcin Grzejszczak
27f5c7be4d Marking gitOrgUrl mandatory again 2019-12-23 14:18:16 +01:00
Marcin Grzejszczak
db4b732ab5 Not marking gitOrgUrl as mandatory 2019-12-23 14:07:41 +01:00
Marcin Grzejszczak
8992e45321 Refactoring to batch (#181)
The rationale of this pull request is to

* have more maintainable and granular code
* not maintain the custom made job engine
* allow the users to customize the defaults of the releaser more easy
* allow the users to create their own steps without the need to change any existing code
* allow the users to fully change the flows and tasks logic
* abstract underlying batch mechanism (Spring Batch) so it doesn't leak to production code
* allow parallelization of the release process and release tasks
2019-12-23 13:49:58 +01:00
Marcin Grzejszczak
ea85372e05 Updated docs 2019-12-09 19:13:28 +01:00
Marcin Grzejszczak
cdc1605ef5 All post release tasks are opt in; fixes gh-176 2019-11-22 20:27:17 +01:00
Marcin Grzejszczak
5b23bdb399 Introduces symlinks for current documentation
fixes gh-172
2019-11-22 16:14:53 +01:00
Ryan Baxter
e2d3cf0e2a Create SECURITY.md 2019-11-19 16:55:10 -05:00
Marcin Grzejszczak
9b26b40371 Added option to resolve {{nextVersion}} {{version}} and {{oldVersion}} in all commands
fixes gh-171
2019-11-19 13:55:14 +01:00
Marcin Grzejszczak
b8610c5aef No /bin/bash -c when no os operator passed 2019-11-18 15:21:36 +01:00
Marcin Grzejszczak
2e6c3fc7cf Debug for command executor 2019-11-18 15:08:30 +01:00
Marcin Grzejszczak
57d3259437 Debug for command executor 2019-11-18 15:05:57 +01:00
Marcin Grzejszczak
eca8bb013f Fixed setting of docs url for old trains 2019-11-18 15:05:57 +01:00
Marcin Grzejszczak
988e4f3b8a THe Bom version can have a dash not a dot 2019-11-15 15:58:26 +01:00
Marcin Grzejszczak
b6893a66cc Ignored one tet 2019-11-15 12:55:27 +01:00
Marcin Grzejszczak
10eeaf1b11 Simplifying redirects for Spring Cloud docs
fixes gh-165
2019-11-15 12:31:36 +01:00
Marcin Grzejszczak
91215186ed Fixed working directory issues 2019-10-29 16:08:24 +01:00
Marcin Grzejszczak
ebf0bd8876 Polish 2019-10-29 15:16:42 +01:00
Marcin Grzejszczak
61ff4d7fa7 Updates following the first run of Reactor build 2019-10-29 14:27:53 +01:00
Marcin Grzejszczak
c08b028389 Abstracted GitHub actions
- Spring Cloud guides and start.spring.io is now treated as a Spring Cloud custom action
- improved start.spring.io integration

fixes gh-158
fixes gh-159
2019-10-25 17:13:42 +02:00
Marcin Grzejszczak
6fa70843a3 Apply dry run release per project when that option is set 2019-10-24 14:49:46 +02:00
Marcin Grzejszczak
2deb04af16 Added dry-run option; fixes gh-163 2019-10-24 13:54:36 +02:00
Marcin Grzejszczak
df01ac1bf3 Ignoring bats fixtures 2019-10-03 21:15:15 +02:00
Marcin Grzejszczak
8ab30ea6ca Ignoring bats fixtures 2019-10-03 20:54:11 +02:00