{"id":20155236,"url":"https://github.com/redhat-cop/infra.convert2rhel","last_synced_at":"2025-04-09T21:53:20.519Z","repository":{"id":205790581,"uuid":"708923863","full_name":"redhat-cop/infra.convert2rhel","owner":"redhat-cop","description":"Collection of Ansible roles for automating RHEL in-place conversions using Convert2RHEL. ","archived":false,"fork":false,"pushed_at":"2024-12-03T22:01:26.000Z","size":139,"stargazers_count":8,"open_issues_count":2,"forks_count":17,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-09T21:53:16.137Z","etag":null,"topics":["validated-content"],"latest_commit_sha":null,"homepage":"","language":"YAML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/redhat-cop.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-23T16:52:03.000Z","updated_at":"2024-12-24T12:10:48.000Z","dependencies_parsed_at":"2023-12-13T15:25:23.081Z","dependency_job_id":"b68ddf41-19c8-482b-a454-3c946bcea5e1","html_url":"https://github.com/redhat-cop/infra.convert2rhel","commit_stats":null,"previous_names":["oamg/infra.convert2rhel","redhat-cop/infra.convert2rhel"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-cop%2Finfra.convert2rhel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-cop%2Finfra.convert2rhel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-cop%2Finfra.convert2rhel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-cop%2Finfra.convert2rhel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-cop","download_url":"https://codeload.github.com/redhat-cop/infra.convert2rhel/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248119400,"owners_count":21050754,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["validated-content"],"created_at":"2024-11-13T23:30:42.317Z","updated_at":"2025-04-09T21:53:20.501Z","avatar_url":"https://github.com/redhat-cop.png","language":"YAML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ansible Convert2RHEL Collection\n\n[![CI](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/ansible-test.yml/badge.svg)](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/ansible-test.yml)\n[![Yaml and Ansible Lint](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/ansible-lint.yml/badge.svg)](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/ansible-lint.yml)\n[![Release](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/release.yml/badge.svg?event=release)](https://github.com/redhat-cop/infra.convert2rhel/actions/workflows/release.yml)\n[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/8649/badge)](https://www.bestpractices.dev/projects/8649)\n\n\u003c!-- [![Codecov](https://img.shields.io/codecov/c/github/redhat-cop/infra.convert2rhel)](https://codecov.io/gh/redhat-cop/infra.convert2rhel) --\u003e\n\n## Overview\n\nThis collection provides Ansible roles you can use to perform conversion using the Convert2RHEL framework. Use these roles as the foundation of your conversion automation solution.\n\nPlease check the [release section](https://github.com/oamg/infra.convert2rhel/releases) of the repository to find information about the latest updates and publication to the Ansible Galaxy.\n\n## Roles\n\nThese are the roles included in the collection. Follow the links below to see the detailed documentation and example playbooks for each role.\n\n- [`analysis`](./roles/analysis/) - executes the convert2rhel analysis phase\n- [`common`](./roles/common/) - used for local logging, mutex locking, and common vars\n- [`handle_c2r_report`](./roles/handle_c2r_report/) - reads convert2rhel results and checks for inhibitors\n- [`convert`](./roles/convert/) - executes the convert2rhel OS conversion\n\n## Example playbooks\n\nExample playbooks can be found [here](./playbooks/).\n\n## Installing the collection from Ansible Galaxy\n\nYou can install the collection from [Ansible Galaxy](https://galaxy.ansible.com/ui/repo/published/infra/convert2rhel/) by running `ansible-galaxy collection install infra.convert2rhel`.\n\nYou can also include it in a `requirements.yml` file and install it with `ansible-galaxy collection install -r requirements.yml`, using the format:\n\n```yaml\n---\ncollections:\n  - name: infra.convert2rhel\n```\n\nNote that if you install the collection from Ansible Galaxy, it will not be upgraded automatically when you upgrade the `ansible` package. To upgrade the collection to the latest available version, run the following command:\n\n```bash\nansible-galaxy collection install infra.convert2rhel --upgrade\n```\n\nYou can also install a specific version of the collection, for example, if you need to downgrade when something is broken in the latest version (please report an issue in this repository). Use the following syntax to install version `1.0.0`:\n\n```bash\nansible-galaxy collection install infra.convert2rhel:==1.0.0\n```\n\nSee [Using Ansible collections](https://docs.ansible.com/ansible/devel/user_guide/collections_using.html) for more details.\n\n## Contributing\n\nWe are a fledgling community and welcome any new contributors. Get started by opening an issue or pull request. Refer to our [contribution guide](CONTRIBUTING.md) for more information.\n\n## Testing\nFor testing, you have two options. Use manually provisioned machine and run the playbook manually or use the automated\nway using `Makefile` and `molecule` plugin.\n\n### Manually provisioned machine\n- Provision machine (e.g. using vagrant). This can be done by `vagrant init eurolinux-vagrant/centos-7` or by using\nVagrantfile. Capture it's IP and directory where you are running this command.\n- Move to `infra.convert2rhel` and create needed folders for ansible by running `make create-folder-for-test`. This\nwill create structure of directories ansible needs. Remember, you need to run this command each time you change\nsomething in the project.\n- Run `export ANSIBLE_COLLECTIONS_PATH=$(pwd)` to set where should ansible look for the expected dir structure.\n- Create file in which you will specify hosts to run the ansible playbook.\nE.g. the file is created in `playbook/` called `hosts` and contain:\n```\n[testing]\n\u003cIP-of-the-machine\u003e ansible_python_interpreter=/usr/bin/python2.7\n```\nNote: the specified `ansible_python_interpreter` is mainly for easier debugging if you have the correct version of\n`ansible-core` (2.16.11), without this you can get a bit confusing error message.\nNote: if you want to subscribe the system, you can replace the config file by credentials you have\nin the `analysis/tasks/analysis-c2r.yml` or `convert/tasks/main.yml`\n- Run the ansible playbook you want using:\n```\nansible-playbook --private-key \u003cpath-where-vagrant-was-called\u003e/.vagrant/machines/default/libvirt/private_key -i \u003cspecified-hosts\u003e \u003cplaybook-path\u003e -u root -vv\n```\ne.g.\n```\nansible-playbook --private-key ~/vagrant-box/vagrant/.vagrant/machines/default/libvirt/private_key -i playbooks/hosts playbooks/analysis.yml -u root -vv\n```\n\n## Automated way\nTBD\n\n## Reporting issues\n\nPlease open a [new issue](https://github.com/redhat-cop/infra.convert2rhel/issues/new/choose) for any bugs or security vulnerabilities you may encounter. We also invite you to open an issue if you have ideas on how we can improve the solution or want to make a suggestion for enhancment.\n\n## More information\n\nThis Ansible collection is just one building block of our larger initiative to make Convert2RHEL conversion automation that works at enterprise scale. Learn more about our end-to-end approach for automating conversions in these [blog posts](https://www.redhat.com/en/blog?search=convert2rhel).\n\n## Release notes\n\nSee the [changelog](https://github.com/redhat-cop/infra.convert2rhel/tree/main/CHANGELOG.rst).\n\n## Licensing\n\nMIT\n\nSee [LICENSE](LICENSE) to see the full text.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-cop%2Finfra.convert2rhel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-cop%2Finfra.convert2rhel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-cop%2Finfra.convert2rhel/lists"}