Automated setup for CI server to use with java projects.
Software is set up via Ansible.
Copy or modify example playbook to set up your server. Provide an inventory file for the playbook. Provision environment using Ansible.
Domains are used by gateway to proxy requests to services. Variables to set up domains:
jenkins_domainfor jenkins;nexus_domainfor nexus;sonar_domainfor sonar;
It is possible to customize network ports for services by setting:
jenins_portfor jenkins;nexus_portfor nexus;sonar_portfor sonar;
Service versions can be changes by setting variables:
jenkins_version;nexus_version;sonar_version;
Those settings can be customized when including role.
If, for example, you want to run jenkins on 8888 port on build.example.com domain
create playbook like that:
roles
- { role: gateway, jenkins_domain: "build.example.com" }
- { role: jenkins, jenkins_port: 8888 }
- nexusThe Vagrantfile is included to populate your server locally. It is advised to evaluate installation using vagrant before provisioning servers.
The example.yml playbook populates local environment.
Vagrant launches machine in private network using 192.168.1.10 address.
By default gateway is set up to resolve jenkins.ci and nexus.ci domains
to respective services.
You may use dnsmasq to set up local development domain to test installation.
Sonar is installed together with MySQL database.