+++ /dev/null
-name: Dogfood merge
-on:
- push:
- branches:
- - master
- - "dogfood/**"
-jobs:
- dogfood_merge:
- # prevent job to run on public repository sonarsource/sonarqube
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: Update dogfood-on-next branch
- steps:
- - name: Merge dogfood and master branches
- uses: SonarSource/gh-action_dogfood_merge@1
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_ORG_TOKEN }}
- with:
- dogfood-branch: "dogfood-on-next"
- - name: Notify failures on Slack
- if: failure()
- uses: Ilshidur/action-slack@2.0.0
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Failed to merge dogfood and master branches, see the logs at https://github.com/SonarSource/sonar-enterprise/actions"
+++ /dev/null
-name: Nightly QA
-on:
- schedule:
- # at 1:30 daily
- - cron: "30 1 * * *"
-jobs:
- nightly:
- # prevent job to run on public repository sonarsource/sonarqube
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: Trigger the nightly QA build
- steps:
- - name: Fetch code
- uses: actions/checkout@v2
- with:
- token: ${{ secrets.GITHUB_ORG_TOKEN }}
- ref: branch-nightly-build
- path: repo
- - name: Trigger nightly build
- run: |
- cd repo/
- ./private/trigger-nightly-build.sh
- - name: Notify failures on Slack
- if: failure()
- uses: Ilshidur/action-slack@2.0.0
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Nightly QA failed, see the logs at https://github.com/SonarSource/sonar-enterprise/actions"
+++ /dev/null
-name: Release
-# This workflow is triggered when publishing a GitHub release
-on:
- release:
- types:
- - published
-
-env:
- PYTHONUNBUFFERED: 1
-
-jobs:
- release:
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: Start release process
- timeout-minutes: 60
- steps:
- - name: Run release action
- id: run_release
- uses: SonarSource/gh-action_LT_release@v2
- with:
- distribute: true
- publish_to_binaries: true
- attach_artifacts_to_github_release: false
- run_rules_cov: false
- slack_channel: sonarqube-build
- env:
- ARTIFACTORY_API_KEY: ${{ secrets.ARTIFACTORY_API_KEY }}
- BINTRAY_USER: ${{ secrets.BINTRAY_USER }}
- BINTRAY_TOKEN: ${{ secrets.BINTRAY_TOKEN }}
- BURGRX_USER: ${{ secrets.BURGRX_USER }}
- BURGRX_PASSWORD: ${{ secrets.BURGRX_PASSWORD }}
- CENTRAL_USER: ${{ secrets.CENTRAL_USER }}
- CENTRAL_PASSWORD: ${{ secrets.CENTRAL_PASSWORD }}
- CIRRUS_TOKEN: ${{ secrets.CIRRUS_TOKEN }}
- GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
- PATH_PREFIX: ${{ secrets.BINARIES_PATH_PREFIX }}
- GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }}
- RELEASE_SSH_USER: ${{ secrets.RELEASE_SSH_USER }}
- RELEASE_SSH_KEY: ${{ secrets.RELEASE_SSH_KEY }}
- SLACK_API_TOKEN: ${{secrets.SLACK_API_TOKEN }}
- - name: Log outputs
- if: always()
- run: |
- echo "${{ steps.run_release.outputs.releasability }}"
- echo "${{ steps.run_release.outputs.release }}"
- echo "${{ steps.run_release.outputs.distribute_release }}"
- - name: Notify success on Slack
- uses: Ilshidur/action-slack@2.0.0
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Release successful for {{ GITHUB_REPOSITORY }} by {{ GITHUB_ACTOR }}"
- - name: Notify failures on Slack
- uses: Ilshidur/action-slack@2.0.0
- if: failure()
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Release failed, see the logs at https://github.com/{{ GITHUB_REPOSITORY }}/actions by {{ GITHUB_ACTOR }}"
+++ /dev/null
-name: Suggest dependency upgrades
-on:
-# use push to test the bot
-# push:
-# branches-ignore:
-# - 'bot/upgrade_plugins**'
- schedule:
- # at 5:00 every Monday
- - cron: '0 5 * * MON'
-
-jobs:
- suggest-upgrades-job:
- # prevent job to run on public repository sonarsource/sonarqube (on which GitHub Actions are disabled)
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: List available upgrades
- steps:
- - uses: actions/checkout@v2
- with:
- fetch-depth: 1
- ref: master
- - name: Set up JDK
- uses: actions/setup-java@v1
- with:
- java-version: 11
- - name: Cache Gradle Wrapper
- uses: actions/cache@v1
- with:
- path: ~/.gradle/wrapper
- key: ${{ runner.os }}-gradlew-${{ hashFiles('**/*.zip') }}
- restore-keys: ${{ runner.os }}-gradlew
- - name: Find upgrades
- env:
- ARTIFACTORY_PRIVATE_USERNAME: ${{ secrets.REPOX_LOGIN }}
- ARTIFACTORY_PRIVATE_PASSWORD: ${{ secrets.REPOX_API_KEY }}
- run: |
- ./gradlew dependencyUpdates yarn_audit -Drevision=release
+++ /dev/null
-name: Sync LTS branch
-on:
- schedule:
- # at 20:00 daily
- - cron: "0 20 * * *"
-jobs:
- sync_lts:
- # prevent job to run on public repository sonarsource/sonarqube
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: Sync LTS branch of sonarsource/sonar-enterprise with sonarsource/sonarqube
- steps:
- - name: Fetch code
- uses: actions/checkout@v2
- with:
- token: ${{ secrets.GITHUB_ORG_TOKEN }}
- ref: master
- path: repo
- - name: Sync LTS branch
- run: ./repo/private/sync-public-git-branches.sh
- env:
- GITHUB_ORG_TOKEN: ${{ secrets.GITHUB_ORG_TOKEN }}
- BRANCH_NAME: branch-7.9
- - name: Notify failures on Slack
- if: failure()
- uses: Ilshidur/action-slack@2.0.0
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Nightly public sync failed, see the logs at https://github.com/SonarSource/sonar-enterprise/actions"
+++ /dev/null
-name: Sync master branch
-on:
- schedule:
- # at 20:00 daily
- - cron: "0 20 * * *"
-jobs:
- sync_master:
- # prevent job to run on public repository sonarsource/sonarqube
- if: github.repository == 'sonarsource/sonar-enterprise'
- runs-on: ubuntu-latest
- name: Sync master branch of sonarsource/sonar-enterprise with sonarsource/sonarqube
- steps:
- - name: Fetch code
- uses: actions/checkout@v2
- with:
- token: ${{ secrets.GITHUB_ORG_TOKEN }}
- ref: master
- path: repo
- - name: Sync master branch
- run: ./repo/private/sync-public-git-branches.sh
- env:
- GITHUB_ORG_TOKEN: ${{ secrets.GITHUB_ORG_TOKEN }}
- BRANCH_NAME: master
- - name: Notify failures on Slack
- if: failure()
- uses: Ilshidur/action-slack@2.0.0
- env:
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- with:
- args: "Nightly public sync failed, see the logs at https://github.com/SonarSource/sonar-enterprise/actions"
[Hazelcast](https://hazelcast.org/) is used to manage the communication between the cluster's application nodes. You don't need to install it yourself, it's provided out of the box.
-If you're working in a Docker environment, your properties are configured using environment variables.
+## Docker Environment Configuration
+In a Docker environment, your properties are configured using [Environment Variables](/setup/environment-variables/).
-If you're working in a traditional environment, the following properties may be defined in the _$SONARQUBE-HOME/conf/sonar.properties_ file of each node in a cluster. When defining a property that contains a list of hosts (`*.hosts`) the port is not required if the default port was not overridden in the configuration.
+## Traditional Environment Configuration
+The following properties may be defined in the _$SONARQUBE-HOME/conf/sonar.properties_ file of each node in a cluster. When defining a property that contains a list of hosts (`*.hosts`) the port is not required if the default port was not overridden in the configuration.
[[warning]]
| Ports can be unintentionally exposed. We recommend only giving external access to the application nodes and to main port (`sonar.web.port`).
Property | Description | Required
---|---|---
`sonar.cluster.hosts`|Comma-delimited list of all **application** hosts in the cluster. This value must contain **only application hosts**. Each item in the list must contain the port if the default `sonar.cluster.node.port` value is not used. Item format is `sonar.cluster.node.host` or `sonar.cluster.node.host:sonar.cluster.node.port`.|yes
-`sonar.cluster.node.host`|IP address of the network card that will be used by Hazelcast to communicate with the members of the cluster. If not specified, the first interface will be chosen (note that loopback interfaces won't be selected).|no
+`sonar.cluster.node.host`|IP address of the network card that will be used by Hazelcast to communicate with the members of the cluster.|yes
`sonar.cluster.node.port`|The Hazelcast port for communication with each application member of the cluster. Default: `9003`|no
`sonar.cluster.node.web.port`|The Hazelcast port for communication with the WebServer process. Port must be accessible to all other application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no
`sonar.cluster.node.ce.port`|The Hazelcast port for communication with the ComputeEngine process. Port must be accessible to all other application nodes. If not specified, a dynamic port will be chosen and all ports must be open among the nodes.|no