{"id":19310073,"url":"https://github.com/cedadev/jasmin-appliances","last_synced_at":"2025-04-22T13:33:48.609Z","repository":{"id":37406199,"uuid":"166388142","full_name":"cedadev/jasmin-appliances","owner":"cedadev","description":"Appliances for use with JASMIN Cluster-as-a-Service Project","archived":false,"fork":false,"pushed_at":"2024-04-02T11:33:26.000Z","size":599,"stargazers_count":3,"open_issues_count":8,"forks_count":3,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-02T00:24:09.391Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cedadev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2019-01-18T10:31:59.000Z","updated_at":"2021-12-13T13:40:16.000Z","dependencies_parsed_at":"2024-04-02T12:04:04.472Z","dependency_job_id":null,"html_url":"https://github.com/cedadev/jasmin-appliances","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/cedadev%2Fjasmin-appliances","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedadev%2Fjasmin-appliances/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedadev%2Fjasmin-appliances/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cedadev%2Fjasmin-appliances/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cedadev","download_url":"https://codeload.github.com/cedadev/jasmin-appliances/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250249047,"owners_count":21399385,"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":"2024-11-10T00:22:29.484Z","updated_at":"2025-04-22T13:33:48.321Z","avatar_url":"https://github.com/cedadev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# jasmin-appliances\n\nAppliances for use with JASMIN [Cluster-as-a-Service][caas] Project\n\n## How to use this repository\n\nAssuming that you are at the top of a checkout of this repository and a virtual\nenvironment is available at `\u003cpath/to/venv\u003e` created using\n`--system-site-packages` flag to ensure `yum` dependencies are available to\nAnsible, install all the `pip` dependencies (which may require you to\nadditionally install `python2-devel` and `gcc` packages through `yum`):\n\n    $ virtualenv --system-site-packages \u003cpath/to/venv\u003e\n    $ source \u003cpath/to/venv\u003e/bin/activate\n    $ pip install -r requirements.txt\n    $ ansible-galaxy install -p roles -r roles/requirements.yml\n\nConfigure the environment with OpenStack variables:\n\n    $ . \u003cpath/to/openrc\u003e\n\nMake sure you have a public key uploaded to OpenStack:\n\n    $ openstack keypair list\n\nLaunch a cluster by calling the jasmin.yml playbook, passing a config file as\nAnsible extra variables, providing a keypair to use to connect to the cluster,\nand assigning a unique name to the cluster (which will be used to name the\nstack). For example:\n\n    $ ansible-playbook -i openstack.ini jasmin.yml -e @config/minimal.yml -e cluster_keypair=\u003ckeypair_name\u003e -e cluster_name=\u003cstack_name\u003e\n\n## Parameters to Provide\n\nThese playbooks may be invoked from an AWX context, or direct from the command line.\n\n| Parameter | Notes |\n|:----------|:------|\n| `cluster_name` | The name of the cluster.  This is also the name of the Heat stack, and the stem for all instance names. |\n| `cluster_state` | Can be one of present or absent, defaulting to present if not given. Determines whether the cluster should be created/updated (present) or deleted (absent). |\n| `cluster_network` | The id or name of the network to which nodes should be attached. |\n| `cluster_keypair` | The name of the keypair to inject into nodes. |\n| `cluster_upgrade_system_packages` | Flag indicating whether system packages should be upgraded (i.e. the equivalent of yum update -y). Defaults to `false`. |\n| `cluster_fixed_ip` | The fixed IP address of the floating IP to use when not using an ephemeral bastion. |\n\nWhen invoked via AWX, OpenStack configuration parameters are supplied.\nFrom the command line these can be drawn in from the user environment by sourcing\nextra vars from `config/auth.yml`, for example:\n\n```\n$ ansible-playbook -i inventory nfs-infra.yml \\\n    -e cluster_name=stig-nfs \\\n    -e cluster_keypair=oneswig \\\n    -e cluster_network=\"caastest-U-internal\" \\\n    -e cluster_fixed_ip=192.171.139.120 \\\n    -e @config/auth.yml\n```\n\n## Backing up and restoring AWX configuration using tower-cli\n\nTo backup:\n\n    tower-cli receive --all \u003e awx/backup.json\n\nTo restore:\n\n    tower-cli send awx/backup.json\n\n[caas]: https://github.com/cedadev/jasmin-cluster-as-a-service/projects/1\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcedadev%2Fjasmin-appliances","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcedadev%2Fjasmin-appliances","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcedadev%2Fjasmin-appliances/lists"}