my file learn about tech container (docker, podman, kubernetes)
tasks:
- name: Install the servers
  ansible.builtin.yum:
    name:
    - httpd
    - memcached
    state: present
  tags:
  - packages
  - webservers
- name: Configure the service
  ansible.builtin.template:
    src: templates/src.j2
    dest: /etc/foo.conf
  tags:
  - configuration
---
- name: Playbook setup web server
  hosts: node_docker
  become: true
  gather_facts: true # defaultnya memang true
  vars: # mendefinisikan variable
    user_app: ansibleweb
  tasks:
    ## Install nginx
    - name: Install nginx (Debian)
      ansible.builtin.apt:
        name: nginx
        state: present
      when:
        - ansible_os_family == "Debian"
        - ansible_processor_cores >= 1 or ansible_memory_mb.real.total >= 512
      tags:
        - install
    - name: Install nginx (Alpine)
      community.general.apk:
        name: nginx
        state: present
      when:
        - ansible_os_family == "Alpine"
        - ansible_processor_cores >= 1 or ansible_memory_mb.real.total >= 512
      tags:
        - install
    ## Buat user
    - name: Buat user (Debian) 
      ansible.builtin.user:
        name: ""
        password: belajaransible
        shell: /bin/bash
      when:
        - ansible_os_family == "Debian"
      tags:
        - setup
        - create_user
    - name: Buat user (Alpine) 
      ansible.builtin.user:
        name: ""
        password: belajaransible
        shell: /bin/sh
      when:
        - ansible_os_family == "Alpine"
      tags:
        - setup
        - create_user
    ## Copy file html
    - name: Copy file html (Debian)
      ansible.builtin.copy:
        src: ./web/
        dest: /var/www/html/
        mode: '604'
        owner: ""
        group: ""
      when:
        - ansible_os_family == "Debian"
      tags:
        - setup
        - copy_file
    - name: Copy file html (Alpine)
      ansible.builtin.copy:
        src: ./web/
        dest: /usr/share/nginx/html
        mode: '604'
        owner: ""
        group: ""
      when:
        - ansible_os_family == "Alpine"
      tags:
        - setup
        - copy_file
--tags <tag1>,<tag2>--skip-tags <tag1>,<tag2>ansible-playbook <nama_file.yaml> --check --tags copy_file
ansible-playbook <nama_file.yaml> --tags copy_file,create_user
ansible-playbook <nama_file.yaml> --skip-tags install
ansible-playbook 05\ -\ playbook_webserver_tags.yaml --tags copy_file
ansible-playbook 05\ -\ playbook_webserver_tags.yaml --tags copy_file,create_user