--- - name: '[APT] install dependencies and tools' become: true ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 pkg: - autoconf - bc - ca-certificates # docker-ce - curl - g++ - gcc - git - gnupg # docker-ce - jq - libasound2 # draw.io - libatspi2.0-0 # draw.io - libgtk-3-0 # draw.io - libnotify4 # draw.io - libnss3 # draw.io - libsecret-1-0 # draw.io - libxss1 # draw.io - libxtst6 # draw.io - make - shellcheck - valgrind - xdg-utils # draw.io state: present - name: '[GitHub] install tools' become: true tags: - molecule-idempotence-notest nullified.infrastructure.github_artifact: github_token: '{{ custom_github_token }}' artifacts: - asset_name: dive_{version}_linux_amd64.deb asset_type: release repository: wagoodman/dive cmds: - dpkg -i {asset_dirname}/{asset_filename} - asset_name: kubeconform-linux-amd64.tar.gz asset_type: release repository: yannh/kubeconform cmds: - tar -zxf {asset_dirname}/{asset_filename} - install --group=root --mode=755 --owner=root kubeconform /usr/local/bin - asset_name: git-delta_{version}_amd64.deb asset_type: release repository: dandavison/delta cmds: - dpkg -i {asset_dirname}/{asset_filename} - asset_name: docker-compose-linux-x86_64 asset_type: release repository: docker/compose cmds: - install --group=root --mode=755 --owner=root {asset_dirname}/{asset_filename} /usr/local/bin/docker-compose - test -d /usr/local/lib/docker/cli-plugins && (rm /usr/local/lib/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/local/lib/docker/cli-plugins) || true - test -d /usr/local/libexec/docker/cli-plugins && (rm /usr/local/libexec/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/local/libexec/docker/cli-plugins) || true - test -d /usr/lib/docker/cli-plugins && (rm /usr/lib/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/lib/docker/cli-plugins) || true - test -d /usr/libexec/docker/cli-plugins && (rm /usr/libexec/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/libexec/docker/cli-plugins) || true - asset_name: buildx-{version}.linux-amd64 asset_type: release repository: docker/buildx cmds: - install --group=root --mode=755 --owner=root {asset_dirname}/{asset_filename} /usr/local/bin/docker-buildx - test -d /usr/local/lib/docker/cli-plugins && (rm /usr/local/lib/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/local/lib/docker/cli-plugins) || true - test -d /usr/local/libexec/docker/cli-plugins && (rm /usr/local/libexec/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/local/libexec/docker/cli-plugins) || true - test -d /usr/lib/docker/cli-plugins && (rm /usr/lib/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/lib/docker/cli-plugins) || true - test -d /usr/libexec/docker/cli-plugins && (rm /usr/libexec/docker/cli-plugins/docker-compose; ln -s /usr/local/bin/docker-compose /usr/libexec/docker/cli-plugins) || true - asset_name: drawio-amd64-{version}.deb asset_type: release repository: jgraph/drawio-desktop cmds: - dpkg -i {asset_dirname}/{asset_filename} - asset_name: OpenLens-{version}.amd64.deb asset_type: release repository: MuhammedKalkan/OpenLens cmds: - dpkg -i {asset_dirname}/{asset_filename} - asset_name: stern_{version}_linux_amd64.tar.gz asset_type: release repository: stern/stern cmds: - tar -zxf {asset_dirname}/{asset_filename} - install --group=root --mode=755 --owner=root stern /usr/local/bin - asset_name: tofu_{version}_amd64.deb asset_type: release repository: opentofu/opentofu cmds: - dpkg -i {asset_dirname}/{asset_filename} - name: '[Custom] install latest kubectl' become: yes tags: - molecule-idempotence-notest ansible.builtin.shell: | kubeVersion=$(curl -sSL -f https://storage.googleapis.com/kubernetes-release/release/stable.txt 2> /dev/null) kubeVersion=${kubeVersion:-v1.28.2} curl --silent --compressed -L -XGET https://storage.googleapis.com/kubernetes-release/release/${kubeVersion}/bin/linux/amd64/kubectl -o kubectl install --group=root --mode=755 --owner=root kubectl /usr/local/bin && rm kubectl - name: '[Custom] install latest Helm' become: yes tags: - molecule-idempotence-notest ansible.builtin.shell: | helmVersion=$(curl -sSL https://api.github.com/repos/helm/helm/releases/latest | jq -r '.tag_name') helmVersion=${helmVersion:-v3.13.0} curl --silent --compressed -L -XGET https://get.helm.sh/helm-${helmVersion}-linux-amd64.tar.gz -o helm.tar.gz tar -zxf helm.tar.gz install --group=root --mode=755 --owner=root linux-amd64/helm /usr/local/bin && rm -rf linux-amd64 helm.tar.gz - name: '[custom] install Docker CE repository' block: - name: '[apt key] retrieve GPG key' tags: - molecule-idempotence-notest ansible.builtin.shell: |- curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg chmod a+r /etc/apt/keyrings/docker.gpg - name: '[apt key] add source' ansible.builtin.apt_repository: repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable" state: present - name: '[Apt Key] refresh repository' ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 0 - name: '[Apt] install Docker CE' become: yes ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 pkg: - docker-ce - docker-ce-cli - containerd.io state: present