Follow-up to Common library update that need to be applied to all analyzers

After pushing some changes to the common library, we need to bump this dependency in all analyzers and adapt the code accordingly.

Related issue: https://gitlab.com/gitlab-org/gitlab-ee/issues/10030#note_166534869

Things covered in this issue:

  • Implement an automatic process to create MRs for all analyzers if version of common library is bumped up. For example, currently, 20 analyzers that are using common. If we bump up the version of common, we should have a process that is able to create 20 MRs(one for each analyzer) automatically.
  • Predefined title, description, labels of all generated MRs.

All the work related to changelog is addressed in this issue.

Implementation Plan

Work in https://gitlab.com/gitlab-org/security-products/ci-templates/blob/master/includes-dev/analyzer.yml

  • Add job that can be triggered to update to a specific version of common in the test container and run tests
  • Add job that can be triggered to create an MR if the analyzer isn't using the latest version of common

Work in https://gitlab.com/gitlab-org/security-products/analyzers/common/blob/master/.gitlab-ci.yml

  • Add CI stage to run tests on all analyzers with the current version of common. The analyzer tests should be non blocking in case we need to introduce breaking changes in common. Having this will make it clear how many analyzers will be broken by an MR. It also makes it clear the amount of work to required for all the MRs that will be auto generated. (enumerate the list of analyzers below this checkbox)
  • Add the stages that only get added if the CI run is for a release that will create an MR that needs to update to the newly released version of common (enumerate the list of analyzers below this checkbox)
Edited by Saikat Sarkar