15504 Commits

Author SHA1 Message Date
Chris Roberts
3a6308b7fc
Use blocks for logging content to reduce processing 2022-04-25 12:26:54 -05:00
Paul Hinze
ae58d787a0
Fix leaking basis log lines 2022-04-25 12:26:54 -05:00
sophia
cfe4e71a42
Seed target ui 2022-04-25 12:26:54 -05:00
sophia
a7d258abb3
Seed target after creation 2022-04-25 12:26:53 -05:00
sophia
6313596d62
Remove manual seeding of (guest and synced folder) plugins 2022-04-25 12:26:53 -05:00
sophia
7b470d4b25
Ensure box metadata has optional arguments 2022-04-25 12:26:53 -05:00
sophia
3fde8afe70
Bump sdk 2022-04-25 12:26:53 -05:00
sophia
c464569794
Remove extra logging 2022-04-25 12:26:53 -05:00
sophia
8adbab2f22
Sort box metadata versions 2022-04-25 12:26:53 -05:00
sophia
03ecb877e6
Update box metadata Name endpoint to boxName 2022-04-25 12:26:53 -05:00
sophia
66524426d0
Update ruby remote box metadata for proto changes 2022-04-25 12:26:53 -05:00
sophia
01b4bbc42d
Specify multiple filters when querying for box metadata version 2022-04-25 12:26:53 -05:00
sophia
f905e004b4
Add binstubs to gitignore 2022-04-25 12:26:53 -05:00
sophia
7f099bc30d
go generate 2022-04-25 12:26:53 -05:00
sophia
33c9d23a2e
go generate 2022-04-25 12:26:52 -05:00
sophia
0556c804fd
Add load metadata client endpoint 2022-04-25 12:26:52 -05:00
sophia
d1ea9b5ec7
Remove unused code 2022-04-25 12:26:52 -05:00
sophia
29c6d43cb8
Add LoadMetadata function to BoxMetadata 2022-04-25 12:26:52 -05:00
sophia
1f5d66fd76
Get box metadata client from box 2022-04-25 12:26:52 -05:00
sophia
428c3b02fd
Use remote box metadata implementation 2022-04-25 12:26:52 -05:00
sophia
84a6950c9e
go generate 2022-04-25 12:26:52 -05:00
sophia
3dff26d683
Add version information to box provider metadata 2022-04-25 12:26:52 -05:00
sophia
794eefe191
Rename box metadata Name to BoxName 2022-04-25 12:26:52 -05:00
sophia
9f524bf1b0
Implement box metadata methods 2022-04-25 12:26:52 -05:00
sophia
4b8d4fbe86
Box metadata to implement vagrant-plugin-sdk box metadata interface 2022-04-25 12:26:52 -05:00
sophia
8b586fceb3
Make box metadata implement vagrant-plugin-sdk box metadata 2022-04-25 12:26:51 -05:00
sophia
3e641fbe6b
Stub machine index proto mapper for environment test 2022-04-25 12:26:51 -05:00
sophia
2044ec68d0
Bump sdk 2022-04-25 12:26:51 -05:00
sophia
9bf59a0d42
Rely on proto mappers to convert configs 2022-04-25 12:26:51 -05:00
sophia
436518e445
No need to stringify hash keys when using mappers 2022-04-25 12:26:51 -05:00
sophia
333fc16096
Map provisioner config to Hash using mappers instead of assuming Struct type 2022-04-25 12:26:51 -05:00
sophia
7dd3649d73
Update Symbol proto mappers 2022-04-25 12:26:51 -05:00
sophia
d5aacc0bc6
Thrash around making to proto for config faster 2022-04-25 12:26:51 -05:00
sophia
f4811af759
Use symbol proto when protoizing plugin configs 2022-04-25 12:26:51 -05:00
sophia
ccf2bf6197
Pass config as a SDK hash in order to use the Symbol proto 2022-04-25 12:26:51 -05:00
sophia
a0cec28849
go generate 2022-04-25 12:26:50 -05:00
Paul Hinze
2efa6547f4
Updates to make vagrant-spec work in CI
* The vagrant-spec gem is installed as part of bundle install so
   there's no need to install it separately. Remove those extra steps
   and invoke it with bundle exec instead.
 * The binstub for vagrant does not work with `--standalone` in CI, but
   the one generated w/o `--standalone` works fine. This also seems to
   work in dev, so we'll just switch to that one.
 * Fetch all tags in CI to make sure we're getting proper version
   numbers in our build (based off `git describe`).
2022-04-25 12:26:50 -05:00
sophia
9a61574f52
Add core plugin manager to default mapper list 2022-04-25 12:26:50 -05:00
sophia
921e7edb48
Reduce scope of plugins that can be returned from the core plugin manager 2022-04-25 12:26:50 -05:00
sophia
3444cac7b4
Bump sdk 2022-04-25 12:26:50 -05:00
sophia
77a06e83d0
Close core plugins 2022-04-25 12:26:50 -05:00
sophia
b40dde3797
Module for core plugin manager mappers 2022-04-25 12:26:50 -05:00
sophia
afc6d1c27d
Extract core plugin manager from context 2022-04-25 12:26:50 -05:00
sophia
68ffb3a8cf
Inject core plugin manager into context when running plugins 2022-04-25 12:26:50 -05:00
sophia
05244e67c1
Add mappers for core plugin manager 2022-04-25 12:26:50 -05:00
sophia
b3003e8cb6
Add core plugin service client 2022-04-25 12:26:50 -05:00
sophia
e90c7a508f
go generate 2022-04-25 12:26:49 -05:00
sophia
c2c784a295
Seed basis with core plugin manager 2022-04-25 12:26:49 -05:00
sophia
863c6a2704
Get BoxMetadata Plugin from the core plugin manager 2022-04-25 12:26:49 -05:00
Paul Hinze
4c21cb6ae5
Add release-grade logic for finding legacy Vagrant
After lots of experimentation I have landed on this as my proposal for
how we have our Go binary find its Ruby counterpart: just have it grab
it from the $PATH! @evanphx showed me this neat trick where by borrowing
a couple of helper methods from `exec` and tweaking them we can get
logic that will do a $PATH lookup that excludes "ourself". This allows
us to have both `vagrant` executables on the path... and means that
switching between Gogo-by-default or Legacy-by-default is just a matter
of tweaking $PATH order.

It _also_ means that we don't need any different lookup logic for
"release mode" vs "development mode" which is what I was looking at
before this solution.

In order to continue to facilitate development, I've generated a binstub
for vagrant using `bundle binstubs vagrant --standalone --path
./binstubs`, and I've updated the Nix development setup to prepend this
directory to the $PATH.

NOTE: Non-Nix users will need to modify their $PATH in the same way to
get the same behavior in development.
2022-04-25 12:26:49 -05:00