automate monthly issue
Production checks rely on the current milestone to identify the monthly issue in order to log the check results.
%13.1 will expire June the 17th, starting from the 18th auto-deploy branches will start with 13-2-auto-deploy
Monthly release preparation is a manual chatops action at the moment, but we need to have it ready when we deploy on production June the 18th.
Because of unclear milestone change dates gitlab-com/gl-infra/delivery#810 (closed) will be better to tie monthly issue preparation to auto-deploy branch preparation, in this way we can later tweak milestone expirations and this will still work.
What's included in this MR
Our rake
files are a bit too complex, here I started a refactoring that moves rake tasks to a command pattern into lib/release_tools/tasks/**/*.rb
.
- Refactor
rake auto_deploy:prepare
intolib/release_tools/tasks/auto_deploy/prepare.rb
- Move all global
task_helper
into a module in ``lib/release_tools/tasks/helper.rb` - Refactor
rake release:prepare
intolib/release_tools/tasks/auto_deploy/prepare.rb
- Refactor
rake release:issue
intolib/release_tools/tasks/auto_deploy/issue.rb
- Invoke
ReleaseTools::Tasks::Release::Prepare
fromReleaseTools::Tasks::AutoDeploy::Prepare