AnsiblePilot — Master Ansible Automation

AnsiblePilot is the leading resource for learning Ansible automation, DevOps, and infrastructure as code. Browse over 1,100 tutorials covering Ansible modules, playbooks, roles, collections, and real-world examples. Whether you are a beginner or an experienced engineer, our step-by-step guides help you automate Linux, Windows, cloud, containers, and network infrastructure.

Popular Topics

About Luca Berton

Luca Berton is an Ansible automation expert, author of "Ansible for VMware by Examples" and "Ansible for Kubernetes by Example" published by Apress, and creator of the Ansible Pilot YouTube channel. He shares practical automation knowledge through tutorials, books, and video courses to help IT professionals and DevOps engineers master infrastructure automation.

Create ISO image from Files and Folders - Ansible module iso_create

By Luca Berton · Published 2024-01-01 · Category: installation

How to automate the creation of a "test.iso" ISO9660 file containing an "helloworld.txt" file using Ansible Playbook and iso_create module.

How to Create ISO image from Files and Folders with Ansible? I'm going to show you a live Playbook with some simple Ansible code. I'm Luca Berton and welcome to today's episode of Ansible Pilot

Create ISO images from the Files and Folders • community.general.iso_create • Generate ISO files with specified files or folders

Let's talk about the Ansible module iso_create. The full name is community.general.iso_create, which means that is part of the collection of modules "community.general" maintained by the Ansible Community. This module requires the extra pycdlib Python library. You can easily install the pycdlib Python library using PIP, the Python Package Installer. The purpose of the module is to generate ISO files with specified files or folders.

Parameters • dest_iso path - ISO file absolute path • src_files list - absolute paths of source files or folder • interchange_level integer - ISO9660 standards (1–4) • joliet integer - Joliet extension (1–3) • rock_ridge string - Rock Ridge extension (1.09, 1.10, 1.12) • udf boolean - no/yes UDF support 2.60

Let me summarize the main parameters of the module iso_create. The required parameters are "dest_iso" and "src_files". The "dest_iso" parameter contains the generated ISO file absolute path according to the ISO9660 standard. The "src_files" parameter contains the list of absolute paths of source files or folders. You probably would like to set to four the "interchange_level" parameter because it allows you to specify which of the fourth ISO9660 standards to support, default to "1". Level 1 is the most restrictive standard and Level 4 is the most permissive one. With all ISO9660 levels from 1 to 3, all file names are restricted to uppercase letters, numbers, and underscores (\_). File names are limited to 31 characters, directory nesting is limited to 8 levels, and path names are limited to 255 characters. Level 1 allows a maximum of 8 characters for names and 3 characters in the extension. Joliet is a popular ISO9660 extension in the Windows-like environment that you could enable setting to three the "joliet" parameter to allow the support of filenames up to 103 characters in length (according to the mkisofs documentation). Rock Ridge is another popular ISO9660 extension in the Unix-like operating systems to enable up to 255 bytes long file names and soft/hard links. You can enable the "1.12" specification setting accordingly the "rock_ridge" parameter. Another popular extension is the Universal Disk Format (UDF) which allows files to be created, deleted, and changed on a disc just as a general-purpose filesystem. You can enable the UDF specification 2.60 setting the "udf" boolean.

Linkscommunity.general.iso_create

Playbook Let's jump into a real-life Ansible Playbook to Create ISO images from Files and Folders. I'm going to show you how to create an example.iso image with a file "helloworld.txt" inside the user's devopshome directory.

code • create_iso.yml

execution

not-idempotent

before execution

after execution

code with ❤️ in GitHub

Conclusion

Now you know how to create an ISO image from Files and Folders.

Related ArticlesAnsible Inventory GuideAnsible for Windows Guide

Category: installation

Watch the video: Create ISO image from Files and Folders - Ansible module iso_create — Video Tutorial

Browse all Ansible tutorials · AnsiblePilot Home