vmware / vmware/photon

Ansible & tdnf

Open
#1,245 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

4.0
Dominant language
C
Stars
3.2k
Forks
692
PR merge metrics
No merged PRs in 30d

Description

I'm trying to learn Ansible to manage my Photon VMs on ESXi. I was expecting a playbook like this would work from inside a PhotonOS 4.0 Docker image:

---
- hosts: k8s-server
  tasks:
  - name: Install K8s
    tdnf:
      name: kubernetes,iptables
      state: latest
      update_cache: yes

But I get errors: ERROR! couldn't resolve module/action 'tdnf'. This often indicates a misspelling, missing collection, or incorrect module path.

I see this patch:
https://github.com/vmware/photon/blob/master/SPECS/ansible/ansible.spec & https://github.com/vmware/photon/blob/master/SPECS/ansible/ansible-tdnf.patch
Which appears to add the tdnf module to Ansible, but I haven't been able to figure out how to get that patched version of Ansible. The version in the Docker image is:

# ansible --version
ansible 2.9.22
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.9/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.9.1 (default, Aug 19 2021, 02:58:42) [GCC 10.2.0]

I started trying to learn rpmbuild to build that spec, but I've encountered various issues, most recently that ansible-2.11.1 doesn't actually seem to be released http://releases.ansible.com/ansible/ansible-2.11.1.tar.gz https://pypi.org/project/ansible/#history

Is there a supported way to get Ansible with tfnd, on any OS? Perhaps a YUM repo I need to add? Or a command in this repo that I should be running that will successfully build that spec?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with SPECS/ansible/ansible.spec and SPECS/ansible/ansible-tdnf.patch, then compare them with the Ansible version in the PhotonOS 4.0 Docker image. Check whether the repository provides a build command or repository path for the patched package; done means identifying a supported installation or build procedure for Ansible with the tdnf module.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, yaml
Domain
build-system, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.