Chris Roberts
e958c6183a
Adds initial HCP config support
...
Adds initial basic support for HCP based configuration in vagrant-go.
The initalization process has been updated to remove Vagrantfile parsing
from the client, moving it to the runner using init jobs for the basis
and the project (if there is one). Detection is done on the file based
on extension for Ruby based parsing or HCP based parsing.
Current HCP parsing is extremely simple and currently just a base to
build off. Config components will be able to implement an `Init`
function to handle receiving configuration data from a non-native source
file. This will be extended to include a default approach for injecting
defined data in the future.
Some cleanup was done in the state around validations. Some logging
adjustments were applied on the Ruby side for better behavior
consistency.
VirtualBox provider now caches locale detection to prevent multiple
checks every time the driver is initialized.
2023-09-07 17:26:10 -07:00
hashicorp-copywrite[bot]
36a312ee26
add missing license headers and update copyright file headers to BUS-1.1
2023-08-10 21:53:25 +01:00
Chris Roberts
b6192eba0d
Fixup scoping usage to properly validate
2023-06-05 14:18:05 -07:00
sophia
45d15e12c2
Support color in runner ui
2022-09-14 11:41:30 -04:00
Chris Roberts
e959369a0b
Use factory for scope loading in runner
2022-07-08 16:38:02 -07:00
Chris Roberts
5df92814c7
Update function call name fo init operation
2022-07-08 16:38:02 -07:00
sophia
19fbd81c8e
Close UI if it is close-able
2022-07-07 11:40:20 -05:00
Chris Roberts
da0ba680ac
Update testing helper setups for signature change
2022-06-27 11:21:41 -07:00
Chris Roberts
24d8025827
Remove cleanup implementation from runner
2022-06-20 13:09:43 -07:00
Chris Roberts
f57ffec0fd
Use cleanup helper in runner
2022-06-20 13:04:41 -07:00
Chris Roberts
526c43a926
Use reference name for loading. Allow closes to happen automatically.
2022-06-20 13:04:21 -07:00
Chris Roberts
2cb5dab953
Include ruby client when creating plugin manager
2022-06-15 11:08:08 -07:00
Chris Roberts
fd113d0aca
Remove vagrantfile related logic from operation
2022-06-15 11:06:33 -07:00
Paul Hinze
e829550ea7
Improve run operation error handling
...
There are some cases where the error that gets returned from scope.Run
is not a core.CommandError which results in a type mismatch panic. This
fixes that and wraps any generic errors into the proper response struct.
2022-06-10 11:14:14 -05:00
sophia
194882214a
Add machine readable bool endpoint to terminal ui
2022-05-31 15:47:47 -05:00
Chris Roberts
5b04ac5c35
Isolate our basis validity to single operation
2022-04-25 16:12:38 -07:00
Chris Roberts
6ba7807f7b
Add ClearLine() to UI implementations
2022-04-25 12:26:43 -05:00
sophia
aeda0ec039
Pass error status with job completion results
2022-04-25 12:26:20 -05:00
Chris Roberts
b2c02428ae
Close plugin manager when closing runner
2022-04-25 12:26:14 -05:00
Chris Roberts
3505089a3c
Allow runner UI to disable new lines
2022-04-25 12:24:35 -05:00
Chris Roberts
32710b5d79
Create basis from factory and update runner to use factory
2022-04-25 12:24:30 -05:00
sophia
277972f38f
Disable tests that use plugin manager to load builtin plugins
...
Loading builtin plugins is being changed. Once it has been fixed,
these tests should be re-enabled
2022-04-25 12:24:29 -05:00
sophia
12cb7b9fca
Include a plugin manager for basis creation in runner tests
2022-04-25 12:24:29 -05:00
Chris Roberts
785c38f755
Remove factory usage within runner testing
2022-04-25 12:24:23 -05:00
Chris Roberts
415a6b6b5b
Allow setting a custom context for the runner
2022-04-25 12:24:23 -05:00
Chris Roberts
ab0dc954cc
Handle all plugin setup via manager in runner
2022-04-25 12:24:22 -05:00
Chris Roberts
4c8dc9a01c
Update runner to load plugins via plugin manager
2022-04-25 12:24:22 -05:00
sophia
f864d6aa26
Get runner accpet tests to work
2022-04-25 12:24:16 -05:00
sophia
b223ea2b6c
Clean up test instances
2022-04-25 12:24:15 -05:00
sophia
b0c129e461
Fix runner accept tests
2022-04-25 12:24:15 -05:00
sophia
c4e016a4d6
Fix runner test
2022-04-25 12:24:15 -05:00
sophia
a6af4062f8
Save point
2022-04-25 12:24:15 -05:00
sophia
4a4db7f4c4
Disable runner tests for now
2022-04-25 12:24:14 -05:00
sophia
21938bf0b2
Update runner testdata
2022-04-25 12:24:14 -05:00
Chris Roberts
5d45e2c3f2
Properly detect valid components before registering plugins
2022-04-25 12:24:13 -05:00
Chris Roberts
29c3cf439b
Support passing exit code back to origin
2022-04-25 12:24:11 -05:00
Chris Roberts
05d5634c83
Host component related work
2022-04-25 12:24:10 -05:00
Chris Roberts
a46edc37f8
Track scope when loading to use most specific scope for operation
2022-04-25 12:24:08 -05:00
Chris Roberts
0e820011f2
Update machine to target in runner operation
2022-04-25 12:24:06 -05:00
Chris Roberts
e62dd81050
Properly load bases based on scope provided in job
2022-04-25 12:24:05 -05:00
sophia
9b3d07382a
Enable multi ui to check for interactive uis
2022-04-25 12:24:04 -05:00
sophia
254c462add
De-duplicate component type factory map
2022-04-25 12:24:00 -05:00
sophia
d004125712
Register builtin plugins against all available components
2022-04-25 12:24:00 -05:00
Chris Roberts
bba557c29d
Close the client to shutdown the plugin and prevent hang.
...
This also updates the Ruby runtime usage to pass the ClientProtocol
instead of the full client since after init we only need it for
dispensing plugins.
2022-04-25 12:23:59 -05:00
Chris Roberts
cffd771288
Move Vagrant runtime out of server and into runner (via client startup)
2022-04-25 12:23:58 -05:00
sophia
c3ee750db1
Add gogo
2022-04-25 12:23:57 -05:00