Testing

Integration with the ansible-galaxy

These are all contained in the pulp_ansible.tests.functional.cli package. The following workflows have tests:

  • ansible-galaxy collection install - the installation of collection content is tested by pulp_ansible.tests.functional.cli.test_collection_install

  • ansible-galaxy collection publish - this uploading of a collection to Pulp is tested by pulp_ansible.tests.functional.cli.test_collection_upload

  • ansible-galaxy role install - the installation of role content is tested by pulp_ansible.tests.functional.cli.test_role_install

Galaxy APIs

The Galaxy V2 and V3 APIs have tests.

  • pulp_ansible.tests.functional.api.collection.v2 - The V2 collection API

  • pulp_ansible.tests.functional.api.collection.v3 - The V3 collection API

  • pulp_ansible.tests.functional.api.role - The V2 roles API

Scale Testing Tools

These tools are contained in pulp_ansible.tests.performance and are standalone python utilities to be called and passed arguments (they use argparse). Here are the tools:

  • generate_collections.py which generates collections in parallel with Pulp workers.

  • fast_load_collections.py which loads collections in parallel from a filesystem with Pulp workers.

  • create_repos_with_collections.py which creates repositories and repository versions containing CollectionVersions already in Pulp.

  • promote.py will select a content unit randomly and add it to N randomly selected AnsibleRepository objects. This is designed to benchmark adding new content to many repositories.