{"id":26493654,"url":"https://github.com/redhat-openstack/octario","last_synced_at":"2025-03-20T09:56:37.581Z","repository":{"id":40659933,"uuid":"55143730","full_name":"redhat-openstack/octario","owner":"redhat-openstack","description":"Ansible roles for Openstack Component Testing","archived":false,"fork":false,"pushed_at":"2024-08-20T13:53:16.000Z","size":5542,"stargazers_count":8,"open_issues_count":3,"forks_count":7,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-08-20T15:57:20.364Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/redhat-openstack.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-31T10:57:49.000Z","updated_at":"2024-08-20T13:53:19.000Z","dependencies_parsed_at":"2024-07-09T23:43:14.626Z","dependency_job_id":null,"html_url":"https://github.com/redhat-openstack/octario","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-openstack%2Foctario","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-openstack%2Foctario/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-openstack%2Foctario/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-openstack%2Foctario/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-openstack","download_url":"https://codeload.github.com/redhat-openstack/octario/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244591486,"owners_count":20477709,"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":[],"created_at":"2025-03-20T09:56:37.140Z","updated_at":"2025-03-20T09:56:37.575Z","avatar_url":"https://github.com/redhat-openstack.png","language":"Python","readme":"# Octario\n\n**Openstack Component Testing Ansible Roles**\n\nOctario is a collection of Ansible roles and playbooks for testing OpenStack Components on RHEL/CentOS.\n\nIt supports the following testers or test frameworks:\n\n* PEP8\n* unit\n* functional\n* fullstack\n\n\nThere are two ways to use Octario. By cloning and installing Octario or by using the InfraRed framework.\nWe'll cover both.\n\nNote: `octario` is not provisioning the node on which it will run the tests. It's assumed\n      that the tester node is provided by the user by specifying it in the hosts file.\n\n## Installation - without InfraRed\n\ngit clone https://github.com/redhat-openstack/octario \u0026\u0026 cd octario\nvirtualenv ~/octario_venv \u0026\u0026 source ~/octario_venv/bin/activate\npip install .\n\n## Installation - with InfraRed\n\ngit clone https://github.com/redhat-openstack/infrared \u0026\u0026 cd infrared\nvirtualenv ~/ir_venv \u0026\u0026 source ~/ir_venv/bin/activate\npip install .\ninfrared plugin add octario\n\n## Usage - without InfraRed\n\nFirst, create an inventory file that will include the IP address or the hostname of your tester node.\n\n```\nvi hosts\n\n[tester]\nmy_tester_host ansible_user=cloud-user\n```\n\nEdit `octario.yml` with your component details. Make sure to specify name and version!\n\n```\ncomponent:\n  name: nova\n  version: 9\n```\n\nRun octario! :)\nChoose one of testers and run the following command in octario root directory\n\n```\nansible-playbook -vvv -i hosts playbooks/pep8.yml --extra-vars @octario.yml\n```\n\npep8.yml can be replaced with [unittest, functional, fullstack].yml\n\n## Usage - with InfraRed\n\n```\ninfrared octario --t \u003ctester_name\u003e --dir \u003ccomponent_path\u003e\n\nFor example:\n\ninfrared octario --t pep8 --dir $WORKSPACE/neutron\n```\n\n\n### Custom tester\n\nYou can specify your own tester\n\n```\nexport TESTER=my_new_cool_tester\nansible-playbook -vvv -i hosts playbooks/custom-tester.yml --extra-vars @octario.yml\n```\n\n### External ROLES\n\nYou can use external role with `octario`.\n\n```\ncp -r new_role octario/roles\nexport ROLE=new_role\nansible-playbook -vvv -i hosts playbooks/custom-role.yml --extra-vars @octario.yml\n```\n\n## How it works\n\nThe following drawing added to simplify work-flow overview of `octario` for simple testers\nas pep8, unittest and functional.\n\n\u003cdiv align=\"center\"\u003e\u003cimg src=\"./doc/octario_workflow.png\" alt=\"Octario work-flow\"\u003e\u003c/div\u003e\u003chr /\u003e\n\n### Patch RPMs\n\nPatching of RPMs is deprecated in Octario.\n\nPlease use Octario as InfraRed plugin to achieve patching.\n\nUsing InfraRed and its' patch-components plugin instead, example:\n\n $ infrared plugin add patch-components\n $ infrared plugin add octario\n\n $ infrared patch-components --component-name neutron --component-path /patch/to/neutron/source/code --component-version 14\n $ infrared octario --t dsvm-functional --dir /patch/to/neutron/source/code\n\n## More Docs\n\nSee the [/docs](https://github.com/redhat-openstack/octario/tree/master/docs) directory of this repo.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-openstack%2Foctario","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-openstack%2Foctario","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-openstack%2Foctario/lists"}