Skip to content

Draft: Add logic to automate OS deprecation issue creation

Balasankar 'Balu' C requested to merge automate-os-deprecation into master

What does this MR do?

Add logic to automate OS deprecation issue creation

Testing

  1. Set necessary env vars

    export EOL_DRY_RUN=true
    export CI_PROJECT_ID=gitlab-org/omnibus-gitlab
    export CI_API_V4_URL=https://gitlab.com/api/v4
    export GITLAB_API_REPORTER_TOKEN=<a_token_that_can_read_issues_in_omnibus_gitlab_project>
  2. Run the rake task

    $ bundle exec rake project_management:generate_eol_issues
  3. See output similar to below

    Outut
    I, [2024-10-11T19:53:31.301119 #680751]  INFO -- Ubuntu 20.04: Fetching EOL date.
    I, [2024-10-11T19:53:32.232619 #680751]  INFO -- Ubuntu 20.04: EOL: 2025-04-02
    I, [2024-10-11T19:53:32.233235 #680751]  INFO -- Ubuntu 20.04: Need not be deprecated yet
    I, [2024-10-11T19:53:32.233267 #680751]  INFO -- Ubuntu 22.04: Fetching EOL date.
    I, [2024-10-11T19:53:33.255854 #680751]  INFO -- Ubuntu 22.04: EOL: 2027-04-01
    I, [2024-10-11T19:53:33.256061 #680751]  INFO -- Ubuntu 22.04: Need not be deprecated yet
    I, [2024-10-11T19:53:33.256085 #680751]  INFO -- Ubuntu 24.04: Fetching EOL date.
    I, [2024-10-11T19:53:34.173241 #680751]  INFO -- Ubuntu 24.04: EOL: 2029-04-25
    I, [2024-10-11T19:53:34.173546 #680751]  INFO -- Ubuntu 24.04: Need not be deprecated yet
    I, [2024-10-11T19:53:34.173580 #680751]  INFO -- Debian 10: Fetching EOL date.
    I, [2024-10-11T19:53:35.156958 #680751]  INFO -- Debian 10: EOL: 2024-06-30
    I, [2024-10-11T19:53:35.157182 #680751]  INFO -- Debian 10: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:37.045132 #680751]  INFO -- Debian 10: Issue already exists: https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8607
    I, [2024-10-11T19:53:37.045201 #680751]  INFO -- Debian 11: Fetching EOL date.
    I, [2024-10-11T19:53:37.965059 #680751]  INFO -- Debian 11: EOL: 2026-08-31
    I, [2024-10-11T19:53:37.965240 #680751]  INFO -- Debian 11: Need not be deprecated yet
    I, [2024-10-11T19:53:37.965261 #680751]  INFO -- Debian 12: Fetching EOL date.
    I, [2024-10-11T19:53:38.989132 #680751]  INFO -- Debian 12: EOL: 2028-06-10
    I, [2024-10-11T19:53:38.989354 #680751]  INFO -- Debian 12: Need not be deprecated yet
    I, [2024-10-11T19:53:38.989390 #680751]  INFO -- CentOS 7: Fetching EOL date.
    I, [2024-10-11T19:53:39.810161 #680751]  INFO -- CentOS 7: EOL: 2024-06-30
    I, [2024-10-11T19:53:39.810352 #680751]  INFO -- CentOS 7: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:41.513398 #680751]  INFO -- CentOS 7: Issue already exists: https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8447
    I, [2024-10-11T19:53:41.513466 #680751]  INFO -- AlmaLinux 8: Fetching EOL date.
    I, [2024-10-11T19:53:42.572599 #680751]  INFO -- AlmaLinux 8: EOL: 2029-03-01
    I, [2024-10-11T19:53:42.572818 #680751]  INFO -- AlmaLinux 8: Need not be deprecated yet
    I, [2024-10-11T19:53:42.572843 #680751]  INFO -- AlmaLinux 9: Fetching EOL date.
    I, [2024-10-11T19:53:43.604316 #680751]  INFO -- AlmaLinux 9: EOL: 2032-05-31
    I, [2024-10-11T19:53:43.604520 #680751]  INFO -- AlmaLinux 9: Need not be deprecated yet
    I, [2024-10-11T19:53:43.604562 #680751]  INFO -- OpenSUSE 15.5: Fetching EOL date.
    I, [2024-10-11T19:53:44.723532 #680751]  INFO -- OpenSUSE 15.5: EOL: 2024-12-31
    I, [2024-10-11T19:53:44.723749 #680751]  INFO -- OpenSUSE 15.5: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:46.705520 #680751]  INFO -- OpenSUSE 15.5: Issue does not exist.
    I, [2024-10-11T19:53:46.705606 #680751]  INFO -- OpenSUSE 15.5: Dry run. Not creating an issue.
    I, [2024-10-11T19:53:46.705627 #680751]  INFO -- AmazonLinux 2: Fetching EOL date.
    I, [2024-10-11T19:53:47.796554 #680751]  INFO -- AmazonLinux 2: EOL: 2025-06-30
    I, [2024-10-11T19:53:47.796762 #680751]  INFO -- AmazonLinux 2: Need not be deprecated yet
    I, [2024-10-11T19:53:47.796788 #680751]  INFO -- AmazonLinux 2023: Fetching EOL date.
    I, [2024-10-11T19:53:49.126677 #680751]  INFO -- AmazonLinux 2023: EOL: 2028-03-15
    I, [2024-10-11T19:53:49.126813 #680751]  INFO -- AmazonLinux 2023: Need not be deprecated yet
    I, [2024-10-11T19:53:49.126840 #680751]  INFO -- SLES 12.5: Fetching EOL date.
    I, [2024-10-11T19:53:50.354889 #680751]  INFO -- SLES 12.5: EOL: 2024-10-31
    I, [2024-10-11T19:53:50.355104 #680751]  INFO -- SLES 12.5: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:52.200522 #680751]  INFO -- SLES 12.5: Issue does not exist.
    I, [2024-10-11T19:53:52.200643 #680751]  INFO -- SLES 12.5: Dry run. Not creating an issue.
    I, [2024-10-11T19:53:52.200667 #680751]  INFO -- SLES 15.2: Fetching EOL date.
    I, [2024-10-11T19:53:53.279533 #680751]  INFO -- SLES 15.2: EOL: 2021-12-31
    I, [2024-10-11T19:53:53.279676 #680751]  INFO -- SLES 15.2: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:55.275602 #680751]  INFO -- SLES 15.2: Issue does not exist.
    I, [2024-10-11T19:53:55.275676 #680751]  INFO -- SLES 15.2: Dry run. Not creating an issue.
    I, [2024-10-11T19:53:55.275693 #680751]  INFO -- Raspberry_Pi_OS 10: Fetching EOL date.
    I, [2024-10-11T19:53:56.302559 #680751]  INFO -- Raspberry_Pi_OS 10: EOL: 2024-06-30
    I, [2024-10-11T19:53:56.302805 #680751]  INFO -- Raspberry_Pi_OS 10: Checking if issue for deprecation already exists.
    I, [2024-10-11T19:53:57.626306 #680751]  INFO -- Raspberry_Pi_OS 10: Issue does not exist.
    I, [2024-10-11T19:53:57.626444 #680751]  INFO -- Raspberry_Pi_OS 10: Dry run. Not creating an issue.
    I, [2024-10-11T19:53:57.626468 #680751]  INFO -- Raspberry_Pi_OS 11: Fetching EOL date.
    I, [2024-10-11T19:53:58.570024 #680751]  INFO -- Raspberry_Pi_OS 11: EOL: 2026-08-31
    I, [2024-10-11T19:53:58.570260 #680751]  INFO -- Raspberry_Pi_OS 11: Need not be deprecated yet
    I, [2024-10-11T19:53:58.570291 #680751]  INFO -- Raspberry_Pi_OS 12: Fetching EOL date.
    I, [2024-10-11T19:53:59.643019 #680751]  INFO -- Raspberry_Pi_OS 12: EOL: 2028-06-10
    I, [2024-10-11T19:53:59.643232 #680751]  INFO -- Raspberry_Pi_OS 12: Need not be deprecated yet

Related issues

Checklist

See Definition of done.

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Required

  • MR title and description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • Latest Merge Result pipeline is green.
  • When ready for review, MR is labeled workflowready for review per the Distribution MR workflow.

For GitLab team members

If you don't have access to this, the reviewer should trigger these jobs for you during the review process.

  • The manual Trigger:ee-package jobs have a green pipeline running against latest commit.
  • If config/software or config/patches directories are changed, make sure the build-package-on-all-os job within the Trigger:ee-package downstream pipeline succeeded.
  • If you are changing anything SSL related, then the Trigger:package:fips manual job within the Trigger:ee-package downstream pipeline must succeed.
  • If CI configuration is changed, the branch must be pushed to dev.gitlab.org to confirm regular branch builds aren't broken.

Expected (please provide an explanation if not completing)

  • Test plan indicating conditions for success has been posted and passes.
  • Documentation created/updated.
  • Tests added.
  • Integration tests added to GitLab QA.
  • Equivalent MR/issue for the GitLab Chart opened.
  • Validate potential values for new configuration settings. Formats such as integer 10, duration 10s, URI scheme://user:passwd@host:port may require quotation or other special handling when rendered in a template and written to a configuration file.
Edited by Balasankar 'Balu' C

Merge request reports

Loading