Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Selfhosted
  3. Ansible is an abstraction layer over system utilities, shell, and other programs.

Ansible is an abstraction layer over system utilities, shell, and other programs.

Scheduled Pinned Locked Moved Selfhosted
2 Posts 2 Posters 5 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R This user is from outside of this forum
    R This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #1

    Ansible is an abstraction layer over system utilities, shell, and other programs. You can specify what you want to happen, and it will figure out how to do it. For example, you can use the ansible.builtin.package module to specify which packages you want to be present, and Ansible will decide which specific package manager module should handle it and how.

    Ansible tasks are also idempotent -- they are concerned with the end state instead of the action. Many of the modules (like the package module above) take a state parameter with the possible values of present or absent (instead of the more common "install" and "remove" actions). If the system's state satisfies the task's expected end state (e.g. the package is already present), the task will be skipped -- unlike a shell script, which would simply re-run the entire script every time.

    Ansible also implements strict error checking. If a task fails, it won't run any subsequent tasks on the host since the end states would be unpredictable.

    C 1 Reply Last reply
    6
    • R [email protected]

      Ansible is an abstraction layer over system utilities, shell, and other programs. You can specify what you want to happen, and it will figure out how to do it. For example, you can use the ansible.builtin.package module to specify which packages you want to be present, and Ansible will decide which specific package manager module should handle it and how.

      Ansible tasks are also idempotent -- they are concerned with the end state instead of the action. Many of the modules (like the package module above) take a state parameter with the possible values of present or absent (instead of the more common "install" and "remove" actions). If the system's state satisfies the task's expected end state (e.g. the package is already present), the task will be skipped -- unlike a shell script, which would simply re-run the entire script every time.

      Ansible also implements strict error checking. If a task fails, it won't run any subsequent tasks on the host since the end states would be unpredictable.

      C This user is from outside of this forum
      C This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #2

      Great summary “a lot of common error checking has gone into it. It can be told what you want without specifics that would only potentially be applicable to 1 system type.”

      1 Reply Last reply
      1
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • World
      • Users
      • Groups