Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] [PoC] Replace Embedded Ansible with ansible-runner based solution #18657

Closed
wants to merge 9 commits into from

Conversation

Fryguy
Copy link
Member

@Fryguy Fryguy commented Apr 15, 2019

This PR is a PoC of replacing the AWX/Tower based Embedded Ansible with ansible-runner.

ManageIQ EmbeddedAnsible replaced with ansible-runner - YouTube 2019-04-15 18-43-08

What this PR covers:

  • Removal of a lot of the ansible tower/awx based code
  • Basic seeding of the EmbeddedAnsible "provider" as well as a default machine credential
  • Basic git repository CRUD
  • Creation and deployment of a service via the service catalog
  • Visualizing the terminal output of a run

What this PR does not cover:

  • Advanced seeding
  • Credential management
  • Advanced git repository stuff
    • checkboxes such as Update on Launch
    • federated git management and honoring the git_owner role
  • Some settings in the service, such as logging, verbosity
  • UI raw_output uses a temporary miq_task that is later deleted by the UI, which should be removed.
  • Using the embedded_ansible or perhaps automate role
  • Upgrades
  • Automate methods that are playbooks directly (without the service/service catalog)
  • Tests

See ManageIQ/manageiq-design#45 for a deep dive, and details about the implementation.

cc @dmetzger57 @chessbyte @gmcculloug @tinaafitz @bzwei @carbonin @NickLaMuro

@miq-bot
Copy link
Member

miq-bot commented Apr 15, 2019

Checked commits Fryguy/manageiq@6b95535~...24c5e13 with ruby 2.3.3, rubocop 0.52.1, haml-lint 0.20.0, and yamllint 1.10.0
32 files checked, 30 offenses detected

app/models/manageiq/providers/embedded_ansible/automation_manager/configuration_script.rb

app/models/manageiq/providers/embedded_ansible/automation_manager/configuration_script_source.rb

app/models/manageiq/providers/embedded_ansible/automation_manager/job.rb

app/models/manageiq/providers/embedded_ansible/crud_common.rb

  • ⚠️ - Line 49, Col 32 - Lint/UnusedMethodArgument - Unused method argument - manager. If it's necessary, use _ or _manager as an argument name to indicate that it won't be used. You can also write as raw_create_in_provider(*) if you want the method to accept any arguments but don't care about them.
  • ⚠️ - Line 49, Col 41 - Lint/UnusedMethodArgument - Unused method argument - params. If it's necessary, use _ or _params as an argument name to indicate that it won't be used. You can also write as raw_create_in_provider(*) if you want the method to accept any arguments but don't care about them.
  • ❗ - Line 15, Col 42 - Layout/ExtraSpacing - Unnecessary spacing detected.
  • ❗ - Line 25, Col 5 - Style/RescueStandardError - Avoid rescuing without specifying an error class.
  • ❗ - Line 26, Col 46 - Style/ClassCheck - Prefer Object#kind_of? over Object#is_a?.
  • ❗ - Line 26, Col 7 - Style/MethodCallWithArgsParentheses - Use parentheses for method calls with arguments.

app/models/manageiq/providers/embedded_ansible/seeding.rb

lib/terminal_to_html.rb

@miq-bot
Copy link
Member

miq-bot commented May 17, 2019

This pull request is not mergeable. Please rebase and repush.

@Fryguy
Copy link
Member Author

Fryguy commented Jun 10, 2019

Closing as #18687 will be the working branch, and is built on this branch anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants