]> source.dussan.org Git - sonarqube.git/commitdiff
Document AutoScan for SonarCloud (#1245)
authorFabrice Bellingard <bellingard@gmail.com>
Thu, 14 Feb 2019 16:33:46 +0000 (17:33 +0100)
committerSonarTech <sonartech@sonarsource.com>
Thu, 14 Feb 2019 19:20:57 +0000 (20:20 +0100)
server/sonar-docs/src/pages/sonarcloud/autoscan.md [new file with mode: 0644]
server/sonar-docs/src/pages/sonarcloud/integrations/github.md
server/sonar-docs/static/SonarCloudNavigationTree.json

diff --git a/server/sonar-docs/src/pages/sonarcloud/autoscan.md b/server/sonar-docs/src/pages/sonarcloud/autoscan.md
new file mode 100644 (file)
index 0000000..6af5fa0
--- /dev/null
@@ -0,0 +1,96 @@
+---
+title: AutoScan Beta Feature
+nav: AutoScan
+url: /autoscan/
+---
+
+SonarCloud can autonomously scan your code, by simply reading it from your repository! We call that AutoScan.
+
+[[info]]
+| This is currently a Beta feature, with a limited scope and some caveats. Those limitations will be removed along the way.
+
+
+## Prerequisites
+
+* The first version of this Beta feature works only for GitHub repositories. 
+* The automatic analysis can be activated only on projects which were set up through the SonarCloud web interface.
+
+## What to expect
+
+Once activated, SonarCloud will automatically analyze: 
+* the default branch of the repository
+* the pull requests (PR) on that default branch
+
+It will take care of doing it whenever you push on your repository.
+
+The following languages are currently supported: 
+* ABAP
+* Apex
+* CSS
+* Flex
+* Go
+* HTML
+* JS
+* Kotlin
+* PHP
+* PL/SQL
+* Python
+* Ruby
+* Scala
+* Swift
+* TypeScript
+* TSQL
+* XML
+
+## How to activate the feature?
+
+To enable the automatic analysis, you need to add a `.sonarcloud.properties` file in your repository.
+
+If you're starting from scratch:
+
+1. Do the [setup for your project](/#sonarcloud#/projects/create) (from the `+ > Analyze new project` top right menu)
+    * ![](/images/exclamation.svg) Remember that your project must absolutely be created by selecting a GitHub repository - otherwise it won't work.
+1. Once the setup is done on SonarCloud, you end up on the project home page which shows a tutorial. Ignore it and simply add a `.sonarcloud.properties` file in the base directory of your default branch (or on a PR which targets this default branch). 
+1. After a while, the analysis results will be visible in SonarCloud (and your PR will be annotated with comments if you pushed the file on a PR)
+
+Here are the supported optional settings for the `.sonarcloud.properties` file:
+```
+# Path to sources
+#sonar.sources=.
+#sonar.exclusions=
+#sonar.inclusions=
+
+# Path to tests
+#sonar.tests=
+#sonar.test.exclusions=
+#sonar.test.inclusions=
+
+# Source encoding
+#sonar.sourceEncoding=UTF-8
+
+# Exclusions for copy-paste detection
+#sonar.cpd.exclusions=
+```
+
+Note that you can just push an empty `.sonarcloud.properties` file, this will work fine. In this case, every file in the repository will be considered as a source file.
+
+## Current limitations/caveats
+
+* There is no visual feedback (yet) in the UI when SonarCloud runs an analysis.
+* A consequence of the previous point is that if - for any reason, SonarCloud fails to successfully run the analysis, nothing will be displayed. In that case, just come on [the forum](https://community.sonarsource.com/tags/c/help/sc/autoscan) and ask a question, we'll monitor that closely.
+* Pull requests from forks are not analyzed (only PRs from the same repository)
+* Code coverage information is not supported
+* Import of external rule engine reports is not supported
+
+## Noteworthy
+
+* This Beta feature works for any project - public or private.
+* It can be activated with no extra cost.
+* Sources are cloned only during the analysis, and only when the `.sonarcloud.properties` file exists (i.e. when the feature is activated). The cloned repository is fully deleted at the end of the analysis, and SonarCloud does not keep a copy of it.
+* Non supported languages (Java, C#, VB.NET, C/C++, ObjectiveC) are not analyzed at all.
+
+## How to give feedback?
+
+Create a new thread on the forum, under ["Get Help > SonarCloud"](https://community.sonarsource.com/tags/c/help/sc/autoscan), with the "autoscan" tag.
+
+We'd love to hear your feedback about this new upcoming feature, may it be about bugs, improvements, or anything you want to share with us!
index 74b875694862c635b82492752143ddd4cc51a833..2349f92964994be9b24ba187d55c2e9bfeb2966e 100644 (file)
@@ -3,26 +3,40 @@ title: GitHub
 url: /integrations/github/
 ---
 
-You can connect to SonarCloud using your GitHub account. On the [login page](/#sonarcloud#/sessions/new), just click on the "Log in with GitHub" button.
+## Sign up and set up your first project
+
+1. On the [login page](/#sonarcloud#/sessions/new), click on the "Log in with GitHub" button and connect to SonarCloud using your GitHub account.
+2. Click on "Analyze your code" and follow the path to set up a first project
+3. You will be asked to install the SonarCould application on your organization, which will allow you to choose which
+   repository you want to analyze.
 
 ## Trigger analyses
 
-SonarCloud currently does not trigger analyses automatically. It's up to you to launch them inside your
-existing CI scripts. Please follow the [tutorial](/#sonarcloud#/onboarding) to get started.
+For GitHub repositories, there are 2 ways to have your code analyzed:
+
+### ... with AutoScan
+
+With AutoScan, SonarCloud will autonomously pull your code and scan your default branch and your pull requests.
+Please read the ["AutoScan Beta Feature"](/autoscan/) documentation page to get the details.
+
+![](/images/exclamation.svg) This is currently a Beta feature which does not work for all languages and comes with limitations. 
 
-### Using Travis CI?
+### ... using your CI service
+
+If AutoScan does not make sense yet for your repository, you need to configure your CI service to trigger the analysis.
+
+**If you are using Travis CI**, the SonarCloud Travis Add-on will make it easier to activate analyses:
 
-If you are using Travis CI, the SonarCloud Travis Add-on will make it easier to activate analyses: 
 * Read the [guide to integrate with Travis CI](https://docs.travis-ci.com/user/sonarcloud/)
 * Check out the [various sample projects](https://github.com/SonarSource/sonarcloud_examples) (Java, TypeScript, C/C++, Go, ... etc) that are analyzed on SonarCloud on a frequent basis
 
-## Activating pull request decoration
+**If you are using another CI service**, you will need to read:
 
-To have your pull requests decorated by SonarCloud in GitHub, you need to [install the SonarCloud application](https://github.com/apps/sonarcloud) on your GitHub organization(s).
-
-Once installed, there is nothing more to do if you are using the Travis Add-on. In any other case, you will need
-to pass the following properties in your script during the analysis:
+* the ["Analyzing Source Code" overview page](/analysis/overview/)
+* the ["Branches" overview page](/branches/overview/)
+* the ["Pull Request Analysis" page](/analysis/pull-request/)
 
+Here is an example of configuration for pull requests when you are not on Travis CI and you need to configure your CI jobs:
 ```
 sonar.pullrequest.base=master
 sonar.pullrequest.branch=feature/my-new-feature
@@ -30,3 +44,6 @@ sonar.pullrequest.key=5
 sonar.pullrequest.provider=GitHub
 sonar.pullrequest.github.repository=my-company/my-repo
 ```
+
+[[info]]
+| Pull request decoration works only if [the SonarCloud application](https://github.com/apps/sonarcloud) is installed on your GitHub organization(s) and configured to have acccess to the repositories.
index a058cd055ccba0ada608f972ed2c23eeb44aface..d6005e9ae8ba3a89115757588e81baab033d19a0 100644 (file)
@@ -64,6 +64,6 @@
   },
   {
     "title": "Appendices",
-    "children": ["/sonarcloud-pricing/", "/privacy/", "/security/", "/faq/"]
+    "children": ["/sonarcloud-pricing/", "/privacy/", "/security/", "/faq/", "/autoscan/"]
   }
 ]