variables.yml 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. ---
  2. - name: Deploy & start apache
  3. hosts: webserver
  4. vars:
  5. web_pkg: httpd
  6. firewall_pkg: firewalld
  7. web_service: httpd
  8. firewall_service: firewalld
  9. python_pkg: python3-PyMySQL
  10. rule: http
  11. tasks:
  12. - name: required packages installed and updated
  13. yum:
  14. name:
  15. - "{{ web_pkg }}"
  16. - "{{ firewall_pkg }}"
  17. - "{{ python_pkg }}"
  18. state: latest
  19. - name: fw started and enabled
  20. service:
  21. name: "{{ firewall_service }}"
  22. state: started
  23. enabled: true
  24. - name: http started and enabled
  25. service:
  26. name: "{{ web_service }}"
  27. state: started
  28. enabled: true
  29. - name: web content is in place
  30. copy:
  31. content: "This is an example web content"
  32. dest: /var/www/html/index.html
  33. - name: firewall port open
  34. firewalld:
  35. service: "{{ rule }}"
  36. permanent: true
  37. immediate: true
  38. state: enabled
  39. - name: Verify Apache service
  40. hosts: localhost
  41. become: false
  42. tasks:
  43. - name: ensure webserver is reachable
  44. uri:
  45. url: http://servera.lab.example.com
  46. status_code: 200