{"id":27073076,"url":"https://github.com/theodore86/vagrantenv","last_synced_at":"2026-01-25T07:02:25.018Z","repository":{"id":37031664,"uuid":"467187436","full_name":"theodore86/vagrantenv","owner":"theodore86","description":"(as Code) SandBox, (reproducible) local development environment","archived":false,"fork":false,"pushed_at":"2026-01-18T11:54:53.000Z","size":1069,"stargazers_count":1,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-18T18:41:21.512Z","etag":null,"topics":["ansible","automation","devops","iac","sandbox","vagrant"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/theodore86.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-03-07T17:10:50.000Z","updated_at":"2026-01-18T11:54:56.000Z","dependencies_parsed_at":"2023-09-24T08:38:23.541Z","dependency_job_id":"148b9a11-6735-45d0-8dbb-282f09fd4763","html_url":"https://github.com/theodore86/vagrantenv","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/theodore86/vagrantenv","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theodore86%2Fvagrantenv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theodore86%2Fvagrantenv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theodore86%2Fvagrantenv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theodore86%2Fvagrantenv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/theodore86","download_url":"https://codeload.github.com/theodore86/vagrantenv/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theodore86%2Fvagrantenv/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28747308,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T05:12:38.112Z","status":"ssl_error","status_checked_at":"2026-01-25T05:04:50.338Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["ansible","automation","devops","iac","sandbox","vagrant"],"created_at":"2025-04-05T23:35:32.637Z","updated_at":"2026-01-25T07:02:25.001Z","avatar_url":"https://github.com/theodore86.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Current Tag](https://img.shields.io/github/v/tag/theodore86/vagrantenv)\n[![CircleCI](https://circleci.com/gh/theodore86/vagrantenv/tree/main.svg?style=shield)](https://circleci.com/gh/theodore86/vagrantenv/tree/main)\n[![Sandbox](https://github.com/theodore86/vagrantenv/actions/workflows/provision.yml/badge.svg)](https://github.com/theodore86/vagrantenv/actions/workflows/provision.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n# SandBox for Testing and Developing as a code\n\nProvisioning of the sandbox using the Hashicorp Vagrant automation tool (IaC).\n\nFully managed and configured through [Ansible roles](https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html).\n\n## What is Vagrant\n\n[Vagrant](https://www.vagrantup.com/docs/index.html) is an tool for building and managing virtual machine environments in an sigle workflow.\n\nProvides easy to configure, reproducible and portable work environments built on top of industry-standard technology\nand controlled by an single consistent workflow to help maximize the productivity and flexibility.\n\nVagrant has a concept of `providers` which map to the virtualisation engine and its API.\nThe most popular and well-supported provider is Virtualbox; plugins exist for `libvirt`, `kvm`, `lxc`, `vmware` and more\n\n## Features\n\n- Declarative approach through *YAML* configuration format.\n- Extensible through Vagrant plugins (*host*) and Ansible roles (*guest*).\n- Flexible networking setup:\n  - *NAT/PAT*\n  - *Multiple network adapters*\n  - *DNS setup*\n  - *Host/Guest Time sync*\n  - *System or Application proxy*\n- Resizing of virtual disk(s) size, addition or removal of it/them.\n- Support of *Linux \u0026 Windows* host OS.\n  - Support of *MacOS* with Intel processors only.\n\n## Requirements\n\n### Intel VT-x virtualization\n\nMany PC laptops (especially those from Lenovo, HP and Dell) have **Intel's VT-x virtualization**\nturned off by default, which can cause issues with many Vagrant boxes. Enable VT-x in your system BIOS/UEFI settings.\n\n### Git\n\nInstall the [Git](https://git-scm.com/book/en/v1/Getting-Started-Installing-Git) command line tool.\n\n- On *Linux OS/Mac OS X* use your distribution package manager.\n- On *Windows OS* download and install [Git](https://git-scm.com/download/win).\n  - Don't forget to include the **Git BASH** during installation.\n\n#### Linux OS/Mac OS X\n\nUse your distribution package manager and install the following `mandatory` packages:\n\n- [VirtualBox](https://www.virtualbox.org/wiki/Downloads) `mandatory`\n- [Vagrant](https://www.vagrantup.com/downloads.html) `mandatory`\n\n#### Windows OS\n\n- Install (as Administrator) the Package Manager [Chocolatey](https://chocolatey.org/install):\n\nThe following `mandatory` packages must be installed through Chocolatey:\n\n- [VirtualBox](https://chocolatey.org/packages/virtualbox) `mandatory`\n- [Vagrant](https://chocolatey.org/packages/vagrant) `mandatory`\n\n**There is no need to install the above packages manually**, use the automated steps as described [below](#windows-host-provisioning).\n\n*In case of Windows 7 install the Powershell patch:*\n\n- [Vagrant requires Powershell version 3 or later](https://stackoverflow.com/questions/1825585/determine-installed-powershell-version)\n- [Install the patch Windows6.1-KB2506143-x64.msu](https://www.microsoft.com/en-us/download/details.aspx?id=34595)\n\n## Vagrant Box\n\n### Base Box\n\nBased on Ubuntu `jammy/22.04` box from: [HashiCorp's Vagrant Cloud](https://app.vagrantup.com/bento/boxes/ubuntu-22.04)\n\n### Hashicorp\n\n- vagrant\n- vault\n- terraform\n\n### Containerization\n\n- docker\n- docker-compose\n- kubectl\n- helm\n- helm-dashboard\n- kind\n- k9s\n- kubectx\n- kubens\n- kubeshell\n- kubeps1\n- kubecolor\n- kubeshark\n- kubetail\n\n### Network Protocol Analyzers\n\n- tshark (from source code)\n\n### Git\n\n- git-core\n- git-lfs\n- git-crypt\n\n### JVM\n\n- openjdk\n- groovy\n- maven\n- allure\n\n### Ruby\n\n- Gem\n- Bundle\n\n### GO\n\n- go\n  - github.com/nektos/act\n  - golang.org/x/lint/golint\n  - github.com/rhysd/actionlint\n  - github.com/mkouhei/gosh\n  - golang.org/x/tools/gopls\n  - github.com/go-delve/delve/cmd/dlv\n  - honnef.co/go/tools/cmd/staticcheck\n\n### Python3\n\n- Python ``3.10``\n\n### VIM Plugins\n\n- Robot Framework\n- Jinja2\n- Jenkins\n\n### Linters\n\n- hadolint\n- golint\n\n### User Workspace Settings\n\n- .vimrc\n- .gitconfig\n- .bash_profile\n- .bash_aliases\n\n### Others\n\n- lynx\n- socat\n- sshpass\n- jq\n- yq\n- bridge-utils\n- x11-apps\n- xdg-utils\n- lsyncd\n\n## Accessing the Project Source Code\n\nIn order to *clone* the project source code you need:\n\n1. Request membership to [vagrantenv](git@github.com:theodore86/vagrantenv.git) project.\n\n## Windows Host Provisioning\n\nOpen Git BASH as **Administrator**:\n\n```console\ngit clone git@github.com:theodore86/vagrantenv.git\ncd vagrantenv/tools/windows\ncmd \"/C provision.bat\"\nshutdown /r (Reboot Windows PC)\n```\n\n## Linux Host Provisioning\n\nOpen your terminal:\n\n```console\ngit clone git@github.com:theodore86/vagrantenv.git\ncd vagrantenv/tools/linux\nbash provision.sh\nsudo shutdown -r (Reboot your Linux PC)\n```\n\n## Bringing Up the Virtual Machine\n\n```console\ncd vagrantenv\nexport HTTP(S)_PROXY=x.x.x.x:8080 (if behind proxy)\nvagrant up\nvagrant ssh\n```\n\n## Updating the Virtual Machine\n\n```console\ncd vagrantenv\ngit pull\nvagrant box update\nvagrant up or reload\nvagrant ssh\n```\n\n## Retrieve Virtual Machine SSH config\n\n```console\nvagrant ssh-config\n```\n\n## Project Structure\n\n```bash\nvagrantenv\n├── AUTHORS.md\n├── bin (d)\n├── CHANGELOG.md\n├── CONTRIBUTING.md\n├── Dockerfile\n├── docs (d)\n├── Gemfile\n├── Gemfile.lock\n├── lib (d)\n├── LICENSE\n├── mkdocs.yml\n├── provisioners (d)\n├── README.md\n├── requirements.d (d)\n├── tools (d)\n├── tox.ini\n├── Vagrantfile\n└── vagrant.yaml\n```\n\n- ``bin``: Project executables\n- ``Dockerfile``: File to build project CI docker containers\n- ``docs``: Project documentation\n- ``lib``:  Vagrant ruby helper modules\n- ``provisioners``: Vagrant (shell, ansible) provisioners\n- ``requirements.d``: Python project dependencies\n- ``tools``: Generic project tools\n- ``tox.ini``: Test automation command line tool\n- ``vagrant.yaml``: Vagrant central configuration file\n- ``Vagrantfile``: Vagrant main ruby file\n\n## Documentation\n\nFor more details, generate and serve [locally](http://localhost:8000) the project documentation:\n\n```console\ntox -e docs -- --dev-addr 0.0.0.0:8000\n```\n\n## In a Nuschell\n\n![Vagrant Workflow](docs/img/vagrant.png \"Vagrant Workflow\")\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheodore86%2Fvagrantenv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheodore86%2Fvagrantenv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheodore86%2Fvagrantenv/lists"}