Comments (9)
@tonyreveal I believe @sean-m-sullivan would have more inputs on this. There is some export related code in the repo.
from controller_configuration.
So There are two ways, one is the awx.awx.tower_export module
https://github.com/ansible/awx/blob/devel/awx_collection/plugins/modules/tower_export.py
which is built on the awxkit tower export, which was merged into the awx repo and which is described here
https://github.com/redhat-cop/tower_configuration/blob/devel/playbooks/tower_configs_export_model/README.md
Disregard anything about the johnwescott branch use the awx devel/tagged branch now.
Because of the work of that module/awxkit we haven't done work here, however there is issue #41 that lists the roles that aren't up to speed to use BOTH models the export AND the one we've described here.
The goal of this repo is to import/deploy tower as Code, not to export it. The idea being you export it once, Set it in a github repo, and then use these roles to deploy. Keeping it as tower as code. If your doing wholesale migration the backup/restore in tower/awx and/or the import/export awxkit/modules are the way to go, but not the recommended long term way to do it.
from controller_configuration.
Then maybe consider changing the description of the repository which says "a collection of roles to manage Tower"? Technically you're not managing Tower if all the collection does is apply a configuration from Json definitions.
If you want to leave it as "manage Tower", it can also be noted there are still some things missing. For example there's nothing related to applying a license, configuration of LDAP, log forwarding (aggregation), and so on. I would consider this work incomplete if I couldn't define the Entire Tower configuration as-code.
I see no open issues for any additional items (mentioned above). Are these things defined in a backlog somewhere?
from controller_configuration.
I think part of the miscommunication is that we have two other repos involving this.
- https://github.com/redhat-cop/tower_configuration_examples
This is where we are putting examples of using this and the other repo for examples for people to use, I've tried doing a ldap with tests here but I've had some IRL stuff get in the way. - https://github.com/redhat-cop/tower_utilities
Utilities for not tower as code, for example tower install.
Tower licence is a tricky area that can be done with api at the moment, but there is no module for the config endpoint in the awx.awx , more info here https://docs.ansible.com/ansible-tower/latest/html/userguide/import_license.html A role could be created to do this, but we hadn't put effort into it.
As far as the export, I'd say that would be in examples using the modules and then importing but Issue #41 that I renamed still is the blocker/blacklog of getting the tower export model working in those roles.
For Ldap, its expected to use the tower_settings role. I tried to get a testable version working in tower_configuration_examples but ran into getting the docker up and running to run tests against. For some base examples I'd check out https://github.com/redhat-cop/tower_configuration/blob/devel/playbooks/tower_configs/tower_settings.yml
You're right that its incomplete, I'd say its 85% of the way there, and is based on tower as code, but it isn't the be all end all of managing tower.
from controller_configuration.
@sean-m-sullivan seems like they have added tower_license module: https://github.com/ansible/awx/blob/devel/awx_collection/plugins/modules/tower_license.py Potentially we can add it here in our collection
from controller_configuration.
@tonyreveal well we can manage all the tower_settings so in a way we are managing a lot of what tower does. The things you noted such as LDAP, log forwarding (aggregation), etc, could be done with tower_settings module. Is that what you wanted to do?
from controller_configuration.
@sean-m-sullivan seems like they have added tower_license module: https://github.com/ansible/awx/blob/devel/awx_collection/plugins/modules/tower_license.py Potentially we can add it here in our collection
We already have implemented that: https://github.com/redhat-cop/tower_configuration/tree/devel/roles/license
from controller_configuration.
@Tompage1994 awesome, I missed that PR I believe. So we are doing most of what we can I guess.
from controller_configuration.
I totally forgot about licence, but your right on that end, ldap comes down to values and is always tricky even with the gui. Logging is the settings role. The one bit remaining is the export compatibility.
from controller_configuration.
Related Issues (20)
- inventory_sources built using the api plugin in object_diff do not include the source key HOT 2
- Document the destroy_current_nodes option HOT 1
- filetree_create fails interacting with Ansible Tower HOT 5
- How to install AAP2.4 using automation HOT 2
- Should filetree_create export the credential with '$encrypted$' instead of ''? HOT 2
- Update requires_ansible key in `meta/runtime.yml` to supported Ansible versions HOT 1
- updating organisation name HOT 18
- filetree_create should output yamllint compatible truthy values HOT 3
- Controller group is removing/trying to remove constructed inventory groups HOT 2
- Ad_hoc value as role name should be adhoc in object diff HOT 1
- Verbosity on job template not changing back to 0 from higher values and state comes as OK HOT 6
- filetree_create/templates/current_inventory_sources.j2 complains about an undefined variable and fails. HOT 1
- `filetree_create` is exporting fields in settings with "null".
- controller_credentials password field-use another credential. HOT 5
- Web UI extra_vars fields default to JSON instead of YAML HOT 2
- Change default value for tags in workflows HOT 7
- AAP Config as Code Office Hours Agenda
- Add check_mode testing
- CI Failing HOT 2
- Creating/Updating too many job templates in parallel seems to be too much for controller API HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from controller_configuration.