redhat-rcue / rcue

Red Hat Common User Interface (RCUE) reference implementation
Other
26 stars 16 forks source link

Automate the Patternfly releases process via Travis #62

Closed dlabrecq closed 7 years ago

dlabrecq commented 7 years ago

Automate the Patternfly releases process via Travis. This uses a custom tag, which automatically triggers Travis to build, publish, and release. If the Patternfly release is successful, RCUE and Angular Patternfly are built next. If Angular is successful, Patternfly Org is released s well.

Instead of spending between half and a full day releasing Patternfly, Angular PAtternfly, RCUE, and Patternfly Org; the automation manages to get this effort down to about 15-30 minutes.

Should the build fail at any point, it can be fixed and restarted. For example, If Angular Patternfly fails, it can be restarted and Patternfly Org will be released as well. We don't necessarily need to bump the npm version number again or rebuild Patternfy. The npm publish is one of the last steps in the build.

Of course, we still have the ability to run the release manually with the existing scripts I created earlier. The new automation uses these scripts itself.

Spoke to Brian about creating a separate repo for the build and GitHub publish scripts. That way, there is one version of the scripts for all repos. Although, combining scripts would be a next step as each repo has subtle differences in the build.

Note: Travis is free to all open source projects, but the RCUE repo is private. In order to be part of the automated release, we either need to make RCUE public or buy a Travis subscription.