Skip to content

Commit

Permalink
New target for sanity testing of the collection
Browse files Browse the repository at this point in the history
Do not run in Zuul
  • Loading branch information
AlanCoding authored and ryanpetrello committed Oct 29, 2019
1 parent 2ea63ee commit e097bc6
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,7 @@ use_dev_supervisor.txt
awx_collection_test_venv/
awx_collection/*.tar.gz
awx_collection/galaxy.yml
sanity/

.idea/*
*.unison.tmp
Expand Down
8 changes: 8 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -399,6 +399,14 @@ flake8_collection:

test_collection_all: prepare_collection_venv test_collection flake8_collection

test_collection_sanity:
rm -rf sanity
mkdir -p sanity/ansible_collections/awx
cp -Ra awx_collection sanity/ansible_collections/awx/awx # symlinks do not work
cd sanity/ansible_collections/awx/awx && ansible-playbook -i localhost, make_imports_absolute.yml # hack because sanity tests do not fully work
cd sanity/ansible_collections/awx/awx && git init && git add . # requires both this file structure and a git repo, so there you go
cd sanity/ansible_collections/awx/awx && ansible-test sanity --test validate-modules

build_collection:
ansible-playbook -i localhost, awx_collection/template_galaxy.yml -e collection_package=$(COLLECTION_PACKAGE) -e collection_namespace=$(COLLECTION_NAMESPACE) -e collection_version=$(VERSION)
ansible-galaxy collection build awx_collection --output-path=awx_collection
Expand Down
17 changes: 17 additions & 0 deletions awx_collection/make_imports_absolute.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
- hosts: localhost
gather_facts: false
connection: local

tasks:
- name: Find all module files
find:
paths: "{{ playbook_dir }}/plugins/modules"
patterns: "*.py"
register: module_files

- name: Change module_utils imports to absolute namespace and package names
replace:
path: "{{ item.path }}"
regexp: '^from ..module_utils.ansible_tower'
replace: 'from ansible_collections.awx.awx.plugins.module_utils.ansible_tower'
with_items: "{{ module_files.files }}"

0 comments on commit e097bc6

Please sign in to comment.