--- - name: adds the kubernetes repo and installs kubectl hosts: all tasks: - name: update apt cache ansible.builtin.apt: update_cache: true become: true - name: install core pre-reqs ansible.builtin.apt: pkg: - apt-transport-https - ca-certificates - curl - gnupg become: true - name: check to see if gpg key exists ansible.builtin.stat: path: /etc/apt/keyrings/kubernetes-apt-keyring.gpg register: st become: true - name: download the key and install it ansible.builtin.shell: | curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.31/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # allow unprivileged APT programs to read this keyring when: st.stat.exists != true become: true - name: add the kubernetes apt repository ansible.builtin.apt_repository: repo: "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.31/deb/ /" state: present filename: kubernetes.list become: true - name: update apt cache and install kubectl ansible.builtin.apt: name: kubectl update_cache: true become: true - name: does argocd exists ansible.builtin.stat: path: /usr/local/bin/argocd register: st - name: install argocd ansible.builtin.shell: | VERSION=$(curl -L -s https://raw.githubusercontent.com/argoproj/argo-cd/stable/VERSION) curl -sSL -o argocd-linux-amd64 https://github.com/argoproj/argo-cd/releases/download/v$VERSION/argocd-linux-amd64 sudo install -m 555 argocd-linux-amd64 /usr/local/bin/argocd rm argocd-linux-amd64 when: st.stat.exists != true become: true