Role to install (by default) syft on Debian/Ubuntu and EL systems. A CLI tool and Go library for generating a Software Bill of Materials (SBOM) from container images and filesystems.
None.
Available variables are listed below (located in defaults/main.yml
):
syft_app: syft
syft_desired_state: present
syft_version: 1.17.0
syft_os: "{{ ansible_system | lower }}"
syft_architecture_map:
amd64: amd64
arm: arm64
x86_64: amd64
armv6l: armv6
armv7l: armv7
aarch64: arm64
32-bit: "386"
64-bit: amd64
# For Debian/Ubuntu Family
syft_debian_url: "https://github.com/anchore/{{ syft_app }}/releases/download/v{{ syft_version }}/{{ syft_app }}_{{ syft_version }}_{{ syft_os }}_{{ syft_architecture_map[ansible_architecture] }}.deb"
# For EL Family
syft_el_url: "https://github.com/anchore/{{ syft_app }}/releases/download/v{{ syft_version }}/{{ syft_app }}_{{ syft_version }}_{{ syft_os }}_{{ syft_architecture_map[ansible_architecture] }}.rpm"
Variable | Description |
---|---|
syft_app | Defines the app to install i.e. syft |
syft_desired_state | Defined to dynamically chose whether to install (i.e. either present or latest ) or uninstall (i.e. absent ) the package. Defaults to present . |
syft_version | Defined to dynamically fetch the desired version to install. Defaults to: 1.17.0 |
syft_os | Defines os type. Used for obtaining the correct type of binaries based on OS type. |
syft_architecture_map | Defines os architecture. Used for obtaining the correct type of binaries based on OS System Architecture. |
syft_debian_url | Defines URL to download the 'deb' package from for Debian/Ubuntu family systems. |
syft_el_url | Defines URL to download the 'rpm' package from for EL family systems. |
None
For default behaviour of role (i.e. installation of syft) in ansible playbooks.
- hosts: servers
roles:
- darkwizard242.syft
For customizing behavior of role (i.e. specifying the desired syft version) in ansible playbooks.
- hosts: servers
roles:
- darkwizard242.syft
vars:
syft_version: 0.32.2
For customizing behavior of role (i.e. different os architecture of syft package like arm64) in ansible playbooks.
- hosts: servers
roles:
- darkwizard242.syft
vars:
syft_arch: "arm64"
This role was created by Ali Muhammad