Skip to content

Warn that Auto DevOps does not work if project already has gitlab-ci.yml file

If a project already has a gitlab-ci.yml file, then enabling Auto DevOps will not work. We need to inform the user of this in some way. A couple options to consider:

  • Disable yml file if Auto DevOps is enabled. However, this may be an unexpected side effect.
  • Inform user that yml file must be deleted or renamed in order to enable Auto DevOps.

Proposal

Custom CI Path is configured and file has been merged into master. User enables Auto DevOps

  1. User clicks Enable Auto DevOps
  2. User clicks Save
  3. Banner appears for project that says:

banner-alert--config-file

4a. If user clicks Remove custom CI path we redirect the user to a merge request page that deletes the file that was defined as the Custom CI path

4b. If the user clicks ×, then we dismiss the banner alert and continue to use the custom CI path for the pipelines configuration.

User enables Auto DevOps and adds a custom CI path at the same time

Same as above

banner-alert--config-file

Auto DevOps is enabled. User pushes .gitlab-ci.yml file

  1. User creates a merge request that includes a .gitlab-ci.yml file
  2. Within the MR, we show a message warning the user that merging this file will disable the Auto DevOps pipeline configuration.

Screen_Shot_2018-03-08_at_1.08.42_PM

Auto DevOps is enabled. User has custom ci config file enabled and pushes said file

  1. User creates a merge request that includes the file they have declared as their custom ci config file
  2. Within the MR, we show a message warning the user that merging this file will disable the Auto DevOps pipeline configuration.

[Same mockup as above with the below copy]

This branch contains .filename which is being used as a custom CI config file. Merging will disable the Auto DevOps pipeline configuration for this project.

Owners

UX: @tauriedavis FE: @jivanvl BE: @matteeyah

Auto DevOps is enabled. Custom file path is pushed to project and added in CI/CD settings

  1. User creates a custom CI config path, and merges it into master within the project. We will not know at this point if they intend to use the file as a custom CI path so we cannot show anything in the Merge Request.
  2. User adds custom CI config path to CI/CD settings
  3. User clicks Save
  4. Modal appears asking the user to confirm disabling Auto DevOps.

modal--config-file

Auto DevOps is enabled and Custom CI Config path is being used in master

In any of the above scenarios, if the user decides to use the Custom CI config path then we show a message next to Auto DevOps informing the user that the Auto DevOps pipeline configuration is not being used.

Screen_Shot_2018-03-08_at_1.05.42_PM

Auto DevOps is enabled and no Custom CI Config path is being used in master

Screen_Shot_2018-03-08_at_1.07.25_PM

Edited by Kamil Trzciński