4413 Commits

Author SHA1 Message Date
sophia
e70a25e24f Use the scoped hash override to get overriden synced folder config 2022-07-07 12:30:24 -05:00
sophia
b17c36c7c7 Fix typo 2022-07-07 12:30:24 -05:00
sophia
e8c0587c85 go generate 2022-07-07 12:30:24 -05:00
Sophia Castellarin
0b53e06687
Merge pull request #297 from hashicorp/port-command-fix
Use remote provider
2022-07-07 12:21:48 -05:00
sophia
73801703e7 Pass machine to provider capabilities 2022-07-07 11:49:57 -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
Paul Hinze
fb2a102c71
Fix init and other commands that run without a project
The Basis needs to be able to respond to Vagrantfile() and
DefaultProvider() to make it through Vagrant::Environment
initialization.

Depends on https://github.com/hashicorp/vagrant-plugin-sdk/pull/178
2022-07-01 11:56:08 -05:00
sophia
52d37217ac Use cache from CommandServe module 2022-06-30 16:57:41 -05:00
sophia
20ec85b021 Use remote provider 2022-06-30 16:57:41 -05:00
Chris Roberts
e1d7962ee8 Generated proto updates for get commands 2022-06-29 16:14:01 -07:00
sophia
adadf26c9c Check if communicator is available before detecting guests 2022-06-29 17:23:43 -05:00
sophia
e0a30f9ba7 Raise error if communicator is not ready when getting guest from machine 2022-06-29 17:23:43 -05:00
Paul Hinze
430377fdce
Merge pull request #291 from hashicorp/fix-ssh-config
Fix ssh-config and winrm-config by remote-ifying safe_puts
2022-06-28 11:50:08 -05:00
Chris Roberts
f1695b6c1f Generated proto updates for config wrappers 2022-06-24 18:28:10 -07:00
Paul Hinze
63cefbb8ed
Fix ssh-config and winrm-config by remote-ifying safe_puts
This also removes the "Running (command)..." output since users will
expect to be able to redirect the ssh-config output to a file without
that noise.

If we really like the "Running" thing we can try and swing around and
get fancy by detecting whether or not we have a terminal or a file as
output and doing conditional stuff, but this seemed like the simplest
way forward for now.
2022-06-24 12:53:57 -05:00
Chris Roberts
4b61b0be49 Fix state loading for machine 2022-06-21 14:42:14 -07:00
Chris Roberts
83467013e9 Handle Set and Logger types 2022-06-20 16:56:30 -07:00
Chris Roberts
e0d8fa6689 Generated proto updates 2022-06-20 13:13:06 -07:00
Chris Roberts
8e69548c76 Memoize some values fetched from the machine client 2022-06-20 13:10:38 -07:00
Chris Roberts
3f557e26f1 Log what wasn't handled by wrapper 2022-06-20 13:06:14 -07:00
Chris Roberts
4d403ef02a Only raise error if version load is nil 2022-06-15 11:15:08 -07:00
Chris Roberts
2274efa568 Add helper method for performing partial loads 2022-06-15 11:06:33 -07:00
Chris Roberts
2af4ee0859 Always store values even when not registered 2022-06-15 11:06:33 -07:00
Chris Roberts
dfc2a6d6f4 Make dummy config a proper config instance and remove to_proto 2022-06-15 11:06:33 -07:00
Chris Roberts
09e6ff7ba2 Use client to get vagrantfile for environment 2022-06-15 11:06:33 -07:00
Chris Roberts
0d2627014c Update remote machine to use client for values 2022-06-15 11:06:28 -07:00
Chris Roberts
972ba095e9 Add remote vagrantfile implementation 2022-06-15 11:02:29 -07:00
Chris Roberts
e47da98810 Update unset value constant 2022-06-15 11:02:29 -07:00
Chris Roberts
4128441aac Remove to_proto from config and update unset value constant 2022-06-15 11:02:29 -07:00
sophia
ec2e2a6e89 go generate 2022-06-08 10:30:46 -05:00
sophia
90825f7086 go generate 2022-06-08 10:30:46 -05:00
Paul Hinze
8b08b3117c
Use plugin options for Synced Folder priorities
Now that plugin options are available, we can use them to interpret
synced folder priorities and remove the shim we had in place.
2022-06-06 17:39:09 -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
Sophia Castellarin
fa1f45732b
Merge pull request #276 from hashicorp/machine-readable-flag
Machine readable flag
2022-06-03 12:11:15 -05:00
sophia
1ad8dc5234 Add command remote plugin 2022-06-01 14:36:19 -05:00
sophia
194882214a Add machine readable bool endpoint to terminal ui 2022-05-31 15:47:47 -05:00
sophia
4ffe33461c go generate . 2022-05-31 15:47:27 -05:00
sophia
32bb18e9b9 Only output machine readable data if the terminal is not interactive 2022-05-31 10:53:21 -05:00
sophia
65e851d646 Output machine readable data as table 2022-05-31 10:28:26 -05:00
sophia
313ba8655a Implement missing ui#machine method 2022-05-31 10:09:36 -05:00
sophia
58e8e6ff97 Remove unused machine initialization steps 2022-05-31 10:09:35 -05:00
Paul Hinze
02a06bca45
Fixes for provider capability invocations
It looks like I might have been the first to hit provider cabability
invocation in testing these changes, and so I found these few missing
methods on the client. They're just copied over from the other
capability hosts.

Calling capabilities on a provider also revealed that the wrong Machine
type was being pulled out of the funcspec args, so we had to correct
that too in order to get the capability calls working.
2022-05-25 16:19:50 -05:00
Paul Hinze
e605132321
Pass along provider to environment.target
Mirrors change in https://github.com/hashicorp/vagrant-plugin-sdk/pull/157
2022-05-25 16:19:50 -05:00
Paul Hinze
06350a7afc
Port default provider selection
- Pulls in the SDK changes to Project.DefaultProvider and Project.Target
- Implements the hefty default provider method
- Un-hard-codes provider from Target, and sets it when a Target is
  looked up from a Project
2022-05-25 16:19:50 -05:00
Paul Hinze
f221614187
Fix duplicate guess_provider call
No reason to call it twice when it's already being stored in a local
variable that's unmodified.

Also document the params for this method to help lay the groundwork for
porting.
2022-05-25 16:19:50 -05:00
sophia
dc1687e1ab go generate 2022-05-17 15:03:24 -05:00
sophia
d708bab84a Add error message for errors originating from a remote 2022-05-13 17:14:50 -05:00
Paul Hinze
8ff4fd674c
Add back in some respond_to checks
Helps Environment::Remote to work when it's handed a Basis client for
operations like `box list` and `vagrant init`.
2022-05-06 15:23:54 -05:00
sophia
e020c6600e Hacks to let a remote machine be instantiated with or with out a client 2022-05-04 11:25:54 -05:00
sophia
a40d890f74 Instantiate provider for remote machine 2022-05-04 11:25:18 -05:00