mirror of
https://github.com/ansible/awx.git
synced 2026-01-16 04:10:44 -03:30
Unify collection targets for install and ansible-test
This commit is contained in:
parent
9f948e90d9
commit
85ec73bf4b
22
Makefile
22
Makefile
@ -402,6 +402,7 @@ prepare_collection_venv:
|
||||
COLLECTION_TEST_DIRS ?= awx_collection/test/awx
|
||||
COLLECTION_PACKAGE ?= awx
|
||||
COLLECTION_NAMESPACE ?= awx
|
||||
COLLECTION_INSTALL = ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE)/awx
|
||||
|
||||
test_collection:
|
||||
@if [ "$(VENV_BASE)" ]; then \
|
||||
@ -414,28 +415,27 @@ flake8_collection:
|
||||
|
||||
test_collection_all: prepare_collection_venv test_collection flake8_collection
|
||||
|
||||
test_collection_sanity:
|
||||
rm -rf sanity
|
||||
mkdir -p sanity/ansible_collections/$(COLLECTION_NAMESPACE)
|
||||
cp -Ra awx_collection sanity/ansible_collections/$(COLLECTION_NAMESPACE)/awx # symlinks do not work
|
||||
cd sanity/ansible_collections/$(COLLECTION_NAMESPACE)/awx && git init && git add . # requires both this file structure and a git repo, so there you go
|
||||
cd sanity/ansible_collections/$(COLLECTION_NAMESPACE)/awx && ansible-test sanity
|
||||
|
||||
# WARNING: symlinking a collection is fundamentally unstable
|
||||
# this is for rapid development iteration with playbooks, do not use with other test targets
|
||||
symlink_collection:
|
||||
rm -rf ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE)
|
||||
mkdir -p ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE)
|
||||
ln -s $(shell pwd)/awx_collection ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE)/awx
|
||||
rm -rf $(COLLECTION_INSTALL)
|
||||
mkdir -p ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE) # in case it does not exist
|
||||
ln -s $(shell pwd)/awx_collection $(COLLECTION_INSTALL)
|
||||
|
||||
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 --force --output-path=awx_collection
|
||||
|
||||
install_collection: build_collection
|
||||
rm -rf ~/.ansible/collections/ansible_collections/$(COLLECTION_NAMESPACE)/awx
|
||||
rm -rf $(COLLECTION_INSTALL)
|
||||
ansible-galaxy collection install awx_collection/$(COLLECTION_NAMESPACE)-awx-$(VERSION).tar.gz
|
||||
|
||||
test_collection_sanity: install_collection
|
||||
cd $(COLLECTION_INSTALL) && ansible-test sanity
|
||||
|
||||
test_collection_integration: install_collection
|
||||
cd $(COLLECTION_INSTALL) && ansible-test integration
|
||||
|
||||
test_unit:
|
||||
@if [ "$(VENV_BASE)" ]; then \
|
||||
. $(VENV_BASE)/awx/bin/activate; \
|
||||
|
||||
@ -8,6 +8,15 @@ inside the folder `lib/ansible/modules/web_infrastructure/ansible_tower`
|
||||
as well as other folders for the inventory plugin, module utils, and
|
||||
doc fragment.
|
||||
|
||||
## Building and Installing
|
||||
|
||||
This collection templates the `galaxy.yml` file it uses.
|
||||
Run `make build_collection` from the root folder of the AWX source tree.
|
||||
This will create the `tar.gz` file inside the `awx_collection` folder
|
||||
with the current AWX version, for example: `awx_collection/awx-awx-9.2.0.tar.gz`.
|
||||
|
||||
Installing the `tar.gz` involves no special instructions.
|
||||
|
||||
## Release and Upgrade Notes
|
||||
|
||||
The release 7.0.0 of the `awx.awx` collection is intended to be identical
|
||||
@ -95,12 +104,6 @@ cd ~/.ansible/collections/ansible_collections/awx/awx/
|
||||
ansible-test integration
|
||||
```
|
||||
|
||||
## Building
|
||||
|
||||
The build target `make build_collection` will template out a `galaxy.yml` file
|
||||
with automatic detection of the current AWX version. Then it builds the
|
||||
collection with the `ansible-galaxy` CLI.
|
||||
|
||||
## Licensing
|
||||
|
||||
All content in this folder is licensed under the same license as Ansible,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user