Improve the process regarding deprecating support of OS versions that will soon reach EOL

Right now, our process of deprecating support for OS distributions that reach EOL soon is as follows

  1. We have a Slack reminder that reminds the team to check for upcoming OS deprecations - It is run every 3 months.
  2. Someone checks related websites of all OSs we support and create issues regarding dropping support for them
  3. Once the removal is near, we may mark the OS as deprecated in our code so reconfigure runs will print out a warning
  4. We announce the deprecation in release prior to the one where support will be removed
  5. We remove the relevant jobs from CI pipeline of omnibus-gitlab
  6. In the blogpost MR of the release where support is removed (i.e, the release immediately after the jobs are removed from CI - which doesn't have any package builds for the OS), we remove mention of the OS from install page.

In gitlab-org/release/tasks#747 (comment 160310412), @clefelhocz1 asked about the possibility of improving this process, as one-month notice may be too short.

One proposal is

  1. Decide how early we want to deprecate support for an OS - 3 months?
  2. When someone opens an issue for dropping the support for an OS, either open an MR adding the OS to deprecated list in our code, or open an issue scheduled for the upcoming release to do it.
  3. Start announcing deprecation in upcoming three blogposts
  4. Remove support
  5. Remove OS from install page.

/cc @gitlab-org/distribution

Edited by Balasankar 'Balu' C