MPS 2025.3 Help

GitLab CI/CD

MPS recognizes and offers coding assistance for .gitlab-ci.yml files, where you can define instructions for GitLab CI/CD pipelines. For more details, refer to the GitLab documentation.

Features

The following features are supported:

  • Syntax highlighting

    MPS provides syntax highlighting for all components of GitLab CI/CD configuration files. You can customize the color scheme for different parts of the configuration:

  • Inspections

    MPS helps you detect configuration issues in your GitLab CI/CD configuration file in real time. This includes duplicated job usage, undefined jobs, and undefined stages.

  • Code completion

    Get completion suggestions for the pipeline configuration syntax, keywords, and CI/CD variables.

    Code completion for pipeline configuration syntax
  • Code navigation

    Quickly navigate between stage and job declarations and usages in your CI/CD configuration file.

  • Quick documentation

    Hover over a symbol or use the Documentation tool window (Ctrl+Q) to view quick documentation, including links to the official GitLab CI reference.

    Quick documentation for GitLab CI configuration
  • Find usages

    Search for usages of stage and job symbols directly in your configuration file.

  • Rename refactoring

    You can change the name of stage and job symbols in declarations and usages by applying the Rename refactoring (Shift+F6).

  • Detection of Shell script language injections

    MPS automatically detects Shell script injections in before_script, script, and after_script blocks of your configuration file and marks them as Injected Language: Shell Script. The IDE treats these code snippets as full-featured Shell scripts. You can edit Shell script fragments, explain them, and benefit from language-specific features, like syntax highlighting and code completion.

    You can disable this behavior using the Switch shell script injection intention action on the injected section in your configuration file. Note that switching Shell script injections on or off affects the whole project.

    Shell script injection in a GitLab CI configuration file

Troubleshooting

Missing coding assistance features

To ensure full support of GitLab CI/CD, check that the correct JSON schema is used for your .gitlab-ci.yml file.

MPS automatically loads a set of popular schemas, including GitLab's CI schema (usually named gitlab-ci).

If features like code completion, inspections, or navigation are missing or not working as expected, the issue may be related to JSON schema configuration.

Configure a JSON schema

  • Open your .gitlab-ci.yml file in the editor and check the JSON Schema widget in the bottom right corner. Make sure that gitlab-ci is selected.

    JSON Schema widget
  • If the schema is not listed:

    1. Download it manually from https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json.

    2. In MPS, go to Settings | Languages & Frameworks | Schemas and DTDs | JSON Schema Mappings and add a custom JSON schema mapping.

    3. Assign the added schema to your .gitlab-ci.yml file using the JSON Schema widget.

26 August 2025