Turn Your Vehicle Into a Smart Earning Asset

While youโ€™re not driving your car or bike, it can still be working for you. MOTOSHARE helps you earn passive income by connecting your vehicle with trusted renters in your city.

๐Ÿš— You set the rental price
๐Ÿ” Secure bookings with verified renters
๐Ÿ“ Track your vehicle with GPS integration
๐Ÿ’ฐ Start earning within 48 hours

Join as a Partner Today

Itโ€™s simple, safe, and rewarding. Your vehicle. Your rules. Your earnings.

Ansible Tutorials: Ansible Variables in Playbook

  1. Inventories: You can define variables in your inventory files, either globally for all hosts or specific to particular groups or hosts.
  2. Host or Group Variables: Create separate files for host or group variables inside the host_vars and group_vars directories within your Ansible project.
  3. Playbook-level Variables: Declare variables at the top level of your playbook using the vars keyword.

Ansible Variable in Playbook with following ways:

  • Use variables in playbook directly
  • Use variables using external var files in playbook
  • Use variables using include_vars into task in playbook
  • Use variables using User Prompt in playbook
  • Use variables using outout of task using register

List of Way to declare variables in Playbook

  1. Playbook-level Variables: Declare variables at the top level of your playbook using the vars keyword.
  2. Task-level Variables: You can also define variables within specific tasks.
  3. Register Variables: You can capture the output of a task into a variable using the register keyword.
  4. Environment Variables: You can use environment variables by accessing them using Ansible’s ansible_env dictionary.
  5. Using Facts: Ansible gathers facts about managed hosts, and you can use these facts as variables in your playbooks.
  6. Prompting for User Input: You can use the vars_prompt keyword to prompt the user for input during playbook execution.

Declare variables at the top level of your playbook using the vars keyword.


- name: Example playbook
  hosts: all
  vars:
    variable_name: value
  tasks:
    # Your tasks here
Code language: PHP (php)

Task-level Variables:


- name: Example playbook
  hosts: all
  tasks:
    - name: Task with variables
      debug:
        msg: "My variable: {{ variable_name }}"
      vars:
        variable_name: value
Code language: JavaScript (javascript)

Register Variables:


- name: Example playbook
  hosts: all
  tasks:
    - name: Task with register
      shell: echo "Hello, world!"
      register: output
    - name: Display registered variable
      debug:
        var: output.stdout
Code language: JavaScript (javascript)

Environment Variables:


- name: Example playbook
  hosts: all
  tasks:
    - name: Display environment variable
      debug:
        var: ansible_env.VARIABLE_NAME
Code language: JavaScript (javascript)

Using Facts:


- name: Example playbook
  hosts: all
  tasks:
    - name: Display fact
      debug:
        var: ansible_facts['ansible_os_family']
Code language: JavaScript (javascript)

Prompting for User Input:


- name: Example playbook
  hosts: all
  vars_prompt:
    - name: variable_name
      prompt: "Enter a value for the variable:"
  tasks:
    - name: Display input variable
      debug:
        var: variable_name
Code language: JavaScript (javascript)

Ansible Playbook with Variable for Centos/RHEL


---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajeshkumar"
    age: "18"
    packagename: "httpd"
    servicename: "httpd"
  vars_files:
    - "vars.yaml"
  vars_prompt:
    - name: "version"
      prompt: "Which version Do you want to install?"
      private: no

  tasks:
  - name: Install Apache in centos7
    ansible.builtin.yum:
      name: "{{ packagename }}"
      state: latest
  - name: Copy index.html
    ansible.builtin.copy:
      src: index.html
      dest: /var/www/html/index.html
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: "{{ servicename }}"
      state: started
  - name: Print return information from the previous task
    ansible.builtin.debug:
      var: myname
  - name: include default step variables
    include_vars: tasks_var.yaml
  - name: Print return information from the previous task
    ansible.builtin.debug:
      msg: "My Name is {{ myname }} and My age is {{ age }}"
  - name: Print return information from the previous task
    ansible.builtin.debug:
      var: version
  - name: Ansible register variable basic example
    shell: "find *.txt"
    args:
      chdir: "/home/azureuser/rajesh"
    register: find_output
  - debug:
      var: find_output
  - debug:
      var: find_output.stdout_lines
  - debug:
      var: find_output.stdout_lines[0]Code language: PHP (php)

Ansible Playbook with Variable for Ubuntu

---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajeshkumar"
    age: "18"
    packagename: "apache2"
    servicename: "apache2"
  vars_files:
    - "vars.yaml"
  vars_prompt:
    - name: "version"
      prompt: "Which version Do you want to install?"
      private: no

  tasks:
  - name: Install Apache in ubuntu
    ansible.builtin.apt:
      name: "{{ packagename }}"
      state: latest
  - name: Copy index.html
    ansible.builtin.copy:
      src: index.html
      dest: /var/www/html/index.html
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: "{{ servicename }}"
      state: started
  - name: Print return information from the previous task
    ansible.builtin.debug:
      var: myname
  - name: include default step variables
    include_vars: tasks_var.yaml
  - name: Print return information from the previous task
    ansible.builtin.debug:
      msg: "My Name is {{ myname }} and My age is {{ age }}"
  - name: Print return information from the previous task
    ansible.builtin.debug:
      var: version
  - name: Ansible register variable basic example
    shell: "find *.txt"
    args:
      chdir: "/root/ansible"
    register: find_output
  - debug:
      var: find_output
  - debug:
      var: find_output.stdout_lines
  - debug:
      var: find_output.stdout_lines[0]Code language: PHP (php)

Ansible Varialble Precedence


Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.