GithubHelp home page GithubHelp logo

Comments (9)

kedark3 avatar kedark3 commented on August 16, 2024

@tonyreveal I believe @sean-m-sullivan would have more inputs on this. There is some export related code in the repo.

from controller_configuration.

sean-m-sullivan avatar sean-m-sullivan commented on August 16, 2024

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.

tonyreveal avatar tonyreveal commented on August 16, 2024

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.

sean-m-sullivan avatar sean-m-sullivan commented on August 16, 2024

I think part of the miscommunication is that we have two other repos involving this.

  1. 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.
  2. 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.

kedark3 avatar kedark3 commented on August 16, 2024

@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.

kedark3 avatar kedark3 commented on August 16, 2024

@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.

Tompage1994 avatar Tompage1994 commented on August 16, 2024

@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.

kedark3 avatar kedark3 commented on August 16, 2024

@Tompage1994 awesome, I missed that PR I believe. So we are doing most of what we can I guess.

from controller_configuration.

sean-m-sullivan avatar sean-m-sullivan commented on August 16, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.