{"id":13564893,"url":"https://github.com/openstack/devstack-vagrant","last_synced_at":"2025-04-09T15:01:59.901Z","repository":{"id":18096513,"uuid":"21163556","full_name":"openstack/devstack-vagrant","owner":"openstack","description":"Vagrant configuration for building DevStack environments. Mirror of code maintained at opendev.org.","archived":false,"fork":false,"pushed_at":"2023-11-30T12:39:18.000Z","size":126,"stargazers_count":216,"open_issues_count":0,"forks_count":81,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-04-02T08:53:06.783Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://opendev.org/openstack/devstack-vagrant","language":"Shell","has_issues":false,"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.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE.md","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":"2014-06-24T12:20:39.000Z","updated_at":"2025-03-05T03:33:13.000Z","dependencies_parsed_at":"2024-08-01T13:31:23.982Z","dependency_job_id":null,"html_url":"https://github.com/openstack/devstack-vagrant","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/openstack%2Fdevstack-vagrant","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fdevstack-vagrant/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fdevstack-vagrant/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openstack%2Fdevstack-vagrant/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openstack","download_url":"https://codeload.github.com/openstack/devstack-vagrant/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248055272,"owners_count":21040153,"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-08-01T13:01:37.632Z","updated_at":"2025-04-09T15:01:59.798Z","avatar_url":"https://github.com/openstack.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"devstack-vagrant\n================\n\nThis is an attempt to build an easy to use tool to bring up a 2 node\ndevstack environment for local testing using Vagrant + Puppet.\n\nIt is *almost* fully generic, but still hard codes a few things about\nmy environment for lack of a way to figure out how to do this\ncompletely generically (puppet templates currently hate me under\nvagrant).\n\nThis will build a vagrant cluster that is L2 bridged to the interface\nthat you specify in ``config.yaml``. All devstack guests (2nd\nlevel) will also be L2 bridged to that network as well. That means\nthat once you bring up this environment you will be able to ssh\nstack@api (or whatever your hostname is) from any machines on your\nnetwork.\n\nVagrant Setup\n------------------------\n\nInstall vagrant \u0026 virtual box\n\nConfigure a base ``~/.vagrant.d/Vagrantfile`` to set your VM size. If you\nhave enough horsepower you should make the file something like:\n\n    VAGRANTFILE_API_VERSION = \"2\"\n\n    Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|\n        config.vm.provider :virtualbox do |vb|\n\n             # Use VBoxManage to customize the VM. For example to change memory:\n             vb.customize [\"modifyvm\", :id, \"--memory\", \"8192\"]\n             vb.customize [\"modifyvm\", :id, \"--cpus\", \"4\"]\n         end\n    end\n\nYou can probably get away with less cpus, and 4096 MB of memory, but\nthe above is recommended size.\n\nIf the used hostnames in the ``config.yaml`` file (variable ``hostname_manager``\nand ``hostname_compute``) are not resolvable you have to install the\n``vagrant-hostmanager`` plugin (``vagrant plugin install vagrant-hostmanager``).\n\nIf the nodes are still not able to communicate to each other even after\ninstalling the ``vagrant-hostnamanger`` plugin (for example you get errors about\nthe compute node not being able to communicate to *cinder c-api* during the\n*vagrant up* phase), set the variable ``use_ip_resolver`` in the ``config.yaml``\nfile to ``true``, in order to obtain the correct nodes ip.\n\n\nLocal Setup\n--------------------\nCopy ``config.yaml.sample`` to ``config.yaml`` and provide the\nhostnames you want, and password, and sshkey for\nthe stack user.\n\nThen run vagrant up.\n\nOn a 32 GB Ram, 4 core i7 haswell, on an SSD, with Fios, this takes\n25 - 30 minutes. So it's not quick. However it is repeatable.\n\nIf you want to speed-up the process, install the\n[vagrant-cachier](https://github.com/fgrehm/vagrant-cachier) plugin in order\nto let vagrant cache files, such as apt packages, with:\n\n    vagrant plugin install vagrant-cachier\n\n\nWhat you should get\n-----------------------------------\nA 2 node devstack that includes cirros mini cloud image populated in glance.\nYou can get other images population such as fedora 20, ubuntu 12.04,\nand ubuntu 14.04, just with a small addtion to ``extra_images`` part\nin ``config.yaml.sample``.\n\nDefault security group with ssh and ping opened up.\n\nInstallation of the stack user ssh key as the default keypair.\n\nEnable additional services\n------------------------\nThe devstack environment created by this `Vagrantfile` includes just the basic\nservices to get started with OpenStack. If you want to try more services, you\ncan enable them on the manager node through the ``config.yaml`` file.\n\nFor example if you want to enable\n[Swift](https://docs.openstack.org/developer/swift), you can add the\nfollowing line to your ``config.yaml``:\n\n    manager_extra_services: s-proxy s-object s-container s-account\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fdevstack-vagrant","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenstack%2Fdevstack-vagrant","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenstack%2Fdevstack-vagrant/lists"}