Chapter 4. Creating a playbook project
4.1. Scaffolding a playbook project
The following steps describe the process for scaffolding a new playbook project with the Ansible VS Code extension.
Prerequisites
- You have installed Ansible development tools.
- You have installed and opened the Ansible VS Code extension.
- You have identified a directory where you want to save the project.
Procedure
- Open VS Code.
- Click the Ansible icon in the VS Code activity bar to open the Ansible extension.
Select Get started in the Ansible content creator section.
The Ansible content creator tab opens.
In the Create section, click Ansible playbook project.
The Create Ansible project tab opens.
In the form in the Create Ansible project tab, enter the following:
Destination directory: Enter the path to the directory where you want to scaffold your new playbook project.
NoteIf you enter an existing directory name, the scaffolding process overwrites the contents of that directory. The scaffold process only allows you to use an existing directory if you enable the
Force
option.-
If you are using the containerized version of Ansible Dev tools, the destination directory path is relative to the container, not a path in your local system. To discover the current directory name in the container, run the
pwd
command in a terminal in VS Code. If the current directory in the container isworkspaces
, enterworkspaces/<destination_directory_name>
. -
If you are using a locally installed version of Ansible Dev tools, enter the full path to the directory, for example
/user/<username>/projects/<destination_directory_name>
.
-
If you are using the containerized version of Ansible Dev tools, the destination directory path is relative to the container, not a path in your local system. To discover the current directory name in the container, run the
- SCM organization and SCM project: Enter a name for the directory and subdirectory where you can store roles that you create for your playbooks.
- Enter a name for the directory where you want to scaffold your new playbook project.
Verification
After the project directory has been created, the following message appears in the Logs pane of the Create Ansible Project tab. In this example, the destination directory name is destination_directory_name
.
------------------ ansible-creator logs ------------------ Note: ansible project created at /Users/username/test_project
The following directories and files are created in your project directory:
$ tree -a -L 5 . ├── .devcontainer │ ├── devcontainer.json │ ├── docker │ │ └── devcontainer.json │ └── podman │ └── devcontainer.json ├── .gitignore ├── README.md ├── ansible-navigator.yml ├── ansible.cfg ├── collections │ ├── ansible_collections │ │ └── scm_organization_name │ │ └── scm_project_name │ └── requirements.yml ├── devfile.yaml ├── inventory │ ├── group_vars │ │ ├── all.yml │ │ └── web_servers.yml │ ├── host_vars │ │ ├── server1.yml │ │ ├── server2.yml │ │ ├── server3.yml │ │ ├── switch1.yml │ │ └── switch2.yml │ └── hosts.yml ├── linux_playbook.yml ├── network_playbook.yml └── site.yml