- Jenkins_Master server with 4 GB memory - t2.medium
- Build server with 15GB storage - t2.meduim
- Sonarqube server with 4 GB memory - t2.medium
- Parameterized trigger plugin
- Gitlab plugin/Github Plugin
- Docker Pipeline
- Pipeline: AWS steps
- SonarQube Scanner
- Quality Gates
$ sudo ./Jenkins-master-setup.sh
$ sudo ./Build-server-setup.sh
$ sudo apt update
$ sudo apt install -y docker.io
$ sudo usermod -a -G docker ubuntu
$ sudo docker run -d --name sonar -p 9000:9000 sonarqube:lts-community
OR (via sonarqube-setup.sh script)
$sudo ./sonarqube-server-setup.sh
- Generate Sonarqube token of type "global analysis token" and add it as Jenkins credential of type "secret text"
- Add dockerhub credentials as username/password type / or PAT token
- Add Gitlab/Github credentials
- Add Build server credentials for Jenkins master to connect
- Generate NVD_API_KEY from visting this link: https://nvd.nist.gov/developers/request-an-api-key
- Add NVD_API_KEY in jenkins credentails as secret.txt with ID: NVD_API_KEY
- Generate webhook & add the Jenkins URL as follows - http://URL:8080/sonarqube-webhook/