import "v.io/x/ref/runtime/internal"
func AsyncCloudAddressChoser(ctx context.Context, logger logging.Logger, fl *flags.VirtualizedFlags) rpc.AddressChooser
AsyncCloudAddressChoser asynchronously initializes the cloud vm environment and returns an rpc.AddressChooser that will wait for the environment to be determined.
type CloudVM struct {
// contains filtered or unexported fields
}
func InitCloudVM(ctx context.Context, logger logging.Logger, fl *flags.VirtualizedFlags) (*CloudVM, error)
InitCloudVM initializes the CloudVM metadata using the configuration provided by VirtualizedFlags. It implements rpc.AddressChooser and provides a RefreshAddress method to update addresses based on current metadata settings. If PublicAddress is set it is used, then PublicDNSName and finally, if a VirtualizationProvider is defined its metadata service will be used. If the AdvertisePrivateAddresses flag is set then the private addresses and the candidate addresses supplied to the address chooser will also be returned by ChoseAddresses, otherwise only the public/external ones will be returned.
ChooseAddresses implements rpc.AddressChooser.
RefreshAddresses updates the addresses from the viurtualization/cloud providers metadata if appropriate to do so.
Path | Synopsis |
---|---|
cloudvm | Package cloudvm provides functions to test whether the current process is running on Google Compute Engine or Amazon Web Services, and to extract settings from this environment. |
cloudvm/cloudpaths | |
cloudvm/cloudvmtest | |
flow | |
flow/conn | nolint:golint |
flow/crypto | |
flow/flowtest | |
flow/manager | |
lib/dependency | Package dependency keeps track of a dependency graph. |
lib/deque | Package deque implements a deque using a circular array. |
lib/sync | Package sync provides synchronization primitives. |
lib/upcqueue | Package upcqueue implements an unbounded producer/consumer queue. |
naming | Package naming provides an implementation of the interfaces in v.io/v23/naming. |
naming/namespace | |
platform | |
requestid | |
rpc | |
rpc/benchmark | package benchmark provides simple tools to measure the performance of the IPC system. |
rpc/benchmark/benchmark | Command benchmark runs the benchmark client. |
rpc/benchmark/benchmarkd | Command benchmarkd runs the benchmark server. |
rpc/benchmark/internal | |
rpc/stress | nolint:golint |
rpc/stress/internal | |
rpc/stress/mtstress | Usage: mtstress [flags] <command> |
rpc/stress/stress | Command stress is a tool to stress/load test RPC by issuing randomly generated requests. |
rpc/stress/stressd | Command stressd runs the stress-test server. |
rpc/test | package test contains test for rpc code that do not rely on unexposed rpc declarations. |
rpc/version | |
rt | |
testing/mocks/naming | |
vtrace | Package vtrace implements the Trace and Span interfaces in v.io/v23/vtrace. |
Package internal imports 10 packages (graph) and is imported by 3 packages. Updated 2021-01-19. Refresh now. Tools for package owners.