From b726ee906f43dcfe4d7522441b7b5cc5a652df4f Mon Sep 17 00:00:00 2001 From: michaelbirnstiehl Date: Wed, 29 Sep 2021 13:22:52 -0500 Subject: [PATCH] SONAR-15449 Document Codemagic CI instructions --- .../src/pages/analysis/codemagic.md | 47 +++++++++++++++++++ .../sonar-docs/src/pages/analysis/jenkins.md | 4 +- .../static/SonarQubeNavigationTree.json | 3 +- .../static/StaticNavigationTree.json | 3 +- 4 files changed, 53 insertions(+), 4 deletions(-) create mode 100644 server/sonar-docs/src/pages/analysis/codemagic.md diff --git a/server/sonar-docs/src/pages/analysis/codemagic.md b/server/sonar-docs/src/pages/analysis/codemagic.md new file mode 100644 index 00000000000..6523f985a02 --- /dev/null +++ b/server/sonar-docs/src/pages/analysis/codemagic.md @@ -0,0 +1,47 @@ +--- +title: Codemagic Integration +url: /analysis/codemagic/ +--- + +SonarScanners running in Codemagic can automatically detect branches and merge or pull requests in certain jobs. You don't need to explicitly pass the branch or pull request details. + +## Adding SonarQube scripts to your Codemagic .yml file +To analyze your code when using Codemagic, you need to add the following scripts to your existing `codemagic.yaml` file: + +``` + scripts: + - | + # download and install SonarQube + wget -O $FCI_BUILD_DIR/sonar-scanner.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.4.0.2170-macosx.zip + unzip $FCI_BUILD_DIR/sonar-scanner.zip + mv sonar-scanner-* sonar-scanner + - | + # Generate and upload code analysis report + export PATH=$PATH:$FCI_BUILD_DIR/sonar-scanner/bin + sonar-scanner \ + -Dsonar.projectKey=YOUR_PROJECT_KEY \ + -Dsonar.host.url=SONARQUBE_URL \ +``` + +You also need to define `SONAR_TOKEN` as a Codemagic environment variable. + +## Automatically detecting pull requests +For SonarQube to automatically detect pull requests when using Codemagic, you need to add an event in the triggering section of your `codemagic.yaml` file as shown in the following snippet: +``` + triggering: + events: + - pull_request +``` + +For triggering to work, you also need to set up a link between Codemagic and your DevOps platform (Bitbucket, Github, etc.). See the [Codemagic documentation](https://docs.codemagic.io/configuration/webhooks/) for more information. + +## Caching the .sonar folder + +Caching the `.sonar` folder saves time on subsequent analyses. To do this, add the following snippet to your `codemagic.yaml` file: + +``` + cache: + cache_paths: + - ~/.sonar +``` + diff --git a/server/sonar-docs/src/pages/analysis/jenkins.md b/server/sonar-docs/src/pages/analysis/jenkins.md index 7e754f3a0dc..82a00ad276e 100644 --- a/server/sonar-docs/src/pages/analysis/jenkins.md +++ b/server/sonar-docs/src/pages/analysis/jenkins.md @@ -1,9 +1,9 @@ --- -title: Jenkins +title: Jenkins Integration url: /analysis/jenkins/ --- -SonarScanners running in Jenkins can automatically detect branches and Merge or Pull Requests in certain jobs. You don't need to explicitly pass the branch or Pull Request details. +SonarScanners running in Jenkins can automatically detect branches and Merge or pull requests in certain jobs. You don't need to explicitly pass the branch or pull request details. ## Analysis Prerequisites diff --git a/server/sonar-docs/static/SonarQubeNavigationTree.json b/server/sonar-docs/static/SonarQubeNavigationTree.json index 35d565e1f21..f84c38be252 100644 --- a/server/sonar-docs/static/SonarQubeNavigationTree.json +++ b/server/sonar-docs/static/SonarQubeNavigationTree.json @@ -75,7 +75,8 @@ "title": "CI Integration", "children": [ "/analysis/ci-integration-overview/", - "/analysis/jenkins/" + "/analysis/jenkins/", + "/analysis/codemagic/" ] }, "/analysis/scm-integration/", diff --git a/server/sonar-docs/static/StaticNavigationTree.json b/server/sonar-docs/static/StaticNavigationTree.json index 48dcddee689..846694b0d68 100644 --- a/server/sonar-docs/static/StaticNavigationTree.json +++ b/server/sonar-docs/static/StaticNavigationTree.json @@ -109,7 +109,8 @@ "title": "CI Integration", "children": [ "/analysis/ci-integration-overview/", - "/analysis/jenkins/" + "/analysis/jenkins/", + "/analysis/codemagic/" ] }, "/analysis/scm-integration/", -- 2.39.5