This is a set of changes related to fixing 'remove', but mainly adding an interface for finding and querying installed packages correctly (before, 'remove' was failing because it was no longer able to find the right content to remove based on the '$namespace.$content' identifier in lieu of the '~/.ansible/content/$namespace.reponame' layout and multi-content repos).
This adds the very beginning of a db-like interface to the installed content for tools like list/remove to use (as well as install/update eventually). ('*content_db.py' etc)
It also adds iterator/generators for iterating over installed content and repos, that is used in the db-like layer.
This also starts making the distinction between a 'Content' and a 'Repository' more... distinctive.
('*repository_db.py' etc). This is in keeping with the concept that galaxy Repositories are the main
unit of content to be installed and managed (as compared to previous ansible-galaxy where the
main unit of content was a role). This pr adds some infrastructure for querying by Repository or
by Content/Role and starts hooking it up into the ui.
This also starts making a distinction between 'installed Content' and more generic Content, since
they have different properties and are used in different places. For ex, 'installed content' is the main
data that 'list' or 'remove' are based around, but the more generic 'Content' is what install is based around.
Other changes include:
update to 'list' output to include the repository label (ie, 'testing.ansible-testing-content' or 'geerlingguy.apache'), the content type, and the name of the content ('test-role-a' for ex)
ISSUE TYPE
Feature Pull Request
Bugfix Pull Request
GALAXY CLI VERSION
Ansible Galaxy CLI, version0.1.0
Linux, newswoop, 4.16.6-202.fc27.x86_64, #1 SMP Wed May 2 00:09:32 UTC 2018, x86_64
3.6.5 (default, Apr 4 2018, 15:01:18)
[GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]/home/adrian/venvs/galaxy-cli-py3/bin/python
Using /home/adrian/.ansible/mazer.yml as config file
SUMMARY
This is a set of changes related to fixing 'remove', but mainly adding an interface for finding and querying installed packages correctly (before, 'remove' was failing because it was no longer able to find the right content to remove based on the '$namespace.$content' identifier in lieu of the '~/.ansible/content/$namespace.reponame' layout and multi-content repos).
This adds the very beginning of a db-like interface to the installed content for tools like list/remove to use (as well as install/update eventually). ('*content_db.py' etc)
It also adds iterator/generators for iterating over installed content and repos, that is used in the db-like layer.
This also starts making the distinction between a 'Content' and a 'Repository' more... distinctive. ('*repository_db.py' etc). This is in keeping with the concept that galaxy Repositories are the main unit of content to be installed and managed (as compared to previous ansible-galaxy where the main unit of content was a role). This pr adds some infrastructure for querying by Repository or by Content/Role and starts hooking it up into the ui.
This also starts making a distinction between 'installed Content' and more generic Content, since they have different properties and are used in different places. For ex, 'installed content' is the main data that 'list' or 'remove' are based around, but the more generic 'Content' is what install is based around.
Other changes include:
ISSUE TYPE
GALAXY CLI VERSION
ADDITIONAL INFORMATION