Skip to content
GitLab Next
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab GitLab
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 43,823
    • Issues 43,823
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1,411
    • Merge requests 1,411
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

We will soon be undergoing scheduled maintenance to our database layer. We expect GitLab.com to be unavailable for up to 2 hours starting from 2022-07-02 06:00 UTC. Please note that any CI jobs that start before the maintenance window but complete during the window period will fail and may need to be started again.

  • GitLab.org
  • GitLabGitLab
  • Issues
  • #213336
Closed
Open
Created Apr 03, 2020 by Viktor Nagy (GitLab)@nagyv-gitlab🕊Developer5 of 5 tasks completed5/5 tasks

Moving Auto DevOps jobs syntax to `rules`

Goal

Switch all Auto DevOps jobs from using only / except to rules.

Impact

Only users who extend Auto DevOps jobs

Impacted users (small percentage?) will see their pipeline fail to start with something like:

jobs:<job-name> config key may not be used with `rules`: only
  1. AFAIK, this only impacts users who extend the templates below, and uses only/except in their extension
  2. We cannot mix only/except and rules in the same job. So there is currently nothing for users to do except wait for the templates to be updated, (it will break their pipeline, but only some, see 1), then update their extension to use rules.

What if I am not ready to update my pipelines ?

For affected users who extend Auto DevOps templates, but are not ready to update their pipelines, you can switch to the GitLab 12.10 based templates.

Impact on GitLab.com [Tentatively scheduled for 2020-05-13]

Users who extend Auto DevOps and uses only/except in their extension will immediately have their pipeline fail once deployed to GitLab.com

  • Update 2020-05-11: I have set MWPS on all 5 MRs referred to in #proposal. Assuming no broken masters, deploys are OK, this should reach GitLab.com in the next 24 hours.
  • Update 2020-05-12: The MRs have reach staging.gitlab.com. This should be live on gitlab.com today
  • Update 2020-05-13: This was deployed to GitLab.com at May 13, 2020 7:56pm GMT+0000

Proposal

Switch all of the following jobs in lib/gitlab/ci/templates/Jobs/ to using if:

  • Build.gitlab-ci.yml: !30895 (merged)
  • Test.gitlab-ci.yml: !30876 (merged)
  • Deploy.gitlab-ci.yml: !31290 (merged)
  • [ ] DAST-Default-Branch-Deploy.gitlab-ci.yml (I'm going to assume this will be covered by devopssecure
  • Browser-Performance-Testing.gitlab-ci.yml: !31413 (merged)
  • Code-Quality.gitlab-ci.yml: !30896 (merged)

Note: Work was already done in !25492 (merged) but had to be reverted as it introduced a breaking change

Note2: This is the first part of fixing Auto DevOps tests due to changing CI/CD syntax. See: #34304 (comment 316597080)

Edited May 13, 2020 by Thong Kuah
Assignee
Assign to
Time tracking