Skip to content
Snippets Groups Projects
Commit 8294c4ab authored by MUNIER Florian's avatar MUNIER Florian
Browse files

[upd] merge project

parent 5ab56d56
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,30 @@ ...@@ -7,6 +7,30 @@
env_file: "{{ENV_FILE}}" env_file: "{{ENV_FILE}}"
stopped: true stopped: true
register: output register: output
- name: Suppression des containers vapormap
become: true
docker_container:
name: "{{item}}"
state: absent
loop:
- vapormap_api_1
- vapormap_web_1
- vapormap_db_1
- name: Suppression des images vapormap
become: true
docker_image:
name: "{{item}}"
tag: latest
state: absent
loop:
- gitlab-registry.imt-atlantique.fr/f21munie/vapormap/app_api
- gitlab-registry.imt-atlantique.fr/f21munie/vapormap/app_front
- gitlab-registry.imt-atlantique.fr/f21munie/vapormap/mariadb
- name: Suppression du volume vapormap
become: true
docker_volume:
name: vapormap_data_db
state: absent
- name: Déconnexion à la registry docker - name: Déconnexion à la registry docker
become: true become: true
community.docker.docker_login: community.docker.docker_login:
......
...@@ -42,3 +42,14 @@ ...@@ -42,3 +42,14 @@
owner: "{{VAPORMAP_USER}}" owner: "{{VAPORMAP_USER}}"
group: "{{VAPORMAP_GROUP}}" group: "{{VAPORMAP_GROUP}}"
mode: "755" mode: "755"
- name: Configuration du fichier .env.front
become: true
ansible.builtin.template:
src: .env.front.j2
dest: "{{VAPORMAP_DIR}}/env/.env.front"
owner: "{{VAPORMAP_USER}}"
group: "{{VAPORMAP_GROUP}}"
mode: "755"
- name: Ajout de l'IP API à la variable no_proxy
become: true
ansible.builtin.shell: export no_proxy=$no_proxy,"{{PUB_API_IP}}"
#Configuration de l'accès à l'API
VAPORMAP_BACKEND={{ PUB_API_IP }}
VAPORMAP_BACKEND_PORT=8082
#Génération du fichier de configuration du serveur Nginx
VAPORMAP_URL_SERVERNAME=0.0.0.0
VAPORMAP_URL_PORT=8000
VAPORMAP_FRONTEND_ROOT=/app_fe
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
resource "null_resource" "ansible" { resource "null_resource" "ansible" {
provisioner "local-exec" { provisioner "local-exec" {
interpreter = ["/bin/bash", "-c"] interpreter = ["/bin/bash", "-c"]
command = "source /home/user/TP/Ansible/venv/ansible/bin/activate; ANSIBLE_HOST_KEY_CHECKING=False ansible -i ../Ansible/hosts.ini all -m ping; deactivate" #command = "source /home/user/TP/Ansible/venv/ansible/bin/activate; ANSIBLE_HOST_KEY_CHECKING=False ansible -i ../Ansible/hosts.ini all -m ping --private-key .ssh/${var.INSTANCE_BASTION_KEY_PAIR}.pem -e pub_key=.ssh/${var.INSTANCE_BASTION_KEY_PAIR}.pub; deactivate"
#command = "source /home/user/TP/Ansible/venv/ansible/bin/activate; ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i ../Ansible/hosts.ini ../Ansible/deploy.yml; deactivate" #command = "source /home/user/TP/Ansible/venv/ansible/bin/activate; ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i ../Ansible/hosts.ini ../Ansible/deploy.yml; deactivate"
#command = "ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i ../Ansible/hosts.ini ../Ansible/deploy.yml" command = "ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook -i ../Ansible/hosts.ini ../Ansible/deploy.yml"
} }
depends_on = [ depends_on = [
openstack_compute_instance_v2.bastion_instance, openstack_compute_instance_v2.bastion_instance,
......
...@@ -14,11 +14,12 @@ resource "openstack_compute_instance_v2" "bastion_instance" { ...@@ -14,11 +14,12 @@ resource "openstack_compute_instance_v2" "bastion_instance" {
# Copie des IP locales dans un fichier .txt sur la machine hébergeante # Copie des IP locales dans un fichier .txt sur la machine hébergeante
# Inventaire Ansible # Inventaire Ansible
provisioner "local-exec" { provisioner "local-exec" {
command = "echo '${self.name} : ${self.access_ip_v4}' > ip_files/private_ips.txt; echo '[admin]' > ../Ansible/hosts.ini; echo ${self.name} ansible_host=${openstack_networking_floatingip_v2.floatip_admin.address} ansible_user=ubuntu ansible_ssh_private_key_file='../.ssh/${var.INSTANCE_BASTION_KEY_PAIR}.pem' >> ../Ansible/hosts.ini; echo [node] >> ../Ansible/hosts.ini" command = "echo '${self.name} : ${self.access_ip_v4}' > ip_files/private_ips.txt; echo '[admin]' > ../Ansible/hosts.ini; echo ${self.name} ansible_host=${openstack_networking_floatingip_v2.floatip_admin.address} PUB_API_IP=${openstack_networking_floatingip_v2.floatip_admin.address} ansible_user=ubuntu ansible_ssh_private_key_file='../.ssh/${var.INSTANCE_BASTION_KEY_PAIR}.pem' >> ../Ansible/hosts.ini; echo '[node]' >> ../Ansible/hosts.ini"
} }
depends_on = [openstack_compute_keypair_v2.keypair_project, depends_on = [openstack_compute_keypair_v2.keypair_project,
openstack_networking_floatingip_v2.floatip_admin, openstack_networking_floatingip_v2.floatip_admin,
openstack_networking_floatingip_v2.floatip_application,
openstack_networking_subnet_v2.internal_subnet] openstack_networking_subnet_v2.internal_subnet]
} }
...@@ -40,7 +41,7 @@ resource "openstack_compute_instance_v2" "orchestration_instance" { ...@@ -40,7 +41,7 @@ resource "openstack_compute_instance_v2" "orchestration_instance" {
# Copie des IP locales dans un fichier .txt sur la machine hébergeante # Copie des IP locales dans un fichier .txt sur la machine hébergeante
# Inventaire Ansible # Inventaire Ansible
provisioner "local-exec" { provisioner "local-exec" {
command = "echo '${self.name} : ${self.access_ip_v4}' >> ip_files/private_ips.txt; echo ${self.name} ansible_host=${self.access_ip_v4} ansible_user=ubuntu ansible_ssh_private_key_file='${var.INSTANCE_ORCHEST_KEY_PAIR}.pem'>> ../Ansible/hosts.ini" command = "echo '${self.name} : ${self.access_ip_v4}' >> ip_files/private_ips.txt; echo ${self.name} ansible_host=${self.access_ip_v4} >> ../Ansible/hosts.ini"
} }
depends_on = [openstack_compute_instance_v2.bastion_instance, depends_on = [openstack_compute_instance_v2.bastion_instance,
......
...@@ -16,6 +16,8 @@ resource "openstack_compute_keypair_v2" "keypair_cluster" { ...@@ -16,6 +16,8 @@ resource "openstack_compute_keypair_v2" "keypair_cluster" {
provisioner "local-exec" { provisioner "local-exec" {
command = "echo '${self.private_key}' > ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pem; echo '${self.public_key}' > ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pub; chmod 600 ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pem; chmod 600 ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pub" command = "echo '${self.private_key}' > ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pem; echo '${self.public_key}' > ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pub; chmod 600 ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pem; chmod 600 ../.ssh/${var.INSTANCE_ORCHEST_KEY_PAIR}.pub"
} }
depends_on = [openstack_compute_keypair_v2.keypair_project]
} }
# Copie de la paire de clés du cluster sur l'instance bastion # Copie de la paire de clés du cluster sur l'instance bastion
......
...@@ -43,6 +43,50 @@ resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_http_egress" { ...@@ -43,6 +43,50 @@ resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_http_egress" {
security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}" security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}"
} }
# Rule port 8081 entrant
resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_port_8081_ingress" {
direction = "ingress"
ethertype = "IPv4"
protocol = "tcp"
port_range_min = 8081
port_range_max = 8081
remote_ip_prefix = "0.0.0.0/0"
security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}"
}
# Rule port 8081 sortant
resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_port_8081_egress" {
direction = "egress"
ethertype = "IPv4"
protocol = "tcp"
port_range_min = 8081
port_range_max = 8081
remote_ip_prefix = "0.0.0.0/0"
security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}"
}
# Rule port 8082 entrant
resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_port_8082_ingress" {
direction = "ingress"
ethertype = "IPv4"
protocol = "tcp"
port_range_min = 8082
port_range_max = 8082
remote_ip_prefix = "0.0.0.0/0"
security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}"
}
# Rule port 8082 sortant
resource "openstack_networking_secgroup_rule_v2" "secgroup_rule_port_8082_egress" {
direction = "egress"
ethertype = "IPv4"
protocol = "tcp"
port_range_min = 8082
port_range_max = 8082
remote_ip_prefix = "0.0.0.0/0"
security_group_id = "${openstack_networking_secgroup_v2.secgroup_application.id}"
}
# Security group pour réseau interne # Security group pour réseau interne
resource "openstack_networking_secgroup_v2" "secgroup_internal_network" { resource "openstack_networking_secgroup_v2" "secgroup_internal_network" {
name = var.SECGROUP_INTERNAL_NETWORK_NAME name = var.SECGROUP_INTERNAL_NETWORK_NAME
......
...@@ -65,7 +65,7 @@ variable "INSTANCE_BASTION_KEY_PAIR" { ...@@ -65,7 +65,7 @@ variable "INSTANCE_BASTION_KEY_PAIR" {
variable "INSTANCE_ORCHEST_KEY_PAIR" { variable "INSTANCE_ORCHEST_KEY_PAIR" {
type = string type = string
default = "cluster_key2" default = "cluster_key"
} }
variable "SECGROUP_BASTION_NAME" { variable "SECGROUP_BASTION_NAME" {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment