From 16859801ebbda3bce7a8aa21711d2422efe5f0f6 Mon Sep 17 00:00:00 2001 From: Mateusz Trojak Date: Mon, 12 Dec 2016 18:29:46 +0100 Subject: [PATCH] Adding SonarQube Stack (#352) * Adding SonarQube Stack * Updating configuration --- templates/sonarqube/0/docker-compose.yml | 48 +++++++++++++++ templates/sonarqube/0/rancher-compose.yml | 55 ++++++++++++++++++ templates/sonarqube/README.md | 17 ++++++ templates/sonarqube/catalogIcon-sonarqube.png | Bin 0 -> 19494 bytes templates/sonarqube/config.yml | 5 ++ 5 files changed, 125 insertions(+) create mode 100644 templates/sonarqube/0/docker-compose.yml create mode 100644 templates/sonarqube/0/rancher-compose.yml create mode 100644 templates/sonarqube/README.md create mode 100644 templates/sonarqube/catalogIcon-sonarqube.png create mode 100644 templates/sonarqube/config.yml diff --git a/templates/sonarqube/0/docker-compose.yml b/templates/sonarqube/0/docker-compose.yml new file mode 100644 index 0000000..fa6b751 --- /dev/null +++ b/templates/sonarqube/0/docker-compose.yml @@ -0,0 +1,48 @@ +sonarqube-data: + image: busybox + net: none + labels: + io.rancher.container.start_once: true + volumes: + - /opt/sonarqube/extensions/plugins + +sonarqube: + image: sonarqube + ports: + - ${http_port}:9000 + links: + - postgres + environment: + http_proxy: ${http_proxy} + https_proxy: ${https_proxy} + SONARQUBE_JDBC_USERNAME: ${postgres_user} + SONARQUBE_JDBC_PASSWORD: ${postgres_password} + SONARQUBE_JDBC_URL: jdbc:postgresql://postgres/sonar + labels: + io.rancher.sidekicks: sonarqube-data + volumes_from: + - sonarqube-data + +postgres-data: + image: busybox + net: none + labels: + io.rancher.container.start_once: true + volumes: + - ${postgres_data} + +postgres: + image: postgres:latest + ports: + - ${postgress_port}:5432 + environment: + PGDATA: ${postgres_data} + POSTGRES_DB: ${postgres_db} + POSTGRES_USER: ${postgres_user} + POSTGRES_PASSWORD: ${postgres_password} + tty: true + stdin_open: true + labels: + io.rancher.sidekicks: postgres-data + volumes_from: + - postgres-data diff --git a/templates/sonarqube/0/rancher-compose.yml b/templates/sonarqube/0/rancher-compose.yml new file mode 100644 index 0000000..0174f8d --- /dev/null +++ b/templates/sonarqube/0/rancher-compose.yml @@ -0,0 +1,55 @@ +.catalog: + name: "SonarQube" + version: "v0.0.1" + description: "SonarQube" + uuid: sonarqube-0 + minimum_rancher_version: v0.51.0 + questions: + - variable: http_port + description: "HTTP port to access SonarQube UI" + label: "SonarQube HTTP Port" + required: true + default: "9000" + type: "int" + - variable: postgress_port + description: "Port for Postgres" + label: "Postgres Port" + required: true + default: "5432" + type: "int" + - variable: postgres_data + description: "Postgres Data Folder" + label: "Postgres Data" + required: true + default: "/var/lib/postgresql/data/pgdata" + type: "string" + - variable: postgres_db + description: "Postgres Database" + label: "Postgres Database" + required: true + default: "sonar" + type: "string" + - variable: postgres_user + description: "Postgres User" + label: "Postgres User" + required: true + default: "sonar" + type: "string" + - variable: postgres_password + description: "Postgres Password" + label: "Postgres Password" + required: true + default: "sonar" + type: "string" + - variable: http_proxy + description: "In case you are at corporate network, setup http_proxy variable" + label: "http_proxy" + required: false + default: "" + type: "string" + - variable: https_proxy + description: "In case you are at corporate network, setup https_proxy variable" + label: "https_proxy" + required: false + default: "" + type: "string" diff --git a/templates/sonarqube/README.md b/templates/sonarqube/README.md new file mode 100644 index 0000000..51c1041 --- /dev/null +++ b/templates/sonarqube/README.md @@ -0,0 +1,17 @@ +## What is inside SonarQube Stack? +* [SonarQube Server](http://www.sonarqube.org/) + Sidekick for storing plugins +* Postgres Database + Sidekick for storing data + +## Info +* In default SonarQube stack will create "sonar" postgres database with sonar user. +* Additional variables `http_proxy` and `https_proxy` are included, which can be helpfull in some cases. +* Once SonarQube will start, make sure you setup correct information in setup page. +* For easy upgrades there are sidekicks for both postgress and SonarQube with dedicated storage. + +## Installing Plugins Manually +* Go to [Plugin Library](http://docs.sonarqube.org/display/PLUG/Plugin+Library) and find your favourite plugins +* Execute `docker exec -it [sonarqube-data bash]`, go to /opt/sonarqube/extensions/plugins and put your plugins here +* Restart SonarQube container. + +## First Start +* Use admin/admin to login to the SonarQube interface. diff --git a/templates/sonarqube/catalogIcon-sonarqube.png b/templates/sonarqube/catalogIcon-sonarqube.png new file mode 100644 index 0000000000000000000000000000000000000000..561a879de4699e34fabab0f6c7441f96083ebdc1 GIT binary patch literal 19494 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 z3_2`Hn;@AIT<95;T+y7rg%c?_SPudK0000000000000000000000000007{5@juP& V9G6^I^j!b|002ovPDHLkV1n{nlb!$o literal 0 HcmV?d00001 diff --git a/templates/sonarqube/config.yml b/templates/sonarqube/config.yml new file mode 100644 index 0000000..ccd4ad5 --- /dev/null +++ b/templates/sonarqube/config.yml @@ -0,0 +1,5 @@ +name: SonarQube +description: | + SonarQube - an open source quality management platform. +version: v0.0.1 +category: Test Automation