Bertrand Janvoie
3 years ago
3 changed files with 129 additions and 0 deletions
@ -0,0 +1 @@ |
|||||||
|
/home/bertrand/Pipeline-DevOps/1-vagrant-srv/.vagrant |
@ -0,0 +1,83 @@ |
|||||||
|
# -*- mode: ruby -*- |
||||||
|
# nano: set ft=ruby : |
||||||
|
|
||||||
|
Vagrant.configure("2") do |config| |
||||||
|
# p1jenkins server |
||||||
|
config.vm.define "p1jenkins-pipeline" do |p1jenkins| |
||||||
|
p1jenkins.vm.box = "debian/buster64" |
||||||
|
p1jenkins.vm.hostname = "p1jenkins-pipeline" |
||||||
|
p1jenkins.vm.box_url = "debian/buster64" |
||||||
|
p1jenkins.vm.network :private_network, ip: "192.168.56.2" |
||||||
|
p1jenkins.vm.provider :virtualbox do |v| |
||||||
|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--memory", 3072] |
||||||
|
v.customize ["modifyvm", :id, "--name", "p1jenkins-pipeline"] |
||||||
|
v.customize ["modifyvm", :id, "--cpus", "2"] |
||||||
|
end |
||||||
|
config.vm.provision "shell", inline: <<-SHELL |
||||||
|
sed -i 's/ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config |
||||||
|
service ssh restart |
||||||
|
SHELL |
||||||
|
p1jenkins.vm.provision "shell", path: "install_p1jenkins.sh" |
||||||
|
end |
||||||
|
|
||||||
|
# serveur dev |
||||||
|
config.vm.define "srvdev-pipeline" do |srvdev| |
||||||
|
srvdev.vm.box = "debian/buster64" |
||||||
|
srvdev.vm.hostname = "srvdev-pipeline" |
||||||
|
srvdev.vm.box_url = "debian/buster64" |
||||||
|
srvdev.vm.network :private_network, ip: "192.168.56.3" |
||||||
|
srvdev.vm.provider :virtualbox do |v| |
||||||
|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--memory", 512] |
||||||
|
v.customize ["modifyvm", :id, "--name", "srvdev-pipeline"] |
||||||
|
v.customize ["modifyvm", :id, "--cpus", "1"] |
||||||
|
end |
||||||
|
config.vm.provision "shell", inline: <<-SHELL |
||||||
|
sed -i 's/ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config |
||||||
|
service ssh restart |
||||||
|
SHELL |
||||||
|
end |
||||||
|
|
||||||
|
# serveur stage/recette |
||||||
|
config.vm.define "srvstage-pipeline" do |srvstage| |
||||||
|
srvstage.vm.box = "debian/buster64" |
||||||
|
srvstage.vm.hostname = "srvstage-pipeline" |
||||||
|
srvstage.vm.box_url = "debian/buster64" |
||||||
|
srvstage.vm.network :private_network, ip: "192.168.56.7" |
||||||
|
srvstage.vm.provider :virtualbox do |v| |
||||||
|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--memory", 512] |
||||||
|
v.customize ["modifyvm", :id, "--name", "srvstage-pipeline"] |
||||||
|
v.customize ["modifyvm", :id, "--cpus", "1"] |
||||||
|
end |
||||||
|
config.vm.provision "shell", inline: <<-SHELL |
||||||
|
sed -i 's/ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config |
||||||
|
service ssh restart |
||||||
|
SHELL |
||||||
|
end |
||||||
|
|
||||||
|
# serveur prod |
||||||
|
config.vm.define "srvprod-pipeline" do |srvprod| |
||||||
|
srvprod.vm.box = "debian/buster64" |
||||||
|
srvprod.vm.hostname = "srvprod-pipeline" |
||||||
|
srvprod.vm.box_url = "debian/buster64" |
||||||
|
srvprod.vm.network :private_network, ip: "192.168.56.4" |
||||||
|
srvprod.vm.provider :virtualbox do |v| |
||||||
|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"] |
||||||
|
v.customize ["modifyvm", :id, "--memory", 512] |
||||||
|
v.customize ["modifyvm", :id, "--name", "srvprod-pipeline"] |
||||||
|
v.customize ["modifyvm", :id, "--cpus", "1"] |
||||||
|
end |
||||||
|
config.vm.provision "shell", inline: <<-SHELL |
||||||
|
sed -i 's/ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config |
||||||
|
service ssh restart |
||||||
|
SHELL |
||||||
|
end |
||||||
|
|
||||||
|
end |
||||||
|
|
@ -0,0 +1,45 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
## install p1jenkins |
||||||
|
|
||||||
|
export DEBIAN_FRONTEND=noninteractive |
||||||
|
|
||||||
|
IP=$(hostname -I | awk '{print $2}') |
||||||
|
|
||||||
|
echo "START - install jenkins - "$IP |
||||||
|
|
||||||
|
echo "[1]: install utils & ansible" |
||||||
|
apt-get update -qq >/dev/null # -qq = quiet // >/dev/null = renvoie les erreurs vers null |
||||||
|
apt-get install -qq -y git sshpass wget ansible gnupg2 curl >/dev/null |
||||||
|
|
||||||
|
|
||||||
|
echo "[2]: install java & jenkins" |
||||||
|
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - |
||||||
|
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' |
||||||
|
apt-get update -qq >/dev/null |
||||||
|
apt-get install -qq -y default-jre jenkins >/dev/null |
||||||
|
systemctl enable jenkins |
||||||
|
systemctl start jenkins |
||||||
|
|
||||||
|
|
||||||
|
echo "[2]: ansible custom" |
||||||
|
sed -i 's/.*pipelining.*/pipelining = True/' /etc/ansible/ansible.cfg |
||||||
|
sed -i 's/.*allow_world_readable_tmpfiles.*/allow_world_readable_tmpfiles = True/' /etc/ansible/ansible.cfg |
||||||
|
|
||||||
|
echo "[3]: install docker & docker-composer" |
||||||
|
curl -fsSL https://get.docker.com | sh; >/dev/null |
||||||
|
usermod -aG docker jenkins # authorize docker for jenkins user |
||||||
|
curl -sL "https://github.com/docker/compose/releases/download/2.6.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose |
||||||
|
chmod +x /usr/local/bin/docker-compose |
||||||
|
|
||||||
|
echo "[4]: use registry without ssl" |
||||||
|
echo " |
||||||
|
{ |
||||||
|
\"insecure-registries\" : [\"192.168.5.5:5000\"] |
||||||
|
} |
||||||
|
" >/etc/docker/daemon.json |
||||||
|
systemctl daemon-reload |
||||||
|
systemctl restart docker |
||||||
|
|
||||||
|
echo "END - install jenkins" |
||||||
|
|
Loading…
Reference in new issue