Skip to content

feat: set up VMs for local development/testing #179

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 26 commits into
base: main
Choose a base branch
from

Conversation

arturbalabanov
Copy link

@arturbalabanov arturbalabanov commented Jun 30, 2025

Description

Take a look at documentation/setup_dev_vm.md for an in-depth guide on how to use the VMs

Related issue number

Special notes

Checklist

  • The pull request title is a good summary of the changes
  • Unit tests for the changes exist
  • New and existing unit tests pass locally

TODO

  • Update the docs to add the tap for installing vagrant
  • Don't assume the venv's path (or even its existence)
  • Investigate this error:
TASK [common : Download buildkit] ******************************************************************************************************************************

fatal: [ubuntu-2404-arm-64]: FAILED! => {"changed": false, "dest": "/tmp/buildkit-0.16.0-linux-arm64.tar.gz", "elapsed": 10, "gid": 1000, "group": "vagrant", "mode": "0664", "msg": "Request failed: <urlopen error _ssl.c:983: The handshake operation timed out>", "owner": "vagrant", "size": 75248197, "state": "file", "uid": 1000, "url": "[https://github.com/moby/buildkit/releases/download/v0.16.0/buildkit-v0.16.0.linux-arm64.tar.gz"}](https://github.com/moby/buildkit/releases/download/v0.16.0/buildkit-v0.16.0.linux-arm64.tar.gz%22%7D)
 
PLAY RECAP *****************************************************************************************************************************************************

ubuntu-2404-arm-64         : ok=37   changed=16   unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
  • Investigate and fix this error:
TASK [common : Download nerdctl] *******************************************************************************************************************************
fatal: [ubuntu-2404-arm-64]: FAILED! => {"changed": false, "dest": "/tmp/nerdctl-1.7.6-linux-arm64.tar.gz", "elapsed": 10, "msg": "Request failed: <urlopen error _ssl.c:983: The handshake operation timed out>", "url": "[https://github.com/containerd/nerdctl/releases/download/v1.7.6/nerdctl-1.7.6-linux-arm64.tar.gz"}](https://github.com/containerd/nerdctl/releases/download/v1.7.6/nerdctl-1.7.6-linux-arm64.tar.gz%22%7D)
 
PLAY RECAP *****************************************************************************************************************************************************
ubuntu-2404-arm-64         : ok=28   changed=10   unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
  • If the provisioning fails, it's intuitive for the user to run the provisioning playbook again (instead of first resetting the VM) which may leave the VM in a broken state. Either update the docs, automate it in the background or fix the playbook

* Update thanos base images
* minio: update to the new auth env vars
* minio: create thanos bucket on container start
* fix filebeat errors by updating the config format
* etcd: downgrade to 3.5 and force the usage of V2 API (removed in 3.6)
* etcd: update the healthcheck command as the previous one was
  deprecated and removed
* hacks for thanos permissions issues with mounted images, so that the
  deployment works again
* vm script: immediately stop the VM if --force is used (saves a lot of time)
* vm script: add a command to show information about the Optscale
  deployment making it easier to troubleshoot issues
* vm script: add a command to deploy local changes to the VM for a given service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant