Tinkerbell.Sandbox/.github/workflows/vagrant-packet.yaml
Jacob Weinstock 6b841fee7c This simplifies the stand-up of a sandbox:
Only 2 main Vagrant calls are now needed (`vagrant up` and `vagrant up machine1`).
This PR only updates the Vagrant Virtualbox setup. The Vagrant Libvirt and Terraform
still need to be updated.

This uses docker-compose as the entry point for standing up the stack and makes the stand-up
of the sandbox more portal. Vagrant and Terraform are only responsible for standing up infrastructure
and then running docker-compose, not for running any glue scripts.

The docker-compose calls out to single-shot services to do all the glue required to get the fully
functional Tinkerbell stack up and running. All the single-shot services are idempotent.
This increases portability and the development iteration loop. This also simplifies the required
steps needed to get a fully functioning sandbox up and running.

This is intended to help people looking to get started by getting them to a provisioned
machine quicker and more easily.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
2021-08-09 08:04:06 -06:00

24 lines
568 B
YAML

name: Setup with Vagrant on Packet
on:
push:
pull_request:
types: [labeled]
jobs:
vagrant-setup:
if: contains(github.event.pull_request.labels.*.name, 'ci-check/vagrant-setup')
runs-on: vagrant
env:
TEST_WITH_VAGRANT: "yes"
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Cleanup state directory
run: |
rm -rf ./deploy/state
- name: Vagrant Test
run: |
export VAGRANT_DEFAULT_PROVIDER="virtualbox"
cd ./test/vagrant
go test --timeout 1h -v ./