Windows Users: Setup appropriate WSL engine
Run the following command line to enable passwordless sudo access.
cat <<EOF | sudo tee /etc/sudoers.d/$(id -un)
$(id -un) ALL=(ALL:ALL) NOPASSWD:ALL
EOF
cat <<EOF | sudo tee /etc/apt/preferences.d/salt-pin-1001
Package: salt-*
Pin: version 3006.*
Pin-Priority: 1001
EOF
curl -fsSL https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public \
| sudo tee /etc/apt/keyrings/salt-archive-keyring.pgp \
&& echo "deb [signed-by=/etc/apt/keyrings/salt-archive-keyring.pgp arch=amd64] https://packages.broadcom.com/artifactory/saltproject-deb stable main" \
| sudo tee /etc/apt/sources.list.d/salt.list
Run the following commands to clone the repository and set appropriate permissions.
sudo git clone https://github.com/fjudith/salt-ubuntu-devops-tools /srv/salt \
&& sudo chown -R $(id -un) /srv/salt
Run the following commands to configure the pillar.
sudo mkdir -vp /srv/pillar \
&& sudo chown $(id -un) /srv/pillar \
&& cp -vf /srv/salt/pillar.sls.example /srv/pillar/devops.sls \
&& cp -vf /srv/salt/pillar.top.sls.example /srv/pillar/top.sls
Edit the /srv/pillar/devops.sls
to customize installed tools.
example:
common:
enabled: true
aquasecurity:
trivy:
enabled: true
falco:
enabled: false
hashicorp:
terraform:
cli:
enabled: true
pulumi:
cli:
enabled: false
kubernetes:
cli:
enabled: true
helm:
enabled: true
Run the following command to install the tools locally with Salt (i.e. Salt Masterless)
sudo salt-call --local state.highstate
Debug only:
sudo salt-call --local state.highstate --file-root=/srv/salt --pillar-root=/srv/pillar --retcode-passthrough -l info