Skip to content

gitlab-ci Plugin

This plugin creates GitLab CI workflow.

It downloads a template of your choice, renders it with provided parameters, and creates a GitLab CI file for your repo.


The following content is an example of the "tool file".

For more information on the main config, the tool file, and the var file of DevStream, see Core Concepts Overview and DevStream Configuration.

Plugin config example:

# name of the tool
- name: gitlab-ci
  # id of the tool instance
  instanceID: default
  # format: name.instanceID; If specified, dtm will make sure the dependency is applied first before handling this tool.
  dependsOn: [ ]
  # options for the plugin
      # scm common field
      branch: YOUR_REPO_BRANCH
      token: YOUR_REPO_SCM_TOKEN
      # you can directly use the url of repo ( for example)
      url: YOUR_REPO_URL
      # or you can config detailed fields for this repo
      owner: YOUR_REPO_OWNER
      org: YOUR_REPO_ORG
      name: YOUR_REPO_NAME
      scmType: gitlab
      # you can config this field if you are using self-host gitlab
      # configLocation is the location of gitlab ci file, it can be remote or local address,
      # if you don't config this field, devstream will use
      configLocation: .gitlabci.yml
      # language config is required
        framework: # support gin/flask/spring for now
        name: LANGUAGE # support go/java/nodejs/python for now
        # image repo URL for pulling/pushing
        # image repo user name
        user: admin
        # image repo password
        password: YOUR_IMAGE_REPO_PASSWORD
    # whether create gitlab runner for this project
    # if runner.enable is true, devstream will use helm to install the project's runner
    # and diable shared runner of this project
      enable: false


  • scm config option represents codebase location; for more info, you can refer to SCM Config.
  • The pipeline config option controls CI stages; you can refer to Pipeline Config for more info.