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
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
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
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
Chris Roberts
b365827f73
Save updated project after deleting target
2022-06-30 11:15:56 -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
a8fd255f5b
Update configuration type for target
2022-06-15 11:06:33 -07: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
sophia
7eccedba12
Add test for box with 0 version number
2022-04-25 12:26:45 -05:00
sophia
fc649b0937
Set first match without version constraint
2022-04-25 12:26:45 -05:00
sophia
8bd9a778e9
Test for non merging configs
2022-04-25 12:26:34 -05:00
sophia
34c4bac2ec
Don't merge Vagrantfile configs when merging targets to upsert to db
2022-04-25 12:26:34 -05:00
sophia
3dbd9286be
Merge targets with upserting
2022-04-25 12:26:23 -05:00
Paul Hinze
c1c215e84e
Round out service tests
...
* Add tests for service Target and catch a panic
* Add skipped stub test for Task w/ a note for future us
2022-04-25 12:26:11 -05:00
Paul Hinze
e7533103e8
Tests for service project & a small panic guard
...
Tests helped flush out that we would panic if a project was attempting
to be created without a basis.
Sometimes tests help!
2022-04-25 12:26:11 -05:00
sophia
a63184ef5f
Test target find and duplicate upserts
2022-04-25 12:25:55 -05:00
sophia
04095d2132
Find targets based on name and project
2022-04-25 12:25:55 -05:00
sophia
eeafbe4954
Search for project and target before upserting
2022-04-25 12:25:55 -05:00
sophia
a99bfc65f9
AUse version constraints to find boxes
2022-04-25 12:25:54 -05:00
sophia
63eb76bd60
Find boxes by name, provider, version
2022-04-25 12:25:54 -05:00
sophia
62d7324bfc
go generate
2022-04-25 12:25:52 -05:00
sophia
a8ce240049
Add tests for box
2022-04-25 12:25:52 -05:00
sophia
5fc9dd94fe
Implement box crub endpoints
2022-04-25 12:25:52 -05:00
sophia
3e3ab869d4
Add box to bolt
2022-04-25 12:25:52 -05:00
sophia
d75f76edf7
Prune old jobs as part of vagrant server clean ups
2022-04-25 12:24:40 -05:00
sophia
57474ac8c8
Periodically prune old jobs from bolt
2022-04-25 12:24:40 -05:00
sophia
2991810e0c
Seperate pruning jobs from memdb and bolt
...
only prune out old queued jobs in memdb
2022-04-25 12:24:40 -05:00
sophia
21c926523f
Count all the entries in jobs bucket
2022-04-25 12:24:40 -05:00
sophia
63dcc9fbf3
Save point: run prune in background
2022-04-25 12:24:40 -05:00
sophia
4205d0e444
Prune old jobs from state
2022-04-25 12:24:40 -05:00
sophia
772e786eee
Import Waypoint state pruning code
...
ref: b333b059a0/internal/server/singleprocess/state/prune.go
b333b059a0/internal/server/singleprocess/state/prune_test.go
4f71748610/internal/server/singleprocess/prune.go
Squash: import prune
2022-04-25 12:24:40 -05:00
sophia
f5fe88de15
Add tests for target
2022-04-25 12:24:39 -05:00
sophia
72225abc28
Add test for basis state
2022-04-25 12:24:39 -05:00
sophia
ea87b6824d
Upgrade bolt to bbolt
...
boltdb/bolt is no longer a maintained project. bbolt is the CoreOS
fork that the author of boltdb suggests using as a replacement.
2022-04-25 12:24:34 -05:00
Chris Roberts
df2488e508
Set uuid value on target if unset
2022-04-25 12:24:32 -05:00