Skip to content

Instantly share code, notes, and snippets.

@sbeliakou
Created July 6, 2021 18:16
Show Gist options
  • Save sbeliakou/48304149d9c26fbbf114851f1d8ff60b to your computer and use it in GitHub Desktop.
Save sbeliakou/48304149d9c26fbbf114851f1d8ff60b to your computer and use it in GitHub Desktop.

What variable???

- name: Installing webapp-server
  hosts: web-server

  vars:
    webapp_user: webapp-server
    webapp_group: webapp-server
    webapp_url: https://playpit-labs-assets.s3-eu-west-1.amazonaws.com/webapp-server/webapp-server
    webapp_home: /opt/webapp-server

    student_first_name: Aliaskandr
    student_last_name: Matsiyuk

  tasks:
  - name: Create group
    become: yes
    group:
      name: "{{ webapp_group }}"

  - name: Create user
    become: yes
    user:
      name: "{{ webapp_user }}"
      group: "{{ webapp_group }}"
      home: "{{ webapp_home }}"
      create_home: no

  - name: Create application folders
    become: yes
    file:
      path: "{{ item }}"
      state: directory
      group: "{{ webapp_group }}"
      owner: "{{ webapp_user }}"
    loop:
    - "{{ webapp_home }}"
    - "{{ webapp_home }}/bin"
    - "{{ webapp_home }}/conf"

  - name: Download webapp
    become: yes
    become_user: "{{ webapp_user }}"
    get_url:
      url: "{{ webapp_url }}"
      dest: "{{ webapp_home }}/bin"
      checksum: "md5:66e5a7366408e9db471e3e9586e01708"

  - name: Copy web-server.conf
    become: yes
    template:
      src: "{{ item.src }}"
      dest: "{{ item.dest }}"
      owner: "{{ webapp_user }}"
      group: "{{ webapp_group }}"
    loop:
    - { src: webapp-server.conf.j2, dest: "{{ webapp_home }}/conf/webapp-server.conf" }
    - { src: webapp-server.service.j2, dest: "/usr/lib/systemd/system/webapp-server.service" }
    notify: Restart web-server

  - name: Start webapp service
    become: yes
    systemd:
      name: webapp-server
      state: started
      enabled: yes

  handlers:
  - name: Restart web-server
    service:
      name: webapp-server
      state: restarted
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment