aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-docs/src/pages
diff options
context:
space:
mode:
authorMikeBirnstiehl <michael.birnstiehl@sonarsource.com>2019-10-04 10:47:50 -0500
committerSonarTech <sonartech@sonarsource.com>2019-10-05 20:21:03 +0200
commitdfe6b9e39a63507bba9900f5a68565ca82f3627f (patch)
tree809c3ba48cb576c772fb674fbff643bc4cd8dc1a /server/sonar-docs/src/pages
parent0ed1660e24ef26c928121e8d6395e4749d2d3ea9 (diff)
downloadsonarqube-dfe6b9e39a63507bba9900f5a68565ca82f3627f.tar.gz
sonarqube-dfe6b9e39a63507bba9900f5a68565ca82f3627f.zip
DOCS add GitLab CICD page
Diffstat (limited to 'server/sonar-docs/src/pages')
-rw-r--r--server/sonar-docs/src/pages/project-administration/gitlab-cicd.md76
1 files changed, 76 insertions, 0 deletions
diff --git a/server/sonar-docs/src/pages/project-administration/gitlab-cicd.md b/server/sonar-docs/src/pages/project-administration/gitlab-cicd.md
new file mode 100644
index 00000000000..1d102a88e29
--- /dev/null
+++ b/server/sonar-docs/src/pages/project-administration/gitlab-cicd.md
@@ -0,0 +1,76 @@
+---
+title: Running Scanners with GitLab CI/CD
+url: /project-administration/gitlab-cicd/
+---
+
+_Merge Request analysis is available as part of [Developer Edition](https://redirect.sonarsource.com/editions/developer.html) and [above](https://www.sonarsource.com/plans-and-pricing/)._
+
+SonarScanners running in GitLab CI/CD Jobs will automatically detect branches or Merge Requests being built so you don't need to specifically pass them as parameters to the scanner.
+
+## Activating builds
+By default, GitLab will build all branches but not Merge Requests.
+
+### Developer Edition and above
+To build Merge Requests, you need to update the `.gitlab-ci.yml` file by adding `merge_requests` to the `only` parameter. See the following examples for more information.
+
+### Community Edition
+Because Community Edition doesn't support branches, you should only analyze your main branch. You can restrict analysis to that branch by adding the branch name to the `only` parameter.
+
+## Example configurations
+The following examples show you how to configure the execution of SonarScanner for Gradle, SonarScanner for Maven, and SonarScanner CLI with GitLab CI/CD.
+
+### SonarScanner for Gradle:
+
+```
+image: gradle:alpine
+variables:
+ SONAR_TOKEN: "your-sonarqube-token"
+ SONAR_HOST_URL: "http://your-sonarqube-instance.org"
+sonarqube-check:
+ stage: test
+ script: gradle sonarqube
+ only:
+ - merge_requests
+ - branches
+```
+
+### SonarScanner for Maven:
+
+```
+image: maven:latest
+variables:
+ SONAR_TOKEN: "your-sonarqube-token"
+ SONAR_HOST_URL: "http://your-sonarqube-url"
+sonarqube-scan:
+ script:
+ - mvn verify sonar:sonar
+ only:
+ - merge_requests
+ - branches
+```
+
+### SonarScanner CLI:
+
+```
+image:
+ name: sonarsource/sonar-scanner-cli:latest
+ entrypoint: [""]
+variables:
+ SONAR_TOKEN: "your-sonarqube-token"
+ SONAR_HOST_URL: "http://your-sonarqube-instance.org"
+sonarqube-check:
+ stage: test
+ script:
+ - sonar-scanner
+ only:
+ - merge_requests
+ - branches
+```
+
+**Note:** A project key has to be provided through `sonar-project.properties` or through the command line parameter. For more information, see the [SonarScanner](/analysis/scan/sonarscanner/) page.
+
+## Setting environment variables for all builds
+Instead of specifying environment variables in your `.gitlab-ci.yml` file (such as `SONAR_TOKEN` and `SONAR_HOST_URL`), you can set them securely for all pipelines in GitLab's settings. See [Creating a Custom Environment Variable](https://docs.gitlab.com/ee/ci/variables/#creating-a-custom-environment-variable) for more information.
+
+## For more information
+For more information on configuring your build with GitLab CI/CD, see the [GitLab CI/CD Pipeline Configuration Reference](https://gitlab.com/help/ci/yaml/README.md).