175 Commits

Author SHA1 Message Date
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
Chris Roberts
a7135c000b Apply license adjustments and fixes
Add configuration file for automated license modifications, remove
automated licese modifications from specific locations, and update the
license set in the gem specification.
2023-08-10 17:05:19 -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
1c98ab7111 Use proto merge for merging proto based types 2023-06-12 09:33:00 -07:00
Chris Roberts
dcb517e1fb Prevent parent overwrites during upserts 2023-06-12 09:33:00 -07:00
Chris Roberts
0c21086bc2 Test cleanups and adjustments to get everything working 2023-06-07 17:46:04 -07:00
Chris Roberts
a6d38a8795 Remove ptypes and usages 2023-06-05 17:30:55 -07:00
Chris Roberts
6d88f3a54f Fix up some of the testing 2023-06-05 14:18:53 -07:00
Chris Roberts
dd184936db Generated proto updates 2023-06-05 14:18:06 -07:00
Chris Roberts
c797ce5471 Data layer updates
Implement direct test coverage on data models and apply
fixes for behavior inconsistencies.
2023-06-05 14:18:06 -07:00
Chris Roberts
6970336d87 Update model definitions and saving 2023-06-05 14:18:06 -07:00
Chris Roberts
4f559c06ab Add string pointer converters 2023-06-05 14:18:06 -07:00
Chris Roberts
eab9ef8e66 Box find should return nil on not found 2023-06-05 14:18:06 -07:00
Chris Roberts
247b6f55d0 Add upsert helpers 2023-06-05 14:18:06 -07:00
Chris Roberts
013837e73c Define and use internal model struct 2023-06-05 14:18:06 -07:00
Chris Roberts
8eafe188a8 Only set or restore values if value exists 2023-06-05 14:18:06 -07:00
Chris Roberts
843d6bf2dc Convert vagrantfile contents to protovalues 2023-06-05 14:18:06 -07:00
Chris Roberts
f42269c584 Generated proto updates 2023-06-05 14:18:06 -07:00
Chris Roberts
be969c3386 Update job message structure to include scope 2023-06-05 14:18:05 -07:00
Chris Roberts
12042fd849 Proto updates and cleanup 2023-06-05 14:18:05 -07:00
Chris Roberts
25e87ee31e Update services interaction with state 2023-06-05 14:18:05 -07:00
Chris Roberts
ab51abc86d Update local test database setup 2023-06-05 14:18:05 -07:00
Chris Roberts
f24ab4d855 Migrate data layer to gorm 2023-06-05 14:18:05 -07:00
Chris Roberts
e125f55688 Remove services and state not required 2023-06-05 14:18:05 -07:00
Chris Roberts
788c5be03a Delete server config state and service 2023-06-05 14:18:05 -07:00
sophia
e96738bf43 Add protos for supporting colored terminal line events 2022-09-14 11:41:30 -04:00
Chris Roberts
dca389eda0 Generated proto updates 2022-07-25 15:00:49 -07:00
Chris Roberts
8c3393bd61 Add Stop rpc for ruby internal service 2022-07-25 14:30:29 -07:00
Sophia Castellarin
66a22e5254
Merge pull request #303 from hashicorp/synced_folder_has_override_opts
Synced folder has override opts
2022-07-07 16:28:14 -05:00
Chris Roberts
f5d778d51a Revert "Merge pull request #300 from hashicorp/optimize-ruby-command-list"
This reverts commit 1c26a4abb0c9e095b3f6ec9944c4b15f6f1cd064, reversing
changes made to 186824a568583d8f6f2a50501d940ed71608fa0b.

The changes broke plugin loading when using subcommands so these
changes will be reverted until the underlying issue can be
investigated and resolved.
2022-07-07 14:03:56 -07:00
sophia
e8c0587c85 go generate 2022-07-07 12:30:24 -05:00
Chris Roberts
1c26a4abb0
Merge pull request #300 from hashicorp/optimize-ruby-command-list
Optimize command list generation
2022-07-07 09:29:15 -07:00
Chris Roberts
e7df8b6c52 Properly delete the target from the project 2022-06-30 11:16:09 -07:00
Chris Roberts
b365827f73 Save updated project after deleting target 2022-06-30 11:15:56 -07:00
Chris Roberts
e1d7962ee8 Generated proto updates for get commands 2022-06-29 16:14:01 -07:00
Chris Roberts
29a5c1b855 Add rpc for getting commands 2022-06-29 16:12:36 -07:00
Chris Roberts
b2aafa2469 Include project ref within target ref when listing targets 2022-06-28 08:38:45 -07:00
Chris Roberts
6f7e17a8b3 Update how configuration is set in tests 2022-06-27 11:22:51 -07:00
Chris Roberts
e0d8fa6689 Generated proto updates 2022-06-20 13:13:06 -07:00
Chris Roberts
17fc49cf41 Add provider parsing to internal endpoint 2022-06-20 13:05:26 -07:00
Chris Roberts
21b17e1907 Add extra parsing functions and change result type 2022-06-15 12:50:59 -07:00
Chris Roberts
e262cd02ac Update Vagrantfile proto representation 2022-06-15 11:15:08 -07:00
Chris Roberts
a8fd255f5b Update configuration type for target 2022-06-15 11:06:33 -07:00
sophia
6e28e0856c Update timestamp whenever a box is updated 2022-06-10 15:05:34 -05:00
Paul Hinze
8b5d4b8631
Update and address protobuf package deprecations
These changes address the following warning showing up on `go get`
operations:

    go: module github.com/golang/protobuf is deprecated: Use the
    "google.golang.org/protobuf" module instead.

All changes are made using the recommendations in the per-function
deprecation notices from the docs at
https://pkg.go.dev/github.com/golang/protobuf/ptypes
2022-06-08 11:51:19 -05:00
Paul Hinze
8dbe72a5a0
Use Component Options to implement ProviderOptions
* Populates ComponentOptions into plugin structs
* Maps options for legacy Provider Plugins into PluginOptions
* Demos use of PluginOptions in a stub provider
* Honors plugin priority and defaultable settings
2022-06-03 16:37:05 -05:00
Paul Hinze
c60f82d22f
go generate w/ latest version of deps 2022-06-03 14:40:00 -05:00
sophia
dc1687e1ab go generate 2022-05-17 15:03:24 -05:00
Chris Roberts
bbf7e0fb12 Generated proto updates 2022-04-25 16:12:38 -07:00
sophia
b62bdd8efb
Add missing Target states to proto 2022-04-25 12:26:47 -05:00