# Terraform 102 ## objectif Parce qu'on ♥ `demo-flask`, nous allons maintenant deployer une instance `demo-flask` ! Youpi! Commencez par travailler dans un nouveau dossier 102: ```bash mkdir 102 cd 102 ``` ## provider.tf Creer ensuite le fichier `provider.tf`: ``` terraform { required_providers { openstack = { source = "terraform-provider-openstack/openstack" version = "1.46.0" } } } provider "openstack" { } ``` ## demo-flask.tf Creez maintenant `demo-flask.tf` pour demarrer un serveur qui utilisera le cloud-init suivant: [install-demo-flask.sh](files/install-demo-flask.sh) ## init and apply Lorsque vous etes pret: ```bash terraform init terraform apply ``` ## resource output Ajouter une resource output pour afficher l'url de votre serveur demo-flask: ```bash # Adaptez demo-flask avec le nom de votre serveur output "demo-flask-url" { value = "${format("http://%s", openstack_compute_instance_v2.demo-flask.address)}:8080" } ``` ## Ajout d'une resource security group Vous avez essayer d'ouvrir l'url ? Cela fonctionne-t-il ? Il vous manque sans doute quelques resources pour gerer les security groups rules: ``` openstack_networking_secgroup_v2 openstack_networking_secgroup_rule_v2 ``` N'oubliez pas que `demo-flask` ecoute par defaut sur le port 8080 !