Skip to content

Commit

Permalink
Install awx collection from branch for operator ci
Browse files Browse the repository at this point in the history
  • Loading branch information
chrismeyersfsu committed Nov 7, 2024
1 parent dfee5a1 commit 51b1fa4
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,8 @@ jobs:
working-directory: awx-operator
run: |
python3 -m pip install -r molecule/requirements.txt
python3 -m pip install PyYAML # for awx/tools/scripts/rewrite-awx-operator-requirements.py
$(realpath ../awx/tools/scripts/rewrite-awx-operator-requirements.py) molecule/requirements.yml $(realpath ../awx)
ansible-galaxy collection install -r molecule/requirements.yml
sudo rm -f $(which kustomize)
make kustomize
Expand Down
40 changes: 40 additions & 0 deletions tools/scripts/rewrite-awx-operator-requirements.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#!/usr/bin/env python3

import yaml
import sys


AWX_ENTRY = 'https://github.com/ansible/awx.git#/awx_collection/'


def load_yaml_file(fname):
with open(fname, 'r') as file:
data = yaml.safe_load(file)
return data


def write_yaml_file(fname, data):
with open(fname, 'w') as file:
yaml.dump(data, file)


def replace_awx(data, path):
for entry in data['collections']:
if entry['name'] == AWX_ENTRY or entry['name'] == 'awx.awx':
entry['name'] = f'file://{path}#/awx_collection/'
entry['type'] = 'git'
entry.pop('version', None)
return data

raise ValueError(f"Failed to find {AWX_ENTRY} in {data}")


def run(fname, awx_path):
write_yaml_file(fname, replace_awx(load_yaml_file(fname), awx_path))


if __name__ == "__main__":
if len(sys.argv) == 3:
run(sys.argv[1], sys.argv[2])
else:
print(f"Usage: {sys.argv[0]} <awx-operator-molecule-requirements.yml> <awx-git-path>", file=sys.stderr)

0 comments on commit 51b1fa4

Please sign in to comment.