Find the Best Cosmetic Hospitals

Explore trusted cosmetic hospitals and make a confident choice for your transformation.

“Invest in yourself — your confidence is always worth it.”

Explore Cosmetic Hospitals

Start your journey today — compare options in one place.

Ansible Template and Handlers explained with Example

We can declare variables in

  • playbook
  • inventory
  • commands

Which can be used & Intropolate only in playbook Tasks but not in the files used in playbook.

Solution: Template
Using Template module you can Intropolate vars mentioned in the files used in playbook.

Rule for using template Module

  • A file must be .j2 ext
  • Must use a module call “template”

Example Code for Cento/RHEL


---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajesh Kumar"

  tasks:
  - name: Install Apache in centos7
    ansible.builtin.yum:
      name: httpd
      state: latest
  - name: Copy index.html
    ansible.builtin.copy:
      src: index.html
      dest: /var/www/html/index.html
  - name: Template index.html
    template:
      src: index.html.j2
      dest: /var/www/html/index-template.html
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: httpd
      state: startedCode language: JavaScript (javascript)

index.html.j2

Project Requirement

  • When you Change APACHE STATIC HTML Content -> HTTPD restart is not required
  • When you Change APACHE Conf -> HTTPD restart is not required
  • HTTP should be run 90
  • No restart should be done on STATIC
  • Restart must be done at conf changes

---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajesh Kumar"
    httpport: 8090

  tasks:
  - name: Install Apache in centos7
    ansible.builtin.yum:
      name: httpd
      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: httpd
      state: started
  - name: stopped a Apache Server
    ansible.builtin.service:
      name: httpd
      state: stopped
  - name: Template for httpd.conf
    template:
      src: httpd.conf.j2
      dest: /etc/httpd/conf/httpd.conf
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: httpd
      state: started

Code language: JavaScript (javascript)

Example code for Template for Ubuntu


---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajesh Kumar"
    port: 81

  tasks:
  - name: Install Apache in Ubuntu
    ansible.builtin.apt:
      name: apache2
      state: latest
  - name: Copy index.html
    ansible.builtin.copy:
      src: index.html
      dest: /var/www/html/index.html
  - name: stopped a Apache Server
    ansible.builtin.service:
      name: apache2
      state: stopped
  - name: Template for httpd.conf
    template:
      src: ports.conf.j2
      dest: /etc/apache2/ports.conf
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: apache2
      state: started
Code language: JavaScript (javascript)

Problems

  • No change in config file but STOP and START happening

Solution

  • Handlers

What is Handlers?

  • A section is plyabook similar to tasks section
  • It contains multiple task similar to tasks section
  • The Handler task would execute when you call from tasks’s task
  • BUT one condition – ONLY when calling tasks’s task is CHANGED == TRUE

---
- name: Update web servers
  hosts: web
  vars:
    myname: "Rajesh Kumar"
    httpport: 8090

  tasks:
  - name: Install Apache in centos7
    ansible.builtin.yum:
      name: httpd
      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: httpd
      state: started
  - name: Template for httpd.conf
    template:
      src: httpd.conf.j2
      dest: /etc/httpd/conf/httpd.conf
    notify:
      - ReStarting a Apache Server

  handlers:
  - name: ReStarting a Apache Server
    ansible.builtin.service:
      name: httpd
      state: restarted


Code language: JavaScript (javascript)

Handlers Code Example for Ubuntu


---
- name: Update web servers
  hosts: localhost
  vars:
    myname: "Rajesh Kumar"
    port: 81

  tasks:
  - name: Install Apache in Ubuntu
    ansible.builtin.apt:
      name: apache2
      state: latest
  - name: Copy index.html
    ansible.builtin.copy:
      src: index.html
      dest: /var/www/html/index.html
  - name: Template for httpd.conf
    template:
      src: ports.conf.j2
      dest: /etc/apache2/ports.conf
    notify:
      - ReStarting a Apache Server
  - name: Starting a Apache Server
    ansible.builtin.service:
      name: apache2
      state: started

  handlers:
  - name: ReStarting a Apache Server
    ansible.builtin.service:
      name: apache2
      state: restarted
Code language: JavaScript (javascript)

Find Trusted Cardiac Hospitals

Compare heart hospitals by city and services — all in one place.

Explore Hospitals
I'm Rajesh Kumar, a DevOps, SRE, DevSecOps, Cloud, and Platform Engineering expert passionate about sharing practical knowledge, real-world experiences, and industry best practices. I have worked at Cotocus and regularly write about technology, travel, investing, health, product reviews, and digital marketing through my various platforms. I publish technical articles at DevOps School, travel stories at Holiday Landmark, stock market insights at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow, and SEO and digital marketing strategies at Wizbrand.

Related Posts

Top 10 AI Document Redaction Tools in 2026: Features, Pros, Cons & Comparison

Introduction In 2026, AI document redaction tools are critical for organizations handling sensitive information, ensuring compliance with regulations like GDPR, HIPAA, and CCPA. These tools leverage artificial…

Read More

Top 10 IT Asset Management (ITAM) Tools in 2026: Features, Pros, Cons & Comparison

Introduction IT Asset Management (ITAM) is a critical discipline that focuses on managing an organization’s technology assets throughout their lifecycle—from procurement to disposal. In 2026, with the…

Read More

Top 10 AI Essay Grading Tools in 2026: Features, Pros, Cons & Comparison

Introduction In 2026, AI essay grading tools have become indispensable for educators, students, and institutions looking to streamline the assessment process while maintaining high-quality feedback. These tools…

Read More

Top 10 AI Conversion Rate Optimization Tools in 2026: Features, Pros, Cons & Comparison

Introduction In 2026, AI-powered Conversion Rate Optimization (CRO) tools are transforming digital marketing by leveraging machine learning, predictive analytics, and real-time personalization to boost conversions. These tools…

Read More

Top 10 Integration Platform as a Service (iPaaS) Tools in 2026: Features, Pros, Cons & Comparison

Introduction In today’s fast-paced digital world, businesses are leveraging multiple software applications, cloud services, and data sources to streamline operations. However, the challenge lies in integrating these…

Read More

IReviewed Blog’s Post List

truereviewnow.com is a portal for product review and rating. truereviewnow.com is having very in-depth analysis of review and testimony of Mobiles, Laptop, Electronics Gadgets, Airports, Boradbands, Movies…

Read More