5202 Commits

Author SHA1 Message Date
Chris Roberts
e7686882fa
Log error and stacktrace on mapping errors 2022-04-25 12:26:31 -05:00
Chris Roberts
c6f6bf0c47
Include source and destination in no path exception message 2022-04-25 12:26:31 -05:00
Chris Roberts
32ea6a4509
Add new options type with mappers 2022-04-25 12:26:31 -05:00
Chris Roberts
312080ba60
Only write graph when logging mapper output 2022-04-25 12:26:31 -05:00
Chris Roberts
710adc8f7b
Retain simple hash type for now 2022-04-25 12:26:31 -05:00
Chris Roberts
4c9f14572a
Update target to addr in plugin protos 2022-04-25 12:26:30 -05:00
Chris Roberts
9e58090d09
Update the provider client to use funcspec utility 2022-04-25 12:26:30 -05:00
Chris Roberts
9f5e7780aa
Modifications to provide expected behavior of communicator client 2022-04-25 12:26:30 -05:00
Chris Roberts
b0f59c40f6
Update the search to use a reversed graph
Reverse the graph before searching so we are only working with
    a single possible destination. A DFS is used to initially prune
    down the graph.
2022-04-25 12:26:30 -05:00
Chris Roberts
3865008b89
Update weights and remove vertices from destination output 2022-04-25 12:26:30 -05:00
Chris Roberts
a98d91e15f
Unpack named arguments and provide value to flag generation request 2022-04-25 12:26:30 -05:00
Chris Roberts
b26a1ac515
Log error when input type is missing 2022-04-25 12:26:30 -05:00
Chris Roberts
2f0fdfc153
Add unique vertex type for root 2022-04-25 12:26:30 -05:00
Chris Roberts
cd99ff6525
Add logging to funcspec helper and build named types correctly 2022-04-25 12:26:30 -05:00
Chris Roberts
5609a32af0
Fix input type for duration mapping 2022-04-25 12:26:30 -05:00
Chris Roberts
32c77ef96a
Remove need for environment when mapping machine 2022-04-25 12:26:29 -05:00
Chris Roberts
0a9c02f957
Return hash with indifferent access from mapper 2022-04-25 12:26:29 -05:00
Chris Roberts
afdaf046dc
Log errors from submapping on direct type 2022-04-25 12:26:29 -05:00
Chris Roberts
14895eded1
Grab value from cache when mapping 2022-04-25 12:26:29 -05:00
Chris Roberts
58568b06fa
Define expected type with name 2022-04-25 12:26:29 -05:00
Chris Roberts
c9d93f2f8a
Request machines instead of targets 2022-04-25 12:26:29 -05:00
Chris Roberts
025808ba27
Add types for communicator information 2022-04-25 12:26:29 -05:00
Chris Roberts
8d8e9ae8ea
Properly include Empty argument to calls 2022-04-25 12:26:29 -05:00
Chris Roberts
ad402fd6d0
Update component clients to use FuncSpec module 2022-04-25 12:26:29 -05:00
Chris Roberts
6e16a8835c
Update clients to subclass Client 2022-04-25 12:26:29 -05:00
Chris Roberts
c413335e14
Add mappers for new types 2022-04-25 12:26:29 -05:00
Chris Roberts
451f3041f9
Add support for named vertices to mappers graph 2022-04-25 12:26:28 -05:00
Chris Roberts
286886ae89
Add named vertex type 2022-04-25 12:26:28 -05:00
Chris Roberts
32251ecb64
Include named value to mapper graph 2022-04-25 12:26:28 -05:00
Chris Roberts
1f731bbf9f
Add more default type maps 2022-04-25 12:26:28 -05:00
Chris Roberts
7c69fde71c
Break out type finding from unany method 2022-04-25 12:26:28 -05:00
Chris Roberts
4cf1090725
Add new custom types for easier conversions 2022-04-25 12:26:28 -05:00
Chris Roberts
58dd2e491f
Update cacher implementation 2022-04-25 12:26:28 -05:00
Chris Roberts
e29011d0b3
Add FuncSpec module
This module provides helper methods for handling FuncSpecs
    and generating FuncSpec::Args protos. At this stage it is
    intended for use in client implementations
2022-04-25 12:26:28 -05:00
Chris Roberts
e533d9f0a8
Convert client to class and populate with modules 2022-04-25 12:26:28 -05:00
sophia
891eb27e9a
Rename plugin "target" to "addr" 2022-04-25 12:26:27 -05:00
sophia
93ec8c1571
Refactor with_plugins util 2022-04-25 12:26:24 -05:00
sophia
81a9d7b241
Pass machine to provider functions 2022-04-25 12:26:24 -05:00
sophia
fcf405bdf8
Run provider actions 2022-04-25 12:26:24 -05:00
sophia
274ed6c756
Add mapper for machine state 2022-04-25 12:26:24 -05:00
sophia
8355209654
Accept machine for provider state endpoint 2022-04-25 12:26:24 -05:00
sophia
1e428a0812
Add mappers for provider 2022-04-25 12:26:24 -05:00
sophia
f3a1a9caa6
Add dependency on common protos for error details 2022-04-25 12:26:24 -05:00
sophia
526b7f2318
Remote init from provider grpc api 2022-04-25 12:26:23 -05:00
sophia
c48e43a12a
Add provider ruby client 2022-04-25 12:26:23 -05:00
sophia
75e6081e6d
Fill in provider ruby service 2022-04-25 12:26:23 -05:00
Paul Hinze
a86965c340
ruby mappers: Unwrap wrapper types in Hashes and Arrays
Boolean types (and possibly a few others) are returned as wrapper
classes when coming out from proto mapping; these need to be unwrapped
otherwise the caller who is expecting a nice clean boolean value ends up
with an icky protobuf class.

This fixes the shell provisioner, which relies on a communicator
receiving a settings hash `{error_check: false}` for a command that
usually fails but it sent just in case before provisioning starts.
2022-04-25 12:26:23 -05:00
sophia
c01a38b6e1
Load target index targets 2022-04-25 12:26:22 -05:00
Chris Roberts
1a32e8c2f9
Fetch command banner and remove switch characters 2022-04-25 12:26:21 -05:00
Chris Roberts
5e6fe71a37
Use ruby command arguments type when executing command 2022-04-25 12:26:21 -05:00