{"id":37677271,"url":"https://github.com/openstack-charmers/charmed-openstack-tester","last_synced_at":"2026-01-16T12:16:43.699Z","repository":{"id":39879324,"uuid":"267604830","full_name":"openstack-charmers/charmed-openstack-tester","owner":"openstack-charmers","description":"Deploys OpenStack clouds and runs tempest (or other tests) against them","archived":false,"fork":false,"pushed_at":"2025-10-27T21:12:40.000Z","size":355,"stargazers_count":6,"open_issues_count":6,"forks_count":15,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-10-27T23:11:35.633Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Jinja","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/openstack-charmers.png","metadata":{"files":{"readme":"README.rst","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":"copyright","agents":null,"dco":null,"cla":null}},"created_at":"2020-05-28T13:59:22.000Z","updated_at":"2025-10-27T21:12:45.000Z","dependencies_parsed_at":"2023-02-19T12:31:22.396Z","dependency_job_id":"e4a8f9f0-63f4-4471-9aab-e1aa28ced94b","html_url":"https://github.com/openstack-charmers/charmed-openstack-tester","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/openstack-charmers/charmed-openstack-tester","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack-charmers%2Fcharmed-openstack-tester","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack-charmers%2Fcharmed-openstack-tester/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack-charmers%2Fcharmed-openstack-tester/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack-charmers%2Fcharmed-openstack-tester/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openstack-charmers","download_url":"https://codeload.github.com/openstack-charmers/charmed-openstack-tester/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack-charmers%2Fcharmed-openstack-tester/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478536,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":"2026-01-16T12:16:43.205Z","updated_at":"2026-01-16T12:16:43.690Z","avatar_url":"https://github.com/openstack-charmers.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"========================\nCharmed OpenStack Tester\n========================\n\nCharmed OpenStack Tester deploys OpenStack clouds and runs tempest\n(or other tests) against them.\n\nIt uses the following to get this done:\n\n* `OpenStack Charms`_\n* `zaza`_\n* `zaza-openstack-tests`_\n* `Juju`_\n* `tempest`_\n\n.. _OpenStack Charms: https://docs.openstack.org/charm-guide\n.. _zaza: https://github.com/openstack-charmers/zaza\n.. _zaza-openstack-tests: https://github.com/openstack-charmers/zaza-openstack-tests\n.. _Juju: https://juju.is/docs\n.. _tempest: https://github.com/openstack/tempest\n\n\nGetting Started\n===============\n\nCommon setup:\n\n.. code-block:: bash\n\n  source ~/novarc\n  export TEST_HTTP_PROXY=http://squid.internal:3128\n  export TEST_FIP_RANGE=10.5.150.0:10.5.200.254\n  export TEST_CIDR_EXT=10.5.0.0/16\n  export TEST_GATEWAY=10.5.0.1\n  export TEST_NAME_SERVER=10.245.168.6\n  export TEST_CIDR_PRIV=192.168.21.0/24\n  export TEST_SWIFT_IP=10.245.161.162\n\nDeploy and test a specific bundle:\n\n.. code-block:: bash\n\n  tox -e func-target jammy-yoga\n\nDeploy and test all smoke bundles:\n\n.. code-block:: bash\n\n  tox -e func-smoke\n\nRe-run a specific zaza phase:\n\n.. code-block:: bash\n\n  source .tox/func-smoke/bin/activate\n  cd tests/\u003cscenario\u003e/\n  juju deploy -m MODEL BUNDLE\n  functest-configure -m MODEL_ALIAS:MODEL\n  functest-test -m MODEL_ALIAS:MODEL\n\nSpecifying Tests to Run\n=======================\n\nSpecifying which tests to run can be done with the following keys: smoke, whitelist, blacklist, and regex. For example:\n\n.. code-block:: yaml\n\n  tests_options:\n    tempest:\n      model_alias_smoke:\n        smoke: True\n      model_alias_targeted:\n        whitelist:\n           - \"tempest.api.compute.servers.test_create_server.ServersTestManualDisk.test_list_servers\"\n           - \"tempest.api.compute.servers.test_create_server.ServersTestManualDisk.test_verify_server_details\"\n        blacklist:\n           - \"tempest.api.identity.admin.v3.test_policies.PoliciesTestJSON.test_create_update_delete_policy\"\n        regex:\n           - \"tempest.api.network.*\"\n\nDebugging Tests\n===============\n\nBy default, the tempest workspace gets cleaned up after each tempest run. To keep the workspace around for\nre-running tests, set keep-workspace to True in tests.yaml:\n\n.. code-block:: yaml\n\n  tests_options:\n    tempest:\n      model_alias:\n        smoke: True\n        keep-workspace: True\n\nThen, update tests.yaml with whitelist of failing tests and re-run tests with functest-test.\n\nClient environment auth scripts are located in the scripts directory for manually running OpenStack commands:\n\n.. code-block:: bash\n\n  # For xenial-pike and below\n  source scripts/novarc\n\n  # For xenial-queens through bionic-ussuri\n  source scripts/novarcv3_domain\n  source scripts/novarcv3_domain\n\n  # For focal-ussuri and above\n  source scripts/novarcv3_ssl_domain\n  source scripts/novarcv3_ssl_domain\n\nTest with an Overlay PPA\n========================\n\nSet up an overlay PPA on each machine in the model:\n\n.. code-block:: yaml\n\n  tests_options:\n    overlay_ppas:\n      - ppa:ubuntu-security-proposed/ppa\n\nContact\n=======\nIRC: #openstack-charms on Freenode (irc.freenode.net)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack-charmers%2Fcharmed-openstack-tester","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenstack-charmers%2Fcharmed-openstack-tester","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack-charmers%2Fcharmed-openstack-tester/lists"}