Compare commits
4 commits
master
...
features/s
Author | SHA1 | Date | |
---|---|---|---|
671c0357f4 | |||
b1d0f8d154 | |||
0363f52d3e | |||
43a8410354 |
|
@ -28,6 +28,9 @@ CHANGELOG
|
|||
- Support for lists and maps in config.
|
||||
[#3342](https://github.com/pulumi/pulumi/pull/3342)
|
||||
|
||||
- `ResourceProvider#StreamInvoke` implemented, will be the basis for streaming
|
||||
APIs in `pulumi query`. [#3424](https://github.com/pulumi/pulumi/pull/3424)
|
||||
|
||||
## 1.4.0 (2019-10-24)
|
||||
|
||||
- `FileAsset` in the Python SDK now accepts anything implementing `os.PathLike` in addition to `str`.
|
||||
|
@ -72,7 +75,7 @@ CHANGELOG
|
|||
|
||||
- Support renaming stack projects via `pulumi stack rename`.
|
||||
[#3292](https://github.com/pulumi/pulumi/pull/3292)
|
||||
|
||||
|
||||
- Add `helm` to `pulumi/pulumi` Dockerhub container
|
||||
[#3294](https://github.com/pulumi/pulumi/pull/3294)
|
||||
|
||||
|
|
|
@ -75,6 +75,7 @@ func Query(ctx *Context, q QueryInfo, opts UpdateOptions) result.Result {
|
|||
if err != nil {
|
||||
return result.FromError(err)
|
||||
}
|
||||
defer plugctx.Close()
|
||||
|
||||
return query(ctx, q, QueryOptions{
|
||||
Events: emitter,
|
||||
|
|
|
@ -158,6 +158,13 @@ func (p *builtinProvider) Invoke(tok tokens.ModuleMember,
|
|||
return outs, nil, nil
|
||||
}
|
||||
|
||||
func (p *builtinProvider) StreamInvoke(
|
||||
tok tokens.ModuleMember, args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]plugin.CheckFailure, error) {
|
||||
|
||||
return nil, fmt.Errorf("the builtin provider does not implement streaming invokes")
|
||||
}
|
||||
|
||||
func (p *builtinProvider) GetPluginInfo() (workspace.PluginInfo, error) {
|
||||
// return an error: this should not be called for the builtin provider
|
||||
return workspace.PluginInfo{}, errors.New("the builtin provider does not report plugin info")
|
||||
|
|
|
@ -15,6 +15,8 @@
|
|||
package deploytest
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/blang/semver"
|
||||
uuid "github.com/satori/go.uuid"
|
||||
|
||||
|
@ -155,3 +157,10 @@ func (prov *Provider) Invoke(tok tokens.ModuleMember,
|
|||
}
|
||||
return prov.InvokeF(tok, args)
|
||||
}
|
||||
|
||||
func (prov *Provider) StreamInvoke(
|
||||
tok tokens.ModuleMember, args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]plugin.CheckFailure, error) {
|
||||
|
||||
return nil, fmt.Errorf("not implemented")
|
||||
}
|
||||
|
|
|
@ -384,6 +384,13 @@ func (r *Registry) Invoke(tok tokens.ModuleMember,
|
|||
return nil, nil, errors.New("the provider registry is not invokable")
|
||||
}
|
||||
|
||||
func (r *Registry) StreamInvoke(
|
||||
tok tokens.ModuleMember, args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]plugin.CheckFailure, error) {
|
||||
|
||||
return nil, fmt.Errorf("the provider registry does not implement streaming invokes")
|
||||
}
|
||||
|
||||
func (r *Registry) GetPluginInfo() (workspace.PluginInfo, error) {
|
||||
// return an error: this should not be called for the provider registry
|
||||
return workspace.PluginInfo{}, errors.New("the provider registry does not report plugin info")
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
package providers
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"github.com/blang/semver"
|
||||
|
@ -142,6 +143,12 @@ func (prov *testProvider) Invoke(tok tokens.ModuleMember,
|
|||
args resource.PropertyMap) (resource.PropertyMap, []plugin.CheckFailure, error) {
|
||||
return nil, nil, errors.New("unsupported")
|
||||
}
|
||||
func (prov *testProvider) StreamInvoke(
|
||||
tok tokens.ModuleMember, args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]plugin.CheckFailure, error) {
|
||||
|
||||
return nil, fmt.Errorf("not implemented")
|
||||
}
|
||||
func (prov *testProvider) GetPluginInfo() (workspace.PluginInfo, error) {
|
||||
return workspace.PluginInfo{
|
||||
Name: "testProvider",
|
||||
|
|
|
@ -579,6 +579,12 @@ func (rm *resmon) Invoke(ctx context.Context, req *pulumirpc.InvokeRequest) (*pu
|
|||
return &pulumirpc.InvokeResponse{Return: mret, Failures: chkfails}, nil
|
||||
}
|
||||
|
||||
func (rm *resmon) StreamInvoke(
|
||||
req *pulumirpc.InvokeRequest, stream pulumirpc.ResourceMonitor_StreamInvokeServer) error {
|
||||
|
||||
return fmt.Errorf("the resource monitor does not implement streaming invokes")
|
||||
}
|
||||
|
||||
// ReadResource reads the current state associated with a resource from its provider plugin.
|
||||
func (rm *resmon) ReadResource(ctx context.Context,
|
||||
req *pulumirpc.ReadResourceRequest) (*pulumirpc.ReadResourceResponse, error) {
|
||||
|
|
|
@ -105,7 +105,6 @@ type querySource struct {
|
|||
func (src *querySource) Close() error {
|
||||
// Cancel the monitor and reclaim any associated resources.
|
||||
src.done = true
|
||||
close(src.langPluginFinChan)
|
||||
return src.mon.Cancel()
|
||||
}
|
||||
|
||||
|
@ -341,6 +340,53 @@ func (rm *queryResmon) Invoke(ctx context.Context, req *pulumirpc.InvokeRequest)
|
|||
return &pulumirpc.InvokeResponse{Return: mret, Failures: chkfails}, nil
|
||||
}
|
||||
|
||||
func (rm *queryResmon) StreamInvoke(
|
||||
req *pulumirpc.InvokeRequest, stream pulumirpc.ResourceMonitor_StreamInvokeServer) error {
|
||||
|
||||
tok := tokens.ModuleMember(req.GetTok())
|
||||
label := fmt.Sprintf("QueryResourceMonitor.StreamInvoke(%s)", tok)
|
||||
|
||||
providerReq, err := parseProviderRequest(tok.Package(), req.GetVersion())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
prov, err := getProviderFromSource(rm.reg, rm.defaultProviders, providerReq, req.GetProvider())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
args, err := plugin.UnmarshalProperties(
|
||||
req.GetArgs(), plugin.MarshalOptions{Label: label, KeepUnknowns: true})
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "failed to unmarshal %v args", tok)
|
||||
}
|
||||
|
||||
// Synchronously do the StreamInvoke and then return the arguments. This will block until the
|
||||
// streaming operation completes!
|
||||
logging.V(5).Infof("ResourceMonitor.StreamInvoke received: tok=%v #args=%v", tok, len(args))
|
||||
failures, err := prov.StreamInvoke(tok, args, func(event resource.PropertyMap) error {
|
||||
mret, err := plugin.MarshalProperties(event, plugin.MarshalOptions{Label: label, KeepUnknowns: true})
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "failed to marshal return")
|
||||
}
|
||||
|
||||
return stream.Send(&pulumirpc.InvokeResponse{Return: mret})
|
||||
})
|
||||
if err != nil {
|
||||
return errors.Wrapf(err, "streaming invocation of %v returned an error", tok)
|
||||
}
|
||||
|
||||
var chkfails []*pulumirpc.CheckFailure
|
||||
for _, failure := range failures {
|
||||
chkfails = append(chkfails, &pulumirpc.CheckFailure{
|
||||
Property: string(failure.Property),
|
||||
Reason: failure.Reason,
|
||||
})
|
||||
}
|
||||
|
||||
return stream.Send(&pulumirpc.InvokeResponse{Failures: chkfails})
|
||||
}
|
||||
|
||||
// ReadResource reads the current state associated with a resource from its provider plugin.
|
||||
func (rm *queryResmon) ReadResource(ctx context.Context,
|
||||
req *pulumirpc.ReadResourceRequest) (*pulumirpc.ReadResourceResponse, error) {
|
||||
|
|
|
@ -71,6 +71,12 @@ type Provider interface {
|
|||
Delete(urn resource.URN, id resource.ID, props resource.PropertyMap, timeout float64) (resource.Status, error)
|
||||
// Invoke dynamically executes a built-in function in the provider.
|
||||
Invoke(tok tokens.ModuleMember, args resource.PropertyMap) (resource.PropertyMap, []CheckFailure, error)
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
// of responses.
|
||||
StreamInvoke(
|
||||
tok tokens.ModuleMember,
|
||||
args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]CheckFailure, error)
|
||||
// GetPluginInfo returns this plugin's information.
|
||||
GetPluginInfo() (workspace.PluginInfo, error)
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ package plugin
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"strings"
|
||||
|
||||
"github.com/blang/semver"
|
||||
|
@ -954,6 +955,81 @@ func (p *provider) Invoke(tok tokens.ModuleMember, args resource.PropertyMap) (r
|
|||
return ret, failures, nil
|
||||
}
|
||||
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream of
|
||||
// responses.
|
||||
func (p *provider) StreamInvoke(
|
||||
tok tokens.ModuleMember,
|
||||
args resource.PropertyMap,
|
||||
onNext func(resource.PropertyMap) error) ([]CheckFailure, error) {
|
||||
|
||||
contract.Assert(tok != "")
|
||||
|
||||
label := fmt.Sprintf("%s.StreamInvoke(%s)", p.label(), tok)
|
||||
logging.V(7).Infof("%s executing (#args=%d)", label, len(args))
|
||||
|
||||
// Get the RPC client and ensure it's configured.
|
||||
client, err := p.getClient()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// If the provider is not fully configured, return an empty property map.
|
||||
if !p.cfgknown {
|
||||
return nil, onNext(resource.PropertyMap{})
|
||||
}
|
||||
|
||||
margs, err := MarshalProperties(args, MarshalOptions{
|
||||
Label: fmt.Sprintf("%s.args", label),
|
||||
KeepSecrets: p.acceptSecrets,
|
||||
})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
streamClient, err := client.StreamInvoke(
|
||||
p.ctx.Request(), &pulumirpc.InvokeRequest{Tok: string(tok), Args: margs})
|
||||
if err != nil {
|
||||
rpcError := rpcerror.Convert(err)
|
||||
logging.V(7).Infof("%s failed: %v", label, rpcError.Message())
|
||||
return nil, rpcError
|
||||
}
|
||||
|
||||
for {
|
||||
in, err := streamClient.Recv()
|
||||
if err == io.EOF {
|
||||
return nil, nil
|
||||
}
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Unmarshal response.
|
||||
ret, err := UnmarshalProperties(in.GetReturn(), MarshalOptions{
|
||||
Label: fmt.Sprintf("%s.returns", label),
|
||||
RejectUnknowns: true,
|
||||
KeepSecrets: true,
|
||||
})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// Check properties that failed verification.
|
||||
var failures []CheckFailure
|
||||
for _, failure := range in.GetFailures() {
|
||||
failures = append(failures, CheckFailure{resource.PropertyKey(failure.Property), failure.Reason})
|
||||
}
|
||||
|
||||
if len(failures) > 0 {
|
||||
return failures, nil
|
||||
}
|
||||
|
||||
// Send stream message back to whoever is consuming the stream.
|
||||
if err := onNext(ret); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// GetPluginInfo returns this plugin's information.
|
||||
func (p *provider) GetPluginInfo() (workspace.PluginInfo, error) {
|
||||
label := fmt.Sprintf("%s.GetPluginInfo()", p.label())
|
||||
|
|
|
@ -191,6 +191,29 @@ func (p *monitorProxy) Invoke(
|
|||
return p.target.Invoke(ctx, req)
|
||||
}
|
||||
|
||||
func (p *monitorProxy) StreamInvoke(
|
||||
req *pulumirpc.InvokeRequest, server pulumirpc.ResourceMonitor_StreamInvokeServer) error {
|
||||
|
||||
client, err := p.target.StreamInvoke(context.Background(), req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for {
|
||||
in, err := client.Recv()
|
||||
if err == io.EOF {
|
||||
return nil
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := server.Send(in); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (p *monitorProxy) ReadResource(
|
||||
ctx context.Context, req *pulumirpc.ReadResourceRequest) (*pulumirpc.ReadResourceResponse, error) {
|
||||
return p.target.ReadResource(ctx, req)
|
||||
|
|
|
@ -5,11 +5,13 @@
|
|||
"license": "Apache-2.0",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url" : "https://github.com/pulumi/pulumi.git",
|
||||
"url": "https://github.com/pulumi/pulumi.git",
|
||||
"directory": "sdk/nodejs"
|
||||
},
|
||||
"dependencies": {
|
||||
"@pulumi/query": "^0.3.0",
|
||||
"callback-to-async-iterator": "^1.1.1",
|
||||
"deasync": "^0.1.15",
|
||||
"google-protobuf": "^3.5.0",
|
||||
"grpc": "1.21.1",
|
||||
"minimist": "^1.2.0",
|
||||
|
@ -21,17 +23,16 @@
|
|||
"source-map-support": "^0.4.16",
|
||||
"ts-node": "^7.0.0",
|
||||
"typescript": "^3.0.0",
|
||||
"upath": "^1.1.0",
|
||||
"deasync": "^0.1.15"
|
||||
"upath": "^1.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/deasync": "^0.1.0",
|
||||
"@types/minimist": "^1.2.0",
|
||||
"@types/mocha": "^2.2.42",
|
||||
"@types/node": "^12.0.0",
|
||||
"@types/normalize-package-data": "^2.4.0",
|
||||
"@types/read-package-tree": "^5.2.0",
|
||||
"@types/semver": "^5.5.0",
|
||||
"@types/deasync": "^0.1.0",
|
||||
"istanbul": "^0.4.5",
|
||||
"mocha": "^3.5.0",
|
||||
"node-gyp": "^3.6.2",
|
||||
|
|
|
@ -261,6 +261,19 @@ var ResourceProviderService = exports.ResourceProviderService = {
|
|||
responseSerialize: serialize_pulumirpc_InvokeResponse,
|
||||
responseDeserialize: deserialize_pulumirpc_InvokeResponse,
|
||||
},
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
// of responses.
|
||||
streamInvoke: {
|
||||
path: '/pulumirpc.ResourceProvider/StreamInvoke',
|
||||
requestStream: false,
|
||||
responseStream: true,
|
||||
requestType: provider_pb.InvokeRequest,
|
||||
responseType: provider_pb.InvokeResponse,
|
||||
requestSerialize: serialize_pulumirpc_InvokeRequest,
|
||||
requestDeserialize: deserialize_pulumirpc_InvokeRequest,
|
||||
responseSerialize: serialize_pulumirpc_InvokeResponse,
|
||||
responseDeserialize: deserialize_pulumirpc_InvokeResponse,
|
||||
},
|
||||
// Check validates that the given property bag is valid for a resource of the given type and returns the inputs
|
||||
// that should be passed to successive calls to Diff, Create, or Update for this resource. As a rule, the provider
|
||||
// inputs returned by a call to Check should preserve the original representation of the properties as present in
|
||||
|
|
|
@ -157,6 +157,17 @@ var ResourceMonitorService = exports.ResourceMonitorService = {
|
|||
responseSerialize: serialize_pulumirpc_InvokeResponse,
|
||||
responseDeserialize: deserialize_pulumirpc_InvokeResponse,
|
||||
},
|
||||
streamInvoke: {
|
||||
path: '/pulumirpc.ResourceMonitor/StreamInvoke',
|
||||
requestStream: false,
|
||||
responseStream: true,
|
||||
requestType: provider_pb.InvokeRequest,
|
||||
responseType: provider_pb.InvokeResponse,
|
||||
requestSerialize: serialize_pulumirpc_InvokeRequest,
|
||||
requestDeserialize: deserialize_pulumirpc_InvokeRequest,
|
||||
responseSerialize: serialize_pulumirpc_InvokeResponse,
|
||||
responseDeserialize: deserialize_pulumirpc_InvokeResponse,
|
||||
},
|
||||
readResource: {
|
||||
path: '/pulumirpc.ResourceMonitor/ReadResource',
|
||||
requestStream: false,
|
||||
|
|
|
@ -12,8 +12,11 @@
|
|||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
const asyncify = require("callback-to-async-iterator");
|
||||
import { AsyncIterable } from "@pulumi/query/interfaces";
|
||||
import * as fs from "fs";
|
||||
import * as grpc from "grpc";
|
||||
|
||||
import * as asset from "../asset";
|
||||
import { InvokeOptions } from "../invoke";
|
||||
import * as log from "../log";
|
||||
|
@ -78,6 +81,61 @@ export function invoke(tok: string, props: Inputs, opts: InvokeOptions = {}): Pr
|
|||
return invokeSync(tok, props, opts, syncInvokes);
|
||||
}
|
||||
|
||||
export async function streamInvoke(
|
||||
tok: string,
|
||||
props: Inputs,
|
||||
opts: InvokeOptions = {},
|
||||
): Promise<StreamInvokeResponse<any>> {
|
||||
const label = `StreamInvoking function: tok=${tok} asynchronously`;
|
||||
log.debug(label + (excessiveDebugOutput ? `, props=${JSON.stringify(props)}` : ``));
|
||||
|
||||
// Wait for all values to be available, and then perform the RPC.
|
||||
const done = rpcKeepAlive();
|
||||
try {
|
||||
const serialized = await serializeProperties(`streamInvoke:${tok}`, props);
|
||||
log.debug(
|
||||
`StreamInvoke RPC prepared: tok=${tok}` + excessiveDebugOutput
|
||||
? `, obj=${JSON.stringify(serialized)}`
|
||||
: ``,
|
||||
);
|
||||
|
||||
// Fetch the monitor and make an RPC request.
|
||||
const monitor: any = getMonitor();
|
||||
|
||||
const provider = await ProviderResource.register(getProvider(tok, opts));
|
||||
const req = createInvokeRequest(tok, serialized, provider, opts);
|
||||
|
||||
// Call `streamInvoke`.
|
||||
const call = monitor.streamInvoke(req, {});
|
||||
|
||||
// Transform the callback-oriented `streamInvoke` result into a plain-old (potentially
|
||||
// infinite) `AsyncIterable`.
|
||||
const listenForWatchEvents = (callback: (obj: any) => void) => {
|
||||
return new Promise(resolve => {
|
||||
call.on("data", function(thing: any) {
|
||||
const live = deserializeResponse(tok, thing);
|
||||
callback(live);
|
||||
});
|
||||
call.on("error", (err: any) => {
|
||||
if (err.code === 1 && err.details === "Cancelled") {
|
||||
return;
|
||||
}
|
||||
throw err;
|
||||
});
|
||||
// Infinite stream, never call `resolve`.
|
||||
});
|
||||
};
|
||||
const stream: AsyncIterable<any> = asyncify.default(listenForWatchEvents);
|
||||
|
||||
// Return a cancellable handle to the stream.
|
||||
return new StreamInvokeResponse(
|
||||
stream,
|
||||
() => call.cancel());
|
||||
} finally {
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
||||
export function invokeFallbackToAsync(tok: string, props: Inputs, opts: InvokeOptions): Promise<any> {
|
||||
const asyncResult = invokeAsync(tok, props, opts);
|
||||
const syncResult = utils.promiseResult(asyncResult);
|
||||
|
@ -178,6 +236,24 @@ For more details see: https://www.pulumi.com/docs/troubleshooting/#synchronous-c
|
|||
}
|
||||
}
|
||||
|
||||
// StreamInvokeResponse represents a (potentially infinite) streaming response to `streamInvoke`,
|
||||
// with facilities to gracefully cancel and clean up the stream.
|
||||
export class StreamInvokeResponse<T> implements AsyncIterable<T> {
|
||||
constructor(
|
||||
private source: AsyncIterable<T>,
|
||||
private cancelSource: () => void,
|
||||
) {}
|
||||
|
||||
// cancel signals the `streamInvoke` should be cancelled and cleaned up gracefully.
|
||||
public cancel() {
|
||||
this.cancelSource();
|
||||
}
|
||||
|
||||
[Symbol.asyncIterator]() {
|
||||
return this.source[Symbol.asyncIterator]();
|
||||
}
|
||||
}
|
||||
|
||||
// Expose the properties of the actual result of invoke directly on the promise itself. Note this
|
||||
// doesn't actually involve any asynchrony. The promise will be created synchronously and the
|
||||
// values copied to it can be used immediately. We simply make a Promise so that any consumers that
|
||||
|
|
|
@ -57,7 +57,7 @@ func (x PropertyDiff_Kind) String() string {
|
|||
return proto.EnumName(PropertyDiff_Kind_name, int32(x))
|
||||
}
|
||||
func (PropertyDiff_Kind) EnumDescriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{9, 0}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{9, 0}
|
||||
}
|
||||
|
||||
type DiffResponse_DiffChanges int32
|
||||
|
@ -83,7 +83,7 @@ func (x DiffResponse_DiffChanges) String() string {
|
|||
return proto.EnumName(DiffResponse_DiffChanges_name, int32(x))
|
||||
}
|
||||
func (DiffResponse_DiffChanges) EnumDescriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{10, 0}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{10, 0}
|
||||
}
|
||||
|
||||
type ConfigureRequest struct {
|
||||
|
@ -99,7 +99,7 @@ func (m *ConfigureRequest) Reset() { *m = ConfigureRequest{} }
|
|||
func (m *ConfigureRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*ConfigureRequest) ProtoMessage() {}
|
||||
func (*ConfigureRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{0}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{0}
|
||||
}
|
||||
func (m *ConfigureRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ConfigureRequest.Unmarshal(m, b)
|
||||
|
@ -151,7 +151,7 @@ func (m *ConfigureResponse) Reset() { *m = ConfigureResponse{} }
|
|||
func (m *ConfigureResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*ConfigureResponse) ProtoMessage() {}
|
||||
func (*ConfigureResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{1}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{1}
|
||||
}
|
||||
func (m *ConfigureResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ConfigureResponse.Unmarshal(m, b)
|
||||
|
@ -190,7 +190,7 @@ func (m *ConfigureErrorMissingKeys) Reset() { *m = ConfigureErrorMissing
|
|||
func (m *ConfigureErrorMissingKeys) String() string { return proto.CompactTextString(m) }
|
||||
func (*ConfigureErrorMissingKeys) ProtoMessage() {}
|
||||
func (*ConfigureErrorMissingKeys) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{2}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{2}
|
||||
}
|
||||
func (m *ConfigureErrorMissingKeys) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ConfigureErrorMissingKeys.Unmarshal(m, b)
|
||||
|
@ -229,7 +229,7 @@ func (m *ConfigureErrorMissingKeys_MissingKey) Reset() { *m = ConfigureE
|
|||
func (m *ConfigureErrorMissingKeys_MissingKey) String() string { return proto.CompactTextString(m) }
|
||||
func (*ConfigureErrorMissingKeys_MissingKey) ProtoMessage() {}
|
||||
func (*ConfigureErrorMissingKeys_MissingKey) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{2, 0}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{2, 0}
|
||||
}
|
||||
func (m *ConfigureErrorMissingKeys_MissingKey) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ConfigureErrorMissingKeys_MissingKey.Unmarshal(m, b)
|
||||
|
@ -277,7 +277,7 @@ func (m *InvokeRequest) Reset() { *m = InvokeRequest{} }
|
|||
func (m *InvokeRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*InvokeRequest) ProtoMessage() {}
|
||||
func (*InvokeRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{3}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{3}
|
||||
}
|
||||
func (m *InvokeRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_InvokeRequest.Unmarshal(m, b)
|
||||
|
@ -337,7 +337,7 @@ func (m *InvokeResponse) Reset() { *m = InvokeResponse{} }
|
|||
func (m *InvokeResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*InvokeResponse) ProtoMessage() {}
|
||||
func (*InvokeResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{4}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{4}
|
||||
}
|
||||
func (m *InvokeResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_InvokeResponse.Unmarshal(m, b)
|
||||
|
@ -384,7 +384,7 @@ func (m *CheckRequest) Reset() { *m = CheckRequest{} }
|
|||
func (m *CheckRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*CheckRequest) ProtoMessage() {}
|
||||
func (*CheckRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{5}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{5}
|
||||
}
|
||||
func (m *CheckRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_CheckRequest.Unmarshal(m, b)
|
||||
|
@ -437,7 +437,7 @@ func (m *CheckResponse) Reset() { *m = CheckResponse{} }
|
|||
func (m *CheckResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*CheckResponse) ProtoMessage() {}
|
||||
func (*CheckResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{6}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{6}
|
||||
}
|
||||
func (m *CheckResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_CheckResponse.Unmarshal(m, b)
|
||||
|
@ -483,7 +483,7 @@ func (m *CheckFailure) Reset() { *m = CheckFailure{} }
|
|||
func (m *CheckFailure) String() string { return proto.CompactTextString(m) }
|
||||
func (*CheckFailure) ProtoMessage() {}
|
||||
func (*CheckFailure) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{7}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{7}
|
||||
}
|
||||
func (m *CheckFailure) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_CheckFailure.Unmarshal(m, b)
|
||||
|
@ -532,7 +532,7 @@ func (m *DiffRequest) Reset() { *m = DiffRequest{} }
|
|||
func (m *DiffRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*DiffRequest) ProtoMessage() {}
|
||||
func (*DiffRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{8}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{8}
|
||||
}
|
||||
func (m *DiffRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DiffRequest.Unmarshal(m, b)
|
||||
|
@ -599,7 +599,7 @@ func (m *PropertyDiff) Reset() { *m = PropertyDiff{} }
|
|||
func (m *PropertyDiff) String() string { return proto.CompactTextString(m) }
|
||||
func (*PropertyDiff) ProtoMessage() {}
|
||||
func (*PropertyDiff) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{9}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{9}
|
||||
}
|
||||
func (m *PropertyDiff) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_PropertyDiff.Unmarshal(m, b)
|
||||
|
@ -680,7 +680,7 @@ func (m *DiffResponse) Reset() { *m = DiffResponse{} }
|
|||
func (m *DiffResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*DiffResponse) ProtoMessage() {}
|
||||
func (*DiffResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{10}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{10}
|
||||
}
|
||||
func (m *DiffResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DiffResponse.Unmarshal(m, b)
|
||||
|
@ -762,7 +762,7 @@ func (m *CreateRequest) Reset() { *m = CreateRequest{} }
|
|||
func (m *CreateRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*CreateRequest) ProtoMessage() {}
|
||||
func (*CreateRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{11}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{11}
|
||||
}
|
||||
func (m *CreateRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_CreateRequest.Unmarshal(m, b)
|
||||
|
@ -815,7 +815,7 @@ func (m *CreateResponse) Reset() { *m = CreateResponse{} }
|
|||
func (m *CreateResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*CreateResponse) ProtoMessage() {}
|
||||
func (*CreateResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{12}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{12}
|
||||
}
|
||||
func (m *CreateResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_CreateResponse.Unmarshal(m, b)
|
||||
|
@ -863,7 +863,7 @@ func (m *ReadRequest) Reset() { *m = ReadRequest{} }
|
|||
func (m *ReadRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReadRequest) ProtoMessage() {}
|
||||
func (*ReadRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{13}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{13}
|
||||
}
|
||||
func (m *ReadRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ReadRequest.Unmarshal(m, b)
|
||||
|
@ -924,7 +924,7 @@ func (m *ReadResponse) Reset() { *m = ReadResponse{} }
|
|||
func (m *ReadResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReadResponse) ProtoMessage() {}
|
||||
func (*ReadResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{14}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{14}
|
||||
}
|
||||
func (m *ReadResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ReadResponse.Unmarshal(m, b)
|
||||
|
@ -981,7 +981,7 @@ func (m *UpdateRequest) Reset() { *m = UpdateRequest{} }
|
|||
func (m *UpdateRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*UpdateRequest) ProtoMessage() {}
|
||||
func (*UpdateRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{15}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{15}
|
||||
}
|
||||
func (m *UpdateRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_UpdateRequest.Unmarshal(m, b)
|
||||
|
@ -1054,7 +1054,7 @@ func (m *UpdateResponse) Reset() { *m = UpdateResponse{} }
|
|||
func (m *UpdateResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*UpdateResponse) ProtoMessage() {}
|
||||
func (*UpdateResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{16}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{16}
|
||||
}
|
||||
func (m *UpdateResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_UpdateResponse.Unmarshal(m, b)
|
||||
|
@ -1095,7 +1095,7 @@ func (m *DeleteRequest) Reset() { *m = DeleteRequest{} }
|
|||
func (m *DeleteRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*DeleteRequest) ProtoMessage() {}
|
||||
func (*DeleteRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{17}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{17}
|
||||
}
|
||||
func (m *DeleteRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DeleteRequest.Unmarshal(m, b)
|
||||
|
@ -1159,7 +1159,7 @@ func (m *ErrorResourceInitFailed) Reset() { *m = ErrorResourceInitFailed
|
|||
func (m *ErrorResourceInitFailed) String() string { return proto.CompactTextString(m) }
|
||||
func (*ErrorResourceInitFailed) ProtoMessage() {}
|
||||
func (*ErrorResourceInitFailed) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_provider_31a5eda36dbe30f0, []int{18}
|
||||
return fileDescriptor_provider_766486f54fa2871e, []int{18}
|
||||
}
|
||||
func (m *ErrorResourceInitFailed) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ErrorResourceInitFailed.Unmarshal(m, b)
|
||||
|
@ -1253,6 +1253,9 @@ type ResourceProviderClient interface {
|
|||
Configure(ctx context.Context, in *ConfigureRequest, opts ...grpc.CallOption) (*ConfigureResponse, error)
|
||||
// Invoke dynamically executes a built-in function in the provider.
|
||||
Invoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (*InvokeResponse, error)
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
// of responses.
|
||||
StreamInvoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (ResourceProvider_StreamInvokeClient, error)
|
||||
// Check validates that the given property bag is valid for a resource of the given type and returns the inputs
|
||||
// that should be passed to successive calls to Diff, Create, or Update for this resource. As a rule, the provider
|
||||
// inputs returned by a call to Check should preserve the original representation of the properties as present in
|
||||
|
@ -1321,6 +1324,38 @@ func (c *resourceProviderClient) Invoke(ctx context.Context, in *InvokeRequest,
|
|||
return out, nil
|
||||
}
|
||||
|
||||
func (c *resourceProviderClient) StreamInvoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (ResourceProvider_StreamInvokeClient, error) {
|
||||
stream, err := grpc.NewClientStream(ctx, &_ResourceProvider_serviceDesc.Streams[0], c.cc, "/pulumirpc.ResourceProvider/StreamInvoke", opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
x := &resourceProviderStreamInvokeClient{stream}
|
||||
if err := x.ClientStream.SendMsg(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := x.ClientStream.CloseSend(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return x, nil
|
||||
}
|
||||
|
||||
type ResourceProvider_StreamInvokeClient interface {
|
||||
Recv() (*InvokeResponse, error)
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
type resourceProviderStreamInvokeClient struct {
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
func (x *resourceProviderStreamInvokeClient) Recv() (*InvokeResponse, error) {
|
||||
m := new(InvokeResponse)
|
||||
if err := x.ClientStream.RecvMsg(m); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return m, nil
|
||||
}
|
||||
|
||||
func (c *resourceProviderClient) Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error) {
|
||||
out := new(CheckResponse)
|
||||
err := grpc.Invoke(ctx, "/pulumirpc.ResourceProvider/Check", in, out, c.cc, opts...)
|
||||
|
@ -1404,6 +1439,9 @@ type ResourceProviderServer interface {
|
|||
Configure(context.Context, *ConfigureRequest) (*ConfigureResponse, error)
|
||||
// Invoke dynamically executes a built-in function in the provider.
|
||||
Invoke(context.Context, *InvokeRequest) (*InvokeResponse, error)
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
// of responses.
|
||||
StreamInvoke(*InvokeRequest, ResourceProvider_StreamInvokeServer) error
|
||||
// Check validates that the given property bag is valid for a resource of the given type and returns the inputs
|
||||
// that should be passed to successive calls to Diff, Create, or Update for this resource. As a rule, the provider
|
||||
// inputs returned by a call to Check should preserve the original representation of the properties as present in
|
||||
|
@ -1504,6 +1542,27 @@ func _ResourceProvider_Invoke_Handler(srv interface{}, ctx context.Context, dec
|
|||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _ResourceProvider_StreamInvoke_Handler(srv interface{}, stream grpc.ServerStream) error {
|
||||
m := new(InvokeRequest)
|
||||
if err := stream.RecvMsg(m); err != nil {
|
||||
return err
|
||||
}
|
||||
return srv.(ResourceProviderServer).StreamInvoke(m, &resourceProviderStreamInvokeServer{stream})
|
||||
}
|
||||
|
||||
type ResourceProvider_StreamInvokeServer interface {
|
||||
Send(*InvokeResponse) error
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
type resourceProviderStreamInvokeServer struct {
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
func (x *resourceProviderStreamInvokeServer) Send(m *InvokeResponse) error {
|
||||
return x.ServerStream.SendMsg(m)
|
||||
}
|
||||
|
||||
func _ResourceProvider_Check_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(CheckRequest)
|
||||
if err := dec(in); err != nil {
|
||||
|
@ -1701,88 +1760,95 @@ var _ResourceProvider_serviceDesc = grpc.ServiceDesc{
|
|||
Handler: _ResourceProvider_GetPluginInfo_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{},
|
||||
Streams: []grpc.StreamDesc{
|
||||
{
|
||||
StreamName: "StreamInvoke",
|
||||
Handler: _ResourceProvider_StreamInvoke_Handler,
|
||||
ServerStreams: true,
|
||||
},
|
||||
},
|
||||
Metadata: "provider.proto",
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("provider.proto", fileDescriptor_provider_31a5eda36dbe30f0) }
|
||||
func init() { proto.RegisterFile("provider.proto", fileDescriptor_provider_766486f54fa2871e) }
|
||||
|
||||
var fileDescriptor_provider_31a5eda36dbe30f0 = []byte{
|
||||
// 1207 bytes of a gzipped FileDescriptorProto
|
||||
var fileDescriptor_provider_766486f54fa2871e = []byte{
|
||||
// 1221 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xc4, 0x57, 0xcd, 0x72, 0x1b, 0xc5,
|
||||
0x13, 0xd7, 0x6a, 0x65, 0xd9, 0x6a, 0x7d, 0x44, 0x99, 0xff, 0x1f, 0x5b, 0x51, 0x7c, 0x50, 0x2d,
|
||||
0x1c, 0x04, 0x14, 0x72, 0xca, 0x39, 0x40, 0x52, 0x49, 0x05, 0xdb, 0x92, 0xc1, 0xe5, 0xf8, 0x83,
|
||||
0x75, 0xcc, 0xc7, 0x29, 0xac, 0xb5, 0x23, 0x79, 0x4a, 0xf2, 0xee, 0x32, 0x3b, 0x2b, 0xca, 0x9c,
|
||||
0x39, 0xf0, 0x00, 0x5c, 0x78, 0x08, 0x8a, 0x2a, 0x9e, 0x80, 0x3b, 0xcf, 0xc0, 0x23, 0xf0, 0x0e,
|
||||
0xd4, 0x7c, 0xec, 0x6a, 0xc6, 0x92, 0x1d, 0xd9, 0x95, 0x82, 0xdb, 0xf4, 0x74, 0xcf, 0x74, 0xf7,
|
||||
0x6f, 0xba, 0x7f, 0x33, 0x03, 0xb5, 0x88, 0x86, 0x13, 0xe2, 0x63, 0xda, 0x89, 0x68, 0xc8, 0x42,
|
||||
0x54, 0x8a, 0x92, 0x71, 0x72, 0x41, 0x68, 0xd4, 0x6f, 0x56, 0xa2, 0x71, 0x32, 0x24, 0x81, 0x54,
|
||||
0x34, 0x1f, 0x0e, 0xc3, 0x70, 0x38, 0xc6, 0x1b, 0x42, 0x3a, 0x4b, 0x06, 0x1b, 0xf8, 0x22, 0x62,
|
||||
0x97, 0x4a, 0xb9, 0x7e, 0x55, 0x19, 0x33, 0x9a, 0xf4, 0x99, 0xd4, 0x3a, 0x7f, 0x5b, 0x50, 0xdf,
|
||||
0x09, 0x83, 0x01, 0x19, 0x26, 0x14, 0xbb, 0xf8, 0xbb, 0x04, 0xc7, 0x0c, 0x7d, 0x0e, 0xa5, 0x89,
|
||||
0x47, 0x89, 0x77, 0x36, 0xc6, 0x71, 0xc3, 0x6a, 0xd9, 0xed, 0xf2, 0xe6, 0x07, 0x9d, 0xcc, 0x79,
|
||||
0xe7, 0xaa, 0x7d, 0xe7, 0xcb, 0xd4, 0xb8, 0x17, 0x30, 0x7a, 0xe9, 0x4e, 0x17, 0xa3, 0x0f, 0xa1,
|
||||
0xe0, 0xd1, 0x61, 0xdc, 0xc8, 0xb7, 0xac, 0x76, 0x79, 0x73, 0xad, 0x23, 0x63, 0xe9, 0xa4, 0xb1,
|
||||
0x74, 0x4e, 0x44, 0x2c, 0xae, 0x30, 0x42, 0xef, 0x41, 0xd5, 0xeb, 0xf7, 0x71, 0xc4, 0x4e, 0x70,
|
||||
0x9f, 0x62, 0x16, 0x37, 0xec, 0x96, 0xd5, 0x5e, 0x71, 0xcd, 0xc9, 0xe6, 0x33, 0xa8, 0x99, 0xfe,
|
||||
0x50, 0x1d, 0xec, 0x11, 0xbe, 0x6c, 0x58, 0x2d, 0xab, 0x5d, 0x72, 0xf9, 0x10, 0xfd, 0x1f, 0x96,
|
||||
0x26, 0xde, 0x38, 0xc1, 0xc2, 0x6f, 0xc9, 0x95, 0xc2, 0xd3, 0xfc, 0x27, 0x96, 0xf3, 0x04, 0xee,
|
||||
0x6b, 0xe1, 0xc7, 0x51, 0x18, 0xc4, 0x78, 0xd6, 0xb1, 0x35, 0xc7, 0xb1, 0xf3, 0xbb, 0x05, 0x0f,
|
||||
0xb2, 0xb5, 0x3d, 0x4a, 0x43, 0x7a, 0x40, 0xe2, 0x98, 0x04, 0xc3, 0x7d, 0x7c, 0x19, 0xa3, 0x2f,
|
||||
0xa0, 0x7c, 0x31, 0x15, 0x15, 0x6a, 0x1b, 0xf3, 0x50, 0xbb, 0xba, 0xb4, 0x33, 0x1d, 0xbb, 0xfa,
|
||||
0x1e, 0xcd, 0x6d, 0x80, 0xa9, 0x0a, 0x21, 0x28, 0x04, 0xde, 0x05, 0x56, 0x69, 0x8a, 0x31, 0x6a,
|
||||
0x41, 0xd9, 0xc7, 0x71, 0x9f, 0x92, 0x88, 0x91, 0x30, 0x50, 0xd9, 0xea, 0x53, 0xce, 0x8f, 0x16,
|
||||
0x54, 0xf7, 0x82, 0x49, 0x38, 0xca, 0x0e, 0xb7, 0x0e, 0x36, 0x0b, 0x47, 0x29, 0x5a, 0x2c, 0x1c,
|
||||
0xdd, 0xee, 0x90, 0x9a, 0xb0, 0x92, 0x96, 0xa5, 0x38, 0x9f, 0x92, 0x9b, 0xc9, 0xa8, 0x01, 0xcb,
|
||||
0x13, 0x4c, 0x63, 0x1e, 0x4a, 0x41, 0xa8, 0x52, 0xd1, 0x99, 0x40, 0x2d, 0x8d, 0x42, 0x61, 0xbe,
|
||||
0x01, 0x45, 0x8a, 0x59, 0x42, 0x03, 0x11, 0xc9, 0x0d, 0x6e, 0x95, 0x19, 0x7a, 0x0c, 0x2b, 0x03,
|
||||
0x8f, 0x8c, 0x13, 0x8a, 0x79, 0xa4, 0xb6, 0x58, 0xa2, 0xa1, 0x7b, 0x8e, 0xfb, 0xa3, 0x5d, 0xa9,
|
||||
0x77, 0x33, 0x43, 0xe7, 0x07, 0xa8, 0x08, 0x8d, 0x96, 0x7c, 0xea, 0xb2, 0xe4, 0xf2, 0x21, 0x4f,
|
||||
0x3e, 0x1c, 0xfb, 0x6f, 0x4e, 0x9e, 0x1b, 0x71, 0xe3, 0x00, 0x7f, 0x2f, 0x0b, 0xf3, 0x26, 0x63,
|
||||
0x6e, 0xe4, 0x24, 0x50, 0x55, 0xbe, 0xa7, 0x29, 0x93, 0x20, 0x4a, 0x54, 0x7d, 0xdd, 0x94, 0xb2,
|
||||
0x34, 0xbb, 0x5b, 0xca, 0xdb, 0x2a, 0x65, 0xa5, 0x51, 0x07, 0x16, 0x61, 0xca, 0xd2, 0x16, 0xc9,
|
||||
0x64, 0xb4, 0xca, 0x0f, 0xc1, 0x8b, 0xb3, 0xd2, 0x51, 0x92, 0xf3, 0x9b, 0x05, 0xe5, 0x2e, 0x19,
|
||||
0x0c, 0x52, 0xd8, 0x6a, 0x90, 0x27, 0xbe, 0x5a, 0x9d, 0x27, 0x7e, 0x0a, 0x63, 0x7e, 0x16, 0x46,
|
||||
0xfb, 0x36, 0x30, 0x16, 0x16, 0x80, 0x91, 0x37, 0x27, 0x19, 0x06, 0x21, 0xc5, 0x3b, 0xe7, 0x5e,
|
||||
0x30, 0xc4, 0x71, 0x63, 0xa9, 0x65, 0xb7, 0x4b, 0xae, 0x39, 0xe9, 0xfc, 0x61, 0x41, 0xe5, 0x58,
|
||||
0xa5, 0xc5, 0x23, 0x47, 0x8f, 0xa0, 0x30, 0x22, 0x81, 0x0c, 0xba, 0xb6, 0xb9, 0xae, 0xe1, 0xa6,
|
||||
0x9b, 0x75, 0xf6, 0x49, 0xe0, 0xbb, 0xc2, 0x12, 0xad, 0x43, 0x49, 0xe0, 0xce, 0xe7, 0x45, 0x6a,
|
||||
0x2b, 0xee, 0x74, 0xc2, 0xf9, 0x16, 0x0a, 0xdc, 0x16, 0x2d, 0x83, 0xbd, 0xd5, 0xed, 0xd6, 0x73,
|
||||
0xe8, 0x1e, 0x94, 0xb7, 0xba, 0xdd, 0xd7, 0x6e, 0xef, 0xf8, 0xe5, 0xd6, 0x4e, 0xaf, 0x6e, 0x21,
|
||||
0x80, 0x62, 0xb7, 0xf7, 0xb2, 0xf7, 0xaa, 0x57, 0xcf, 0x23, 0x04, 0x35, 0x39, 0xce, 0xf4, 0x36,
|
||||
0xd7, 0x9f, 0x1e, 0x77, 0xb7, 0x5e, 0xf5, 0xea, 0x05, 0xae, 0x97, 0xe3, 0x4c, 0xbf, 0xe4, 0xfc,
|
||||
0x65, 0x43, 0x45, 0x82, 0xae, 0xea, 0xa5, 0x09, 0x2b, 0x14, 0x47, 0x63, 0xaf, 0xaf, 0x58, 0xb8,
|
||||
0xe4, 0x66, 0x32, 0x6f, 0xb5, 0x98, 0x49, 0x82, 0xce, 0x0b, 0x55, 0x2a, 0xa2, 0x47, 0xf0, 0x3f,
|
||||
0x1f, 0x8f, 0x31, 0xc3, 0xdb, 0x78, 0x10, 0x72, 0x92, 0x13, 0x2b, 0x14, 0x97, 0xce, 0x53, 0xa1,
|
||||
0xe7, 0xb0, 0xdc, 0x57, 0xd8, 0x16, 0x04, 0x5a, 0xef, 0x6a, 0x68, 0xe9, 0x11, 0x09, 0x41, 0x21,
|
||||
0xee, 0xa6, 0x6b, 0x38, 0xd9, 0xfa, 0x64, 0x30, 0x48, 0x0f, 0x46, 0x0a, 0xe8, 0x00, 0x2a, 0x3e,
|
||||
0x66, 0x1e, 0x19, 0x63, 0x5f, 0x00, 0x5a, 0x14, 0xf5, 0xfb, 0xfe, 0xb5, 0x3b, 0x6b, 0xb6, 0xf2,
|
||||
0x16, 0x31, 0x96, 0xa3, 0x36, 0xdc, 0x3b, 0xf7, 0x62, 0xdd, 0xaa, 0xb1, 0x2c, 0x32, 0xba, 0x3a,
|
||||
0xdd, 0xfc, 0x1a, 0xee, 0xcf, 0x6c, 0x36, 0xe7, 0x8a, 0xf8, 0x48, 0xbf, 0x22, 0xcc, 0xc6, 0xd2,
|
||||
0x0b, 0x44, 0xbf, 0x3b, 0x9e, 0xcb, 0xa6, 0x50, 0x00, 0xa0, 0x3a, 0x54, 0xba, 0x7b, 0xbb, 0xbb,
|
||||
0xaf, 0x4f, 0x0f, 0xf7, 0x0f, 0x8f, 0xbe, 0x3a, 0xac, 0xe7, 0x50, 0x15, 0x4a, 0x62, 0xe6, 0xf0,
|
||||
0xe8, 0x90, 0x17, 0x44, 0x2a, 0x9e, 0x1c, 0x1d, 0xf4, 0xea, 0x79, 0x87, 0x41, 0x75, 0x87, 0x62,
|
||||
0x8f, 0xe1, 0xeb, 0xc9, 0xe8, 0x63, 0x00, 0xd5, 0x9b, 0x04, 0xbf, 0x91, 0x92, 0x34, 0x53, 0x5e,
|
||||
0x0e, 0x8c, 0x5c, 0xe0, 0x30, 0x61, 0xe2, 0xa0, 0x2d, 0x37, 0x15, 0x9d, 0x6f, 0xa0, 0x96, 0x7a,
|
||||
0x55, 0x65, 0x75, 0xb5, 0x99, 0xef, 0xea, 0xd4, 0xf9, 0xc5, 0x82, 0xb2, 0x8b, 0x3d, 0x7f, 0x71,
|
||||
0x96, 0x30, 0x5d, 0xd9, 0x8b, 0xe7, 0x37, 0xa5, 0xce, 0xc2, 0x42, 0xd4, 0xe9, 0xfc, 0x64, 0x41,
|
||||
0x45, 0xc6, 0xf6, 0x96, 0xb3, 0xd6, 0x42, 0xb1, 0x17, 0x0b, 0xe5, 0x4f, 0x0b, 0xaa, 0xa7, 0x91,
|
||||
0xaf, 0x1d, 0xfc, 0x7f, 0x49, 0xa7, 0x5a, 0xa5, 0x2c, 0x19, 0x95, 0x32, 0x4b, 0xb4, 0xc5, 0x79,
|
||||
0x44, 0xbb, 0x07, 0xb5, 0x34, 0x19, 0x85, 0xac, 0x89, 0xa4, 0xb5, 0x78, 0xfd, 0xf0, 0xb7, 0x49,
|
||||
0x57, 0xf0, 0xd1, 0xbf, 0x50, 0x41, 0x5a, 0xde, 0x05, 0xb3, 0x43, 0x7e, 0xb5, 0x60, 0x4d, 0xbc,
|
||||
0xc9, 0x5c, 0x1c, 0x87, 0x09, 0xed, 0xe3, 0xbd, 0x80, 0xb0, 0x5d, 0x41, 0x20, 0x6f, 0xaf, 0x6a,
|
||||
0x1a, 0xb0, 0x2c, 0xef, 0x56, 0x1e, 0xb4, 0xe0, 0x6b, 0x25, 0xde, 0xba, 0xb4, 0x37, 0x7f, 0x2e,
|
||||
0x42, 0x3d, 0x0d, 0xf5, 0x38, 0x7d, 0x7a, 0x6d, 0x43, 0x59, 0xdc, 0xfa, 0xf2, 0x95, 0x89, 0x66,
|
||||
0xde, 0x09, 0x0a, 0xe1, 0x66, 0x63, 0x56, 0x21, 0x8f, 0xd1, 0xc9, 0xa1, 0x17, 0x00, 0x82, 0xdf,
|
||||
0xe4, 0x16, 0xab, 0x33, 0x54, 0x2d, 0x77, 0x58, 0xbb, 0x86, 0xc2, 0x9d, 0x1c, 0xff, 0x37, 0x64,
|
||||
0xaf, 0x5c, 0xf4, 0xf0, 0x86, 0x1f, 0x43, 0x73, 0x7d, 0xbe, 0x52, 0x0b, 0xa5, 0x28, 0xdf, 0x8b,
|
||||
0x48, 0x0f, 0xd8, 0x78, 0xc8, 0x36, 0x1f, 0xcc, 0xd1, 0x64, 0x1b, 0x3c, 0x83, 0x25, 0x91, 0xde,
|
||||
0xdd, 0x90, 0x78, 0x02, 0x05, 0x71, 0xeb, 0xdc, 0x01, 0x83, 0x17, 0x50, 0x94, 0x7c, 0x6b, 0x44,
|
||||
0x6e, 0x10, 0xbf, 0x11, 0xb9, 0x49, 0xce, 0xd2, 0x37, 0x27, 0x2e, 0xc3, 0xb7, 0xc6, 0xb2, 0x86,
|
||||
0x6f, 0x9d, 0xe1, 0xa4, 0x6f, 0xd9, 0x9b, 0x86, 0x6f, 0x83, 0x7b, 0x0c, 0xdf, 0x66, 0x23, 0x0b,
|
||||
0xd4, 0x8a, 0xb2, 0x21, 0x8d, 0x0d, 0x8c, 0x1e, 0x6d, 0xae, 0xce, 0xd4, 0x67, 0x8f, 0xff, 0x36,
|
||||
0x9d, 0x1c, 0x7a, 0x0a, 0xc5, 0x1d, 0x2f, 0xe8, 0xe3, 0x31, 0xba, 0xc6, 0xe6, 0x86, 0xb5, 0x9f,
|
||||
0x42, 0xf5, 0x33, 0xcc, 0x8e, 0xc5, 0xaf, 0x76, 0x2f, 0x18, 0x84, 0xd7, 0x6e, 0xf1, 0x8e, 0x7e,
|
||||
0x51, 0x67, 0xe6, 0x4e, 0xee, 0xac, 0x28, 0x0c, 0x1f, 0xff, 0x13, 0x00, 0x00, 0xff, 0xff, 0x37,
|
||||
0xd1, 0x77, 0xc4, 0x36, 0x0f, 0x00, 0x00,
|
||||
0x13, 0xd7, 0x6a, 0x65, 0xd9, 0x6a, 0x7d, 0x44, 0x99, 0xff, 0x9f, 0x58, 0x51, 0x7c, 0x50, 0x2d,
|
||||
0x1c, 0x04, 0x14, 0xb2, 0xcb, 0x39, 0x40, 0x52, 0x4e, 0x05, 0xdb, 0x92, 0x83, 0xcb, 0xf1, 0x07,
|
||||
0xeb, 0x98, 0x8f, 0x53, 0x58, 0x6b, 0x47, 0xf2, 0x96, 0x56, 0xbb, 0xcb, 0xec, 0xac, 0x28, 0x73,
|
||||
0xe6, 0xc0, 0x2b, 0xf0, 0x10, 0x14, 0x55, 0x3c, 0x01, 0x77, 0x9e, 0x21, 0x8f, 0xc0, 0x3b, 0x50,
|
||||
0xf3, 0xb1, 0xab, 0x19, 0x4b, 0x76, 0x64, 0x93, 0x82, 0xdb, 0xf4, 0x74, 0xcf, 0x74, 0xf7, 0x6f,
|
||||
0xba, 0x7f, 0x33, 0x03, 0xb5, 0x88, 0x84, 0x13, 0xcf, 0xc5, 0xa4, 0x13, 0x91, 0x90, 0x86, 0xa8,
|
||||
0x14, 0x25, 0x7e, 0x32, 0xf6, 0x48, 0xd4, 0x6f, 0x56, 0x22, 0x3f, 0x19, 0x7a, 0x81, 0x50, 0x34,
|
||||
0x1f, 0x0d, 0xc3, 0x70, 0xe8, 0xe3, 0x75, 0x2e, 0x9d, 0x27, 0x83, 0x75, 0x3c, 0x8e, 0xe8, 0xa5,
|
||||
0x54, 0xae, 0x5d, 0x55, 0xc6, 0x94, 0x24, 0x7d, 0x2a, 0xb4, 0xd6, 0x5f, 0x06, 0xd4, 0x77, 0xc3,
|
||||
0x60, 0xe0, 0x0d, 0x13, 0x82, 0x6d, 0xfc, 0x7d, 0x82, 0x63, 0x8a, 0xbe, 0x80, 0xd2, 0xc4, 0x21,
|
||||
0x9e, 0x73, 0xee, 0xe3, 0xb8, 0x61, 0xb4, 0xcc, 0x76, 0x79, 0xf3, 0xa3, 0x4e, 0xe6, 0xbc, 0x73,
|
||||
0xd5, 0xbe, 0xf3, 0x55, 0x6a, 0xdc, 0x0b, 0x28, 0xb9, 0xb4, 0xa7, 0x8b, 0xd1, 0xc7, 0x50, 0x70,
|
||||
0xc8, 0x30, 0x6e, 0xe4, 0x5b, 0x46, 0xbb, 0xbc, 0xb9, 0xda, 0x11, 0xb1, 0x74, 0xd2, 0x58, 0x3a,
|
||||
0xa7, 0x3c, 0x16, 0x9b, 0x1b, 0xa1, 0x0f, 0xa0, 0xea, 0xf4, 0xfb, 0x38, 0xa2, 0xa7, 0xb8, 0x4f,
|
||||
0x30, 0x8d, 0x1b, 0x66, 0xcb, 0x68, 0xaf, 0xd8, 0xfa, 0x64, 0x73, 0x0b, 0x6a, 0xba, 0x3f, 0x54,
|
||||
0x07, 0x73, 0x84, 0x2f, 0x1b, 0x46, 0xcb, 0x68, 0x97, 0x6c, 0x36, 0x44, 0xff, 0x87, 0xa5, 0x89,
|
||||
0xe3, 0x27, 0x98, 0xfb, 0x2d, 0xd9, 0x42, 0x78, 0x9a, 0xff, 0xcc, 0xb0, 0x9e, 0xc0, 0x7d, 0x25,
|
||||
0xfc, 0x38, 0x0a, 0x83, 0x18, 0xcf, 0x3a, 0x36, 0xe6, 0x38, 0xb6, 0x7e, 0x37, 0xe0, 0x61, 0xb6,
|
||||
0xb6, 0x47, 0x48, 0x48, 0x0e, 0xbd, 0x38, 0xf6, 0x82, 0xe1, 0x01, 0xbe, 0x8c, 0xd1, 0x97, 0x50,
|
||||
0x1e, 0x4f, 0x45, 0x89, 0xda, 0xfa, 0x3c, 0xd4, 0xae, 0x2e, 0xed, 0x4c, 0xc7, 0xb6, 0xba, 0x47,
|
||||
0x73, 0x07, 0x60, 0xaa, 0x42, 0x08, 0x0a, 0x81, 0x33, 0xc6, 0x32, 0x4d, 0x3e, 0x46, 0x2d, 0x28,
|
||||
0xbb, 0x38, 0xee, 0x13, 0x2f, 0xa2, 0x5e, 0x18, 0xc8, 0x6c, 0xd5, 0x29, 0xeb, 0x27, 0x03, 0xaa,
|
||||
0xfb, 0xc1, 0x24, 0x1c, 0x65, 0x87, 0x5b, 0x07, 0x93, 0x86, 0xa3, 0x14, 0x2d, 0x1a, 0x8e, 0x6e,
|
||||
0x77, 0x48, 0x4d, 0x58, 0x49, 0xcb, 0x92, 0x9f, 0x4f, 0xc9, 0xce, 0x64, 0xd4, 0x80, 0xe5, 0x09,
|
||||
0x26, 0x31, 0x0b, 0xa5, 0xc0, 0x55, 0xa9, 0x68, 0x4d, 0xa0, 0x96, 0x46, 0x21, 0x31, 0x5f, 0x87,
|
||||
0x22, 0xc1, 0x34, 0x21, 0x01, 0x8f, 0xe4, 0x06, 0xb7, 0xd2, 0x0c, 0x3d, 0x86, 0x95, 0x81, 0xe3,
|
||||
0xf9, 0x09, 0xc1, 0x2c, 0x52, 0x93, 0x2f, 0x51, 0xd0, 0xbd, 0xc0, 0xfd, 0xd1, 0x9e, 0xd0, 0xdb,
|
||||
0x99, 0xa1, 0xf5, 0x23, 0x54, 0xb8, 0x46, 0x49, 0x3e, 0x75, 0x59, 0xb2, 0xd9, 0x90, 0x25, 0x1f,
|
||||
0xfa, 0xee, 0xdb, 0x93, 0x67, 0x46, 0xcc, 0x38, 0xc0, 0x3f, 0x88, 0xc2, 0xbc, 0xc9, 0x98, 0x19,
|
||||
0x59, 0x09, 0x54, 0xa5, 0xef, 0x69, 0xca, 0x5e, 0x10, 0x25, 0xb2, 0xbe, 0x6e, 0x4a, 0x59, 0x98,
|
||||
0xdd, 0x2d, 0xe5, 0x1d, 0x99, 0xb2, 0xd4, 0xc8, 0x03, 0x8b, 0x30, 0xa1, 0x69, 0x8b, 0x64, 0x32,
|
||||
0x7a, 0xc0, 0x0e, 0xc1, 0x89, 0xb3, 0xd2, 0x91, 0x92, 0xf5, 0x9b, 0x01, 0xe5, 0xae, 0x37, 0x18,
|
||||
0xa4, 0xb0, 0xd5, 0x20, 0xef, 0xb9, 0x72, 0x75, 0xde, 0x73, 0x53, 0x18, 0xf3, 0xb3, 0x30, 0x9a,
|
||||
0xb7, 0x81, 0xb1, 0xb0, 0x00, 0x8c, 0xac, 0x39, 0xbd, 0x61, 0x10, 0x12, 0xbc, 0x7b, 0xe1, 0x04,
|
||||
0x43, 0x1c, 0x37, 0x96, 0x5a, 0x66, 0xbb, 0x64, 0xeb, 0x93, 0xd6, 0x1f, 0x06, 0x54, 0x4e, 0x64,
|
||||
0x5a, 0x2c, 0x72, 0xb4, 0x01, 0x85, 0x91, 0x17, 0x88, 0xa0, 0x6b, 0x9b, 0x6b, 0x0a, 0x6e, 0xaa,
|
||||
0x59, 0xe7, 0xc0, 0x0b, 0x5c, 0x9b, 0x5b, 0xa2, 0x35, 0x28, 0x71, 0xdc, 0xd9, 0x3c, 0x4f, 0x6d,
|
||||
0xc5, 0x9e, 0x4e, 0x58, 0xdf, 0x41, 0x81, 0xd9, 0xa2, 0x65, 0x30, 0xb7, 0xbb, 0xdd, 0x7a, 0x0e,
|
||||
0xdd, 0x83, 0xf2, 0x76, 0xb7, 0xfb, 0xda, 0xee, 0x9d, 0xbc, 0xdc, 0xde, 0xed, 0xd5, 0x0d, 0x04,
|
||||
0x50, 0xec, 0xf6, 0x5e, 0xf6, 0x5e, 0xf5, 0xea, 0x79, 0x84, 0xa0, 0x26, 0xc6, 0x99, 0xde, 0x64,
|
||||
0xfa, 0xb3, 0x93, 0xee, 0xf6, 0xab, 0x5e, 0xbd, 0xc0, 0xf4, 0x62, 0x9c, 0xe9, 0x97, 0xac, 0x37,
|
||||
0x26, 0x54, 0x04, 0xe8, 0xb2, 0x5e, 0x9a, 0xb0, 0x42, 0x70, 0xe4, 0x3b, 0x7d, 0xc9, 0xc2, 0x25,
|
||||
0x3b, 0x93, 0x59, 0xab, 0xc5, 0x54, 0x10, 0x74, 0x9e, 0xab, 0x52, 0x11, 0x6d, 0xc0, 0xff, 0x5c,
|
||||
0xec, 0x63, 0x8a, 0x77, 0xf0, 0x20, 0x64, 0x24, 0xc7, 0x57, 0x48, 0x2e, 0x9d, 0xa7, 0x42, 0xcf,
|
||||
0x60, 0xb9, 0x2f, 0xb1, 0x2d, 0x70, 0xb4, 0xde, 0x57, 0xd0, 0x52, 0x23, 0xe2, 0x82, 0x44, 0xdc,
|
||||
0x4e, 0xd7, 0x30, 0xb2, 0x75, 0xbd, 0xc1, 0x20, 0x3d, 0x18, 0x21, 0xa0, 0x43, 0xa8, 0xb8, 0x98,
|
||||
0x3a, 0x9e, 0x8f, 0x5d, 0x0e, 0x68, 0x91, 0xd7, 0xef, 0x87, 0xd7, 0xee, 0xac, 0xd8, 0x8a, 0x5b,
|
||||
0x44, 0x5b, 0x8e, 0xda, 0x70, 0xef, 0xc2, 0x89, 0x55, 0xab, 0xc6, 0x32, 0xcf, 0xe8, 0xea, 0x74,
|
||||
0xf3, 0x1b, 0xb8, 0x3f, 0xb3, 0xd9, 0x9c, 0x2b, 0xe2, 0x13, 0xf5, 0x8a, 0xd0, 0x1b, 0x4b, 0x2d,
|
||||
0x10, 0xf5, 0xee, 0x78, 0x26, 0x9a, 0x42, 0x02, 0x80, 0xea, 0x50, 0xe9, 0xee, 0xef, 0xed, 0xbd,
|
||||
0x3e, 0x3b, 0x3a, 0x38, 0x3a, 0xfe, 0xfa, 0xa8, 0x9e, 0x43, 0x55, 0x28, 0xf1, 0x99, 0xa3, 0xe3,
|
||||
0x23, 0x56, 0x10, 0xa9, 0x78, 0x7a, 0x7c, 0xd8, 0xab, 0xe7, 0x2d, 0x0a, 0xd5, 0x5d, 0x82, 0x1d,
|
||||
0x8a, 0xaf, 0x27, 0xa3, 0x4f, 0x01, 0x64, 0x6f, 0x7a, 0xf8, 0xad, 0x94, 0xa4, 0x98, 0xb2, 0x72,
|
||||
0xa0, 0xde, 0x18, 0x87, 0x09, 0xe5, 0x07, 0x6d, 0xd8, 0xa9, 0x68, 0x7d, 0x0b, 0xb5, 0xd4, 0xab,
|
||||
0x2c, 0xab, 0xab, 0xcd, 0x7c, 0x57, 0xa7, 0xd6, 0x2f, 0x06, 0x94, 0x6d, 0xec, 0xb8, 0x8b, 0xb3,
|
||||
0x84, 0xee, 0xca, 0x5c, 0x3c, 0xbf, 0x29, 0x75, 0x16, 0x16, 0xa2, 0x4e, 0xeb, 0x67, 0x03, 0x2a,
|
||||
0x22, 0xb6, 0x77, 0x9c, 0xb5, 0x12, 0x8a, 0xb9, 0x58, 0x28, 0x7f, 0x1a, 0x50, 0x3d, 0x8b, 0x5c,
|
||||
0xe5, 0xe0, 0xff, 0x4b, 0x3a, 0x55, 0x2a, 0x65, 0x49, 0xab, 0x94, 0x59, 0xa2, 0x2d, 0xce, 0x23,
|
||||
0xda, 0x7d, 0xa8, 0xa5, 0xc9, 0x48, 0x64, 0x75, 0x24, 0x8d, 0xc5, 0xeb, 0x87, 0xbd, 0x4d, 0xba,
|
||||
0x9c, 0x8f, 0xfe, 0x85, 0x0a, 0x52, 0xf2, 0x2e, 0xe8, 0x1d, 0xf2, 0xab, 0x01, 0xab, 0xfc, 0x4d,
|
||||
0x66, 0xe3, 0x38, 0x4c, 0x48, 0x1f, 0xef, 0x07, 0x1e, 0xdd, 0xe3, 0x04, 0xf2, 0xee, 0xaa, 0xa6,
|
||||
0x01, 0xcb, 0xe2, 0x6e, 0x65, 0x41, 0x73, 0xbe, 0x96, 0xe2, 0xad, 0x4b, 0x7b, 0xf3, 0x4d, 0x11,
|
||||
0xea, 0x69, 0xa8, 0x27, 0xe9, 0xd3, 0x6b, 0x07, 0xca, 0xfc, 0xd6, 0x17, 0xaf, 0x4c, 0x34, 0xf3,
|
||||
0x4e, 0x90, 0x08, 0x37, 0x1b, 0xb3, 0x0a, 0x71, 0x8c, 0x56, 0x0e, 0x3d, 0x07, 0xe0, 0xfc, 0x26,
|
||||
0xb6, 0x78, 0x30, 0x43, 0xd5, 0x62, 0x87, 0xd5, 0x6b, 0x28, 0xdc, 0xca, 0xb1, 0x7f, 0x43, 0xf6,
|
||||
0xca, 0x45, 0x8f, 0x6e, 0xf8, 0x31, 0x34, 0xd7, 0xe6, 0x2b, 0x95, 0x50, 0x8a, 0xe2, 0xbd, 0x88,
|
||||
0xd4, 0x80, 0xb5, 0x87, 0x6c, 0xf3, 0xe1, 0x1c, 0x4d, 0xb6, 0xc1, 0x0b, 0xa8, 0x9c, 0x52, 0x82,
|
||||
0x9d, 0xf1, 0x3f, 0xda, 0x66, 0xc3, 0x40, 0x5b, 0xb0, 0xc4, 0x71, 0xba, 0x1b, 0xa4, 0x4f, 0xa0,
|
||||
0xc0, 0xaf, 0xaf, 0x3b, 0x80, 0xf9, 0x1c, 0x8a, 0x82, 0xb8, 0xb5, 0xd8, 0xb5, 0x1b, 0x44, 0x8b,
|
||||
0x5d, 0x67, 0x79, 0xe1, 0x9b, 0x31, 0xa0, 0xe6, 0x5b, 0xa1, 0x6b, 0xcd, 0xb7, 0x4a, 0x95, 0xc2,
|
||||
0xb7, 0x68, 0x72, 0xcd, 0xb7, 0x46, 0x62, 0x9a, 0x6f, 0x9d, 0x11, 0xac, 0x1c, 0xda, 0x82, 0xa2,
|
||||
0xe8, 0x6c, 0x6d, 0x03, 0xad, 0xd9, 0x9b, 0x0f, 0x66, 0x0a, 0xbd, 0xc7, 0xbe, 0xad, 0x56, 0x0e,
|
||||
0x3d, 0x85, 0xe2, 0xae, 0x13, 0xf4, 0xb1, 0x8f, 0xae, 0xb1, 0xb9, 0x61, 0xed, 0xe7, 0x50, 0x7d,
|
||||
0x81, 0xe9, 0x09, 0xff, 0x1e, 0xef, 0x07, 0x83, 0xf0, 0xda, 0x2d, 0xde, 0x53, 0x6f, 0xfc, 0xcc,
|
||||
0xdc, 0xca, 0x9d, 0x17, 0xb9, 0xe1, 0xe3, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x7b, 0xd1, 0xe0,
|
||||
0x18, 0x7f, 0x0f, 0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ func (m *SupportsFeatureRequest) Reset() { *m = SupportsFeatureRequest{}
|
|||
func (m *SupportsFeatureRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*SupportsFeatureRequest) ProtoMessage() {}
|
||||
func (*SupportsFeatureRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{0}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{0}
|
||||
}
|
||||
func (m *SupportsFeatureRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SupportsFeatureRequest.Unmarshal(m, b)
|
||||
|
@ -76,7 +76,7 @@ func (m *SupportsFeatureResponse) Reset() { *m = SupportsFeatureResponse
|
|||
func (m *SupportsFeatureResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*SupportsFeatureResponse) ProtoMessage() {}
|
||||
func (*SupportsFeatureResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{1}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{1}
|
||||
}
|
||||
func (m *SupportsFeatureResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SupportsFeatureResponse.Unmarshal(m, b)
|
||||
|
@ -125,7 +125,7 @@ func (m *ReadResourceRequest) Reset() { *m = ReadResourceRequest{} }
|
|||
func (m *ReadResourceRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReadResourceRequest) ProtoMessage() {}
|
||||
func (*ReadResourceRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{2}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{2}
|
||||
}
|
||||
func (m *ReadResourceRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ReadResourceRequest.Unmarshal(m, b)
|
||||
|
@ -235,7 +235,7 @@ func (m *ReadResourceResponse) Reset() { *m = ReadResourceResponse{} }
|
|||
func (m *ReadResourceResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*ReadResourceResponse) ProtoMessage() {}
|
||||
func (*ReadResourceResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{3}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{3}
|
||||
}
|
||||
func (m *ReadResourceResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ReadResourceResponse.Unmarshal(m, b)
|
||||
|
@ -298,7 +298,7 @@ func (m *RegisterResourceRequest) Reset() { *m = RegisterResourceRequest
|
|||
func (m *RegisterResourceRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*RegisterResourceRequest) ProtoMessage() {}
|
||||
func (*RegisterResourceRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{4}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{4}
|
||||
}
|
||||
func (m *RegisterResourceRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_RegisterResourceRequest.Unmarshal(m, b)
|
||||
|
@ -460,7 +460,7 @@ func (m *RegisterResourceRequest_PropertyDependencies) String() string {
|
|||
}
|
||||
func (*RegisterResourceRequest_PropertyDependencies) ProtoMessage() {}
|
||||
func (*RegisterResourceRequest_PropertyDependencies) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{4, 0}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{4, 0}
|
||||
}
|
||||
func (m *RegisterResourceRequest_PropertyDependencies) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_RegisterResourceRequest_PropertyDependencies.Unmarshal(m, b)
|
||||
|
@ -503,7 +503,7 @@ func (m *RegisterResourceRequest_CustomTimeouts) Reset() {
|
|||
func (m *RegisterResourceRequest_CustomTimeouts) String() string { return proto.CompactTextString(m) }
|
||||
func (*RegisterResourceRequest_CustomTimeouts) ProtoMessage() {}
|
||||
func (*RegisterResourceRequest_CustomTimeouts) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{4, 1}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{4, 1}
|
||||
}
|
||||
func (m *RegisterResourceRequest_CustomTimeouts) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_RegisterResourceRequest_CustomTimeouts.Unmarshal(m, b)
|
||||
|
@ -561,7 +561,7 @@ func (m *RegisterResourceResponse) Reset() { *m = RegisterResourceRespon
|
|||
func (m *RegisterResourceResponse) String() string { return proto.CompactTextString(m) }
|
||||
func (*RegisterResourceResponse) ProtoMessage() {}
|
||||
func (*RegisterResourceResponse) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{5}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{5}
|
||||
}
|
||||
func (m *RegisterResourceResponse) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_RegisterResourceResponse.Unmarshal(m, b)
|
||||
|
@ -629,7 +629,7 @@ func (m *RegisterResourceOutputsRequest) Reset() { *m = RegisterResource
|
|||
func (m *RegisterResourceOutputsRequest) String() string { return proto.CompactTextString(m) }
|
||||
func (*RegisterResourceOutputsRequest) ProtoMessage() {}
|
||||
func (*RegisterResourceOutputsRequest) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_resource_0e7314448ddfd7ea, []int{6}
|
||||
return fileDescriptor_resource_a4a41d1ddbd1f936, []int{6}
|
||||
}
|
||||
func (m *RegisterResourceOutputsRequest) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_RegisterResourceOutputsRequest.Unmarshal(m, b)
|
||||
|
@ -689,6 +689,7 @@ const _ = grpc.SupportPackageIsVersion4
|
|||
type ResourceMonitorClient interface {
|
||||
SupportsFeature(ctx context.Context, in *SupportsFeatureRequest, opts ...grpc.CallOption) (*SupportsFeatureResponse, error)
|
||||
Invoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (*InvokeResponse, error)
|
||||
StreamInvoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (ResourceMonitor_StreamInvokeClient, error)
|
||||
ReadResource(ctx context.Context, in *ReadResourceRequest, opts ...grpc.CallOption) (*ReadResourceResponse, error)
|
||||
RegisterResource(ctx context.Context, in *RegisterResourceRequest, opts ...grpc.CallOption) (*RegisterResourceResponse, error)
|
||||
RegisterResourceOutputs(ctx context.Context, in *RegisterResourceOutputsRequest, opts ...grpc.CallOption) (*empty.Empty, error)
|
||||
|
@ -720,6 +721,38 @@ func (c *resourceMonitorClient) Invoke(ctx context.Context, in *InvokeRequest, o
|
|||
return out, nil
|
||||
}
|
||||
|
||||
func (c *resourceMonitorClient) StreamInvoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (ResourceMonitor_StreamInvokeClient, error) {
|
||||
stream, err := grpc.NewClientStream(ctx, &_ResourceMonitor_serviceDesc.Streams[0], c.cc, "/pulumirpc.ResourceMonitor/StreamInvoke", opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
x := &resourceMonitorStreamInvokeClient{stream}
|
||||
if err := x.ClientStream.SendMsg(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if err := x.ClientStream.CloseSend(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return x, nil
|
||||
}
|
||||
|
||||
type ResourceMonitor_StreamInvokeClient interface {
|
||||
Recv() (*InvokeResponse, error)
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
type resourceMonitorStreamInvokeClient struct {
|
||||
grpc.ClientStream
|
||||
}
|
||||
|
||||
func (x *resourceMonitorStreamInvokeClient) Recv() (*InvokeResponse, error) {
|
||||
m := new(InvokeResponse)
|
||||
if err := x.ClientStream.RecvMsg(m); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return m, nil
|
||||
}
|
||||
|
||||
func (c *resourceMonitorClient) ReadResource(ctx context.Context, in *ReadResourceRequest, opts ...grpc.CallOption) (*ReadResourceResponse, error) {
|
||||
out := new(ReadResourceResponse)
|
||||
err := grpc.Invoke(ctx, "/pulumirpc.ResourceMonitor/ReadResource", in, out, c.cc, opts...)
|
||||
|
@ -752,6 +785,7 @@ func (c *resourceMonitorClient) RegisterResourceOutputs(ctx context.Context, in
|
|||
type ResourceMonitorServer interface {
|
||||
SupportsFeature(context.Context, *SupportsFeatureRequest) (*SupportsFeatureResponse, error)
|
||||
Invoke(context.Context, *InvokeRequest) (*InvokeResponse, error)
|
||||
StreamInvoke(*InvokeRequest, ResourceMonitor_StreamInvokeServer) error
|
||||
ReadResource(context.Context, *ReadResourceRequest) (*ReadResourceResponse, error)
|
||||
RegisterResource(context.Context, *RegisterResourceRequest) (*RegisterResourceResponse, error)
|
||||
RegisterResourceOutputs(context.Context, *RegisterResourceOutputsRequest) (*empty.Empty, error)
|
||||
|
@ -797,6 +831,27 @@ func _ResourceMonitor_Invoke_Handler(srv interface{}, ctx context.Context, dec f
|
|||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _ResourceMonitor_StreamInvoke_Handler(srv interface{}, stream grpc.ServerStream) error {
|
||||
m := new(InvokeRequest)
|
||||
if err := stream.RecvMsg(m); err != nil {
|
||||
return err
|
||||
}
|
||||
return srv.(ResourceMonitorServer).StreamInvoke(m, &resourceMonitorStreamInvokeServer{stream})
|
||||
}
|
||||
|
||||
type ResourceMonitor_StreamInvokeServer interface {
|
||||
Send(*InvokeResponse) error
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
type resourceMonitorStreamInvokeServer struct {
|
||||
grpc.ServerStream
|
||||
}
|
||||
|
||||
func (x *resourceMonitorStreamInvokeServer) Send(m *InvokeResponse) error {
|
||||
return x.ServerStream.SendMsg(m)
|
||||
}
|
||||
|
||||
func _ResourceMonitor_ReadResource_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(ReadResourceRequest)
|
||||
if err := dec(in); err != nil {
|
||||
|
@ -876,65 +931,72 @@ var _ResourceMonitor_serviceDesc = grpc.ServiceDesc{
|
|||
Handler: _ResourceMonitor_RegisterResourceOutputs_Handler,
|
||||
},
|
||||
},
|
||||
Streams: []grpc.StreamDesc{},
|
||||
Streams: []grpc.StreamDesc{
|
||||
{
|
||||
StreamName: "StreamInvoke",
|
||||
Handler: _ResourceMonitor_StreamInvoke_Handler,
|
||||
ServerStreams: true,
|
||||
},
|
||||
},
|
||||
Metadata: "resource.proto",
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("resource.proto", fileDescriptor_resource_0e7314448ddfd7ea) }
|
||||
func init() { proto.RegisterFile("resource.proto", fileDescriptor_resource_a4a41d1ddbd1f936) }
|
||||
|
||||
var fileDescriptor_resource_0e7314448ddfd7ea = []byte{
|
||||
// 845 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x56, 0xdd, 0x6e, 0x1c, 0x35,
|
||||
0x14, 0xee, 0xce, 0xb6, 0x93, 0xdd, 0x93, 0x74, 0x13, 0xdc, 0x68, 0xe3, 0x0e, 0x28, 0x84, 0x81,
|
||||
0x8b, 0x85, 0x8b, 0x0d, 0x0d, 0x17, 0x2d, 0x08, 0x81, 0x44, 0x5b, 0xa4, 0x5e, 0x54, 0xc0, 0x84,
|
||||
0x0b, 0x40, 0x02, 0xc9, 0x99, 0x39, 0xd9, 0x0e, 0x99, 0x1d, 0x1b, 0xdb, 0x13, 0x69, 0xef, 0x78,
|
||||
0x0e, 0x6e, 0x78, 0x15, 0x9e, 0x89, 0x27, 0x40, 0xb6, 0xc7, 0xcb, 0xce, 0xcf, 0x26, 0x81, 0x3b,
|
||||
0x9f, 0x1f, 0x9f, 0xb1, 0xbf, 0xef, 0xf3, 0x39, 0x03, 0x13, 0x89, 0x8a, 0x57, 0x32, 0xc5, 0xb9,
|
||||
0x90, 0x5c, 0x73, 0x32, 0x16, 0x55, 0x51, 0x2d, 0x73, 0x29, 0xd2, 0xe8, 0xed, 0x05, 0xe7, 0x8b,
|
||||
0x02, 0x4f, 0x6d, 0xe0, 0xa2, 0xba, 0x3c, 0xc5, 0xa5, 0xd0, 0x2b, 0x97, 0x17, 0xbd, 0xd3, 0x0e,
|
||||
0x2a, 0x2d, 0xab, 0x54, 0xd7, 0xd1, 0x89, 0x90, 0xfc, 0x3a, 0xcf, 0x50, 0x3a, 0x3b, 0x9e, 0xc1,
|
||||
0xf4, 0xbc, 0x12, 0x82, 0x4b, 0xad, 0xbe, 0x46, 0xa6, 0x2b, 0x89, 0x09, 0xfe, 0x56, 0xa1, 0xd2,
|
||||
0x64, 0x02, 0x41, 0x9e, 0xd1, 0xc1, 0xc9, 0x60, 0x36, 0x4e, 0x82, 0x3c, 0x8b, 0x3f, 0x85, 0xa3,
|
||||
0x4e, 0xa6, 0x12, 0xbc, 0x54, 0x48, 0x8e, 0x01, 0xde, 0x30, 0x55, 0x47, 0xed, 0x96, 0x51, 0xb2,
|
||||
0xe1, 0x89, 0xff, 0x0e, 0xe0, 0x51, 0x82, 0x2c, 0x4b, 0xea, 0x1b, 0x6d, 0xf9, 0x04, 0x21, 0x70,
|
||||
0x5f, 0xaf, 0x04, 0xd2, 0xc0, 0x7a, 0xec, 0xda, 0xf8, 0x4a, 0xb6, 0x44, 0x3a, 0x74, 0x3e, 0xb3,
|
||||
0x26, 0x53, 0x08, 0x05, 0x93, 0x58, 0x6a, 0x7a, 0xdf, 0x7a, 0x6b, 0x8b, 0x3c, 0x05, 0x10, 0x92,
|
||||
0x0b, 0x94, 0x3a, 0x47, 0x45, 0x1f, 0x9c, 0x0c, 0x66, 0xbb, 0x67, 0x47, 0x73, 0x87, 0xc7, 0xdc,
|
||||
0xe3, 0x31, 0x3f, 0xb7, 0x78, 0x24, 0x1b, 0xa9, 0x24, 0x86, 0xbd, 0x0c, 0x05, 0x96, 0x19, 0x96,
|
||||
0xa9, 0xd9, 0x1a, 0x9e, 0x0c, 0x67, 0xe3, 0xa4, 0xe1, 0x23, 0x11, 0x8c, 0x3c, 0x76, 0x74, 0xc7,
|
||||
0x7e, 0x76, 0x6d, 0x13, 0x0a, 0x3b, 0xd7, 0x28, 0x55, 0xce, 0x4b, 0x3a, 0xb2, 0x21, 0x6f, 0x92,
|
||||
0x0f, 0xe0, 0x21, 0x4b, 0x53, 0x14, 0xfa, 0x1c, 0x53, 0x89, 0x5a, 0xd1, 0xb1, 0x45, 0xa7, 0xe9,
|
||||
0x24, 0xcf, 0xe0, 0x88, 0x65, 0x59, 0xae, 0x73, 0x5e, 0xb2, 0xc2, 0x39, 0xbf, 0xa9, 0xb4, 0xa8,
|
||||
0xb4, 0xa2, 0x60, 0x8f, 0xb2, 0x2d, 0x6c, 0xbe, 0xcc, 0x8a, 0x9c, 0x29, 0x54, 0x74, 0xd7, 0x66,
|
||||
0x7a, 0x33, 0x66, 0x70, 0xd8, 0xc4, 0xbc, 0x26, 0xeb, 0x00, 0x86, 0x95, 0x2c, 0x6b, 0xd4, 0xcd,
|
||||
0xb2, 0x05, 0x5b, 0x70, 0x67, 0xd8, 0xe2, 0x3f, 0x46, 0x70, 0x94, 0xe0, 0x22, 0x57, 0x1a, 0x65,
|
||||
0x9b, 0x5b, 0xcf, 0xe5, 0xa0, 0x87, 0xcb, 0xa0, 0x97, 0xcb, 0x61, 0x83, 0xcb, 0x29, 0x84, 0x69,
|
||||
0xa5, 0x34, 0x5f, 0x5a, 0x8e, 0x47, 0x49, 0x6d, 0x91, 0x53, 0x08, 0xf9, 0xc5, 0xaf, 0x98, 0xea,
|
||||
0xdb, 0xf8, 0xad, 0xd3, 0x0c, 0x42, 0x26, 0x64, 0x76, 0x84, 0xb6, 0x92, 0x37, 0x3b, 0xac, 0xef,
|
||||
0xdc, 0xc2, 0xfa, 0xa8, 0xc5, 0xba, 0x80, 0xc3, 0x1a, 0x8c, 0xd5, 0x8b, 0xcd, 0x3a, 0xe3, 0x93,
|
||||
0xe1, 0x6c, 0xf7, 0xec, 0xf3, 0xf9, 0xfa, 0xc1, 0xce, 0xb7, 0x80, 0x34, 0xff, 0xb6, 0x67, 0xfb,
|
||||
0xcb, 0x52, 0xcb, 0x55, 0xd2, 0x5b, 0x99, 0x7c, 0x0c, 0x8f, 0x32, 0x2c, 0x50, 0xe3, 0x57, 0x78,
|
||||
0xc9, 0xcd, 0x03, 0x14, 0x05, 0x4b, 0x91, 0x82, 0xbd, 0x57, 0x5f, 0x68, 0x53, 0x99, 0xbb, 0x1d,
|
||||
0x65, 0xe6, 0x8b, 0x92, 0x4b, 0x7c, 0xfe, 0x86, 0x95, 0x0b, 0x54, 0x74, 0xcf, 0x5e, 0xbf, 0xe9,
|
||||
0xec, 0xea, 0xf7, 0xe1, 0x7f, 0xd4, 0xef, 0xe4, 0xce, 0xfa, 0xdd, 0x6f, 0xe8, 0xd7, 0x20, 0x9f,
|
||||
0x2f, 0x4d, 0xfb, 0x78, 0x95, 0xd1, 0x03, 0x87, 0xbc, 0xb7, 0xc9, 0x8f, 0x30, 0x71, 0x72, 0xf8,
|
||||
0x3e, 0x5f, 0x22, 0x37, 0x9f, 0x79, 0xcb, 0x8a, 0xe1, 0xc9, 0x1d, 0x30, 0x7f, 0xde, 0xd8, 0x98,
|
||||
0xb4, 0x0a, 0x91, 0x2f, 0x20, 0xea, 0xc1, 0xf1, 0x05, 0x5e, 0xe6, 0x25, 0x66, 0x94, 0xd8, 0xdb,
|
||||
0xdf, 0x90, 0x11, 0x7d, 0x04, 0x87, 0x7d, 0xac, 0x1a, 0xed, 0x57, 0xb2, 0x54, 0x74, 0x60, 0x6f,
|
||||
0x69, 0xd7, 0xd1, 0x0f, 0x30, 0x69, 0x9e, 0xc6, 0xaa, 0x5e, 0x22, 0xd3, 0xfe, 0xdd, 0xd4, 0x96,
|
||||
0xf1, 0x57, 0x22, 0x33, 0x7e, 0xf7, 0x76, 0x6a, 0xcb, 0xf8, 0xdd, 0x59, 0xfc, 0xeb, 0x71, 0x56,
|
||||
0xf4, 0xfb, 0x00, 0x1e, 0x6f, 0x15, 0x97, 0x69, 0x01, 0x57, 0xb8, 0xf2, 0x2d, 0xe0, 0x0a, 0x57,
|
||||
0xe4, 0x35, 0x3c, 0xb8, 0x66, 0x45, 0x85, 0xf5, 0xeb, 0x7f, 0xfa, 0x3f, 0xb5, 0x9b, 0xb8, 0x2a,
|
||||
0x9f, 0x05, 0xcf, 0x06, 0xf1, 0x9f, 0x03, 0xa0, 0xdd, 0xbd, 0x5b, 0x9b, 0x90, 0x9b, 0x05, 0xc1,
|
||||
0x7a, 0x16, 0xfc, 0xfb, 0xce, 0x87, 0x77, 0x7b, 0xe7, 0x53, 0x08, 0x95, 0x66, 0x17, 0x05, 0xfa,
|
||||
0x86, 0xe1, 0x2c, 0xa3, 0x30, 0xb7, 0x32, 0x13, 0xc1, 0x2a, 0xac, 0x36, 0x63, 0x84, 0xe3, 0xf6,
|
||||
0x01, 0x6b, 0x59, 0xfa, 0x26, 0xd6, 0x3d, 0xe6, 0x13, 0xd8, 0xe1, 0xb5, 0xb2, 0x6f, 0x69, 0x94,
|
||||
0x3e, 0xef, 0xec, 0xaf, 0x21, 0xec, 0xfb, 0xfa, 0xaf, 0x79, 0x99, 0x6b, 0x2e, 0xc9, 0x4f, 0xb0,
|
||||
0xdf, 0x1a, 0xa6, 0xe4, 0xbd, 0x0d, 0xcc, 0xfb, 0x47, 0x72, 0x14, 0xdf, 0x94, 0xe2, 0x90, 0x8d,
|
||||
0xef, 0x91, 0x2f, 0x21, 0x7c, 0x55, 0x5e, 0xf3, 0x2b, 0x24, 0x74, 0x23, 0xdf, 0xb9, 0x7c, 0xa5,
|
||||
0xc7, 0x3d, 0x91, 0x75, 0x81, 0xef, 0x60, 0x6f, 0x73, 0x72, 0x90, 0xe3, 0x86, 0x1a, 0x3a, 0x63,
|
||||
0x3c, 0x7a, 0x77, 0x6b, 0x7c, 0x5d, 0xf2, 0x67, 0x38, 0x68, 0x43, 0x4d, 0xe2, 0xdb, 0x45, 0x16,
|
||||
0xbd, 0x7f, 0x63, 0xce, 0xba, 0xfc, 0x2f, 0xdd, 0x39, 0xe4, 0x1b, 0xcc, 0x87, 0x37, 0x54, 0x68,
|
||||
0xb2, 0x1d, 0x4d, 0x3b, 0x54, 0xbe, 0x34, 0xff, 0x55, 0xf1, 0xbd, 0x8b, 0xd0, 0x7a, 0x3e, 0xf9,
|
||||
0x27, 0x00, 0x00, 0xff, 0xff, 0xee, 0xb7, 0xd0, 0x4b, 0x94, 0x09, 0x00, 0x00,
|
||||
var fileDescriptor_resource_a4a41d1ddbd1f936 = []byte{
|
||||
// 859 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xa4, 0x56, 0xcd, 0x72, 0x1c, 0x35,
|
||||
0x10, 0xce, 0xec, 0x3a, 0xeb, 0xdd, 0xb6, 0xb3, 0x36, 0x8a, 0x6b, 0xad, 0x0c, 0x94, 0x31, 0x03,
|
||||
0x87, 0x85, 0xc3, 0x3a, 0x31, 0x87, 0x04, 0x8a, 0x82, 0x2a, 0x92, 0x40, 0xe5, 0x90, 0x02, 0xc6,
|
||||
0x1c, 0x80, 0x2a, 0xa8, 0x92, 0x67, 0xda, 0xeb, 0xc1, 0xb3, 0x23, 0x21, 0x69, 0x5c, 0xb5, 0x37,
|
||||
0xae, 0xbc, 0x02, 0x17, 0xde, 0x91, 0x27, 0xa0, 0x24, 0x8d, 0x96, 0x9d, 0x9f, 0xb5, 0x0d, 0xb9,
|
||||
0xa9, 0xbf, 0x6e, 0xf5, 0x48, 0x5f, 0x7f, 0xdd, 0x1a, 0x18, 0x4b, 0x54, 0xbc, 0x94, 0x09, 0xce,
|
||||
0x84, 0xe4, 0x9a, 0x93, 0x91, 0x28, 0xf3, 0x72, 0x91, 0x49, 0x91, 0x84, 0x6f, 0xcf, 0x39, 0x9f,
|
||||
0xe7, 0x78, 0x62, 0x1d, 0xe7, 0xe5, 0xc5, 0x09, 0x2e, 0x84, 0x5e, 0xba, 0xb8, 0xf0, 0x9d, 0xa6,
|
||||
0x53, 0x69, 0x59, 0x26, 0xba, 0xf2, 0x8e, 0x85, 0xe4, 0xd7, 0x59, 0x8a, 0xd2, 0xd9, 0xd1, 0x14,
|
||||
0x26, 0x67, 0xa5, 0x10, 0x5c, 0x6a, 0xf5, 0x15, 0x32, 0x5d, 0x4a, 0x8c, 0xf1, 0xb7, 0x12, 0x95,
|
||||
0x26, 0x63, 0xe8, 0x65, 0x29, 0x0d, 0x8e, 0x83, 0xe9, 0x28, 0xee, 0x65, 0x69, 0xf4, 0x09, 0x1c,
|
||||
0xb6, 0x22, 0x95, 0xe0, 0x85, 0x42, 0x72, 0x04, 0x70, 0xc9, 0x54, 0xe5, 0xb5, 0x5b, 0x86, 0xf1,
|
||||
0x1a, 0x12, 0xfd, 0xdd, 0x83, 0x87, 0x31, 0xb2, 0x34, 0xae, 0x6e, 0xb4, 0xe1, 0x13, 0x84, 0xc0,
|
||||
0x96, 0x5e, 0x0a, 0xa4, 0x3d, 0x8b, 0xd8, 0xb5, 0xc1, 0x0a, 0xb6, 0x40, 0xda, 0x77, 0x98, 0x59,
|
||||
0x93, 0x09, 0x0c, 0x04, 0x93, 0x58, 0x68, 0xba, 0x65, 0xd1, 0xca, 0x22, 0x4f, 0x01, 0x84, 0xe4,
|
||||
0x02, 0xa5, 0xce, 0x50, 0xd1, 0xfb, 0xc7, 0xc1, 0x74, 0xe7, 0xf4, 0x70, 0xe6, 0xf8, 0x98, 0x79,
|
||||
0x3e, 0x66, 0x67, 0x96, 0x8f, 0x78, 0x2d, 0x94, 0x44, 0xb0, 0x9b, 0xa2, 0xc0, 0x22, 0xc5, 0x22,
|
||||
0x31, 0x5b, 0x07, 0xc7, 0xfd, 0xe9, 0x28, 0xae, 0x61, 0x24, 0x84, 0xa1, 0xe7, 0x8e, 0x6e, 0xdb,
|
||||
0xcf, 0xae, 0x6c, 0x42, 0x61, 0xfb, 0x1a, 0xa5, 0xca, 0x78, 0x41, 0x87, 0xd6, 0xe5, 0x4d, 0xf2,
|
||||
0x01, 0x3c, 0x60, 0x49, 0x82, 0x42, 0x9f, 0x61, 0x22, 0x51, 0x2b, 0x3a, 0xb2, 0xec, 0xd4, 0x41,
|
||||
0xf2, 0x0c, 0x0e, 0x59, 0x9a, 0x66, 0x3a, 0xe3, 0x05, 0xcb, 0x1d, 0xf8, 0x4d, 0xa9, 0x45, 0xa9,
|
||||
0x15, 0x05, 0x7b, 0x94, 0x4d, 0x6e, 0xf3, 0x65, 0x96, 0x67, 0x4c, 0xa1, 0xa2, 0x3b, 0x36, 0xd2,
|
||||
0x9b, 0x11, 0x83, 0x83, 0x3a, 0xe7, 0x55, 0xb1, 0xf6, 0xa1, 0x5f, 0xca, 0xa2, 0x62, 0xdd, 0x2c,
|
||||
0x1b, 0xb4, 0xf5, 0xee, 0x4c, 0x5b, 0xf4, 0xe7, 0x10, 0x0e, 0x63, 0x9c, 0x67, 0x4a, 0xa3, 0x6c,
|
||||
0xd6, 0xd6, 0xd7, 0x32, 0xe8, 0xa8, 0x65, 0xaf, 0xb3, 0x96, 0xfd, 0x5a, 0x2d, 0x27, 0x30, 0x48,
|
||||
0x4a, 0xa5, 0xf9, 0xc2, 0xd6, 0x78, 0x18, 0x57, 0x16, 0x39, 0x81, 0x01, 0x3f, 0xff, 0x15, 0x13,
|
||||
0x7d, 0x5b, 0x7d, 0xab, 0x30, 0xc3, 0x90, 0x71, 0x99, 0x1d, 0x03, 0x9b, 0xc9, 0x9b, 0xad, 0xaa,
|
||||
0x6f, 0xdf, 0x52, 0xf5, 0x61, 0xa3, 0xea, 0x02, 0x0e, 0x2a, 0x32, 0x96, 0x2f, 0xd6, 0xf3, 0x8c,
|
||||
0x8e, 0xfb, 0xd3, 0x9d, 0xd3, 0xcf, 0x66, 0xab, 0x86, 0x9d, 0x6d, 0x20, 0x69, 0xf6, 0x6d, 0xc7,
|
||||
0xf6, 0x97, 0x85, 0x96, 0xcb, 0xb8, 0x33, 0x33, 0x79, 0x0c, 0x0f, 0x53, 0xcc, 0x51, 0xe3, 0x97,
|
||||
0x78, 0xc1, 0x4d, 0x03, 0x8a, 0x9c, 0x25, 0x48, 0xc1, 0xde, 0xab, 0xcb, 0xb5, 0xae, 0xcc, 0x9d,
|
||||
0x96, 0x32, 0xb3, 0x79, 0xc1, 0x25, 0x3e, 0xbf, 0x64, 0xc5, 0x1c, 0x15, 0xdd, 0xb5, 0xd7, 0xaf,
|
||||
0x83, 0x6d, 0xfd, 0x3e, 0xf8, 0x8f, 0xfa, 0x1d, 0xdf, 0x59, 0xbf, 0x7b, 0x35, 0xfd, 0x1a, 0xe6,
|
||||
0xb3, 0x85, 0x19, 0x1f, 0xaf, 0x52, 0xba, 0xef, 0x98, 0xf7, 0x36, 0xf9, 0x11, 0xc6, 0x4e, 0x0e,
|
||||
0xdf, 0x67, 0x0b, 0xe4, 0xe6, 0x33, 0x6f, 0x59, 0x31, 0x3c, 0xb9, 0x03, 0xe7, 0xcf, 0x6b, 0x1b,
|
||||
0xe3, 0x46, 0x22, 0xf2, 0x39, 0x84, 0x1d, 0x3c, 0xbe, 0xc0, 0x8b, 0xac, 0xc0, 0x94, 0x12, 0x7b,
|
||||
0xfb, 0x1b, 0x22, 0xc2, 0x8f, 0xe0, 0xa0, 0xab, 0xaa, 0x46, 0xfb, 0xa5, 0x2c, 0x14, 0x0d, 0xec,
|
||||
0x2d, 0xed, 0x3a, 0xfc, 0x01, 0xc6, 0xf5, 0xd3, 0x58, 0xd5, 0x4b, 0x64, 0xda, 0xf7, 0x4d, 0x65,
|
||||
0x19, 0xbc, 0x14, 0xa9, 0xc1, 0x5d, 0xef, 0x54, 0x96, 0xc1, 0xdd, 0x59, 0x7c, 0xf7, 0x38, 0x2b,
|
||||
0xfc, 0x3d, 0x80, 0x47, 0x1b, 0xc5, 0x65, 0x46, 0xc0, 0x15, 0x2e, 0xfd, 0x08, 0xb8, 0xc2, 0x25,
|
||||
0x79, 0x0d, 0xf7, 0xaf, 0x59, 0x5e, 0x62, 0xd5, 0xfd, 0x4f, 0xff, 0xa7, 0x76, 0x63, 0x97, 0xe5,
|
||||
0xd3, 0xde, 0xb3, 0x20, 0xfa, 0x2b, 0x00, 0xda, 0xde, 0xbb, 0x71, 0x08, 0xb9, 0xb7, 0xa0, 0xb7,
|
||||
0x7a, 0x0b, 0xfe, 0xed, 0xf3, 0xfe, 0xdd, 0xfa, 0x7c, 0x02, 0x03, 0xa5, 0xd9, 0x79, 0x8e, 0x7e,
|
||||
0x60, 0x38, 0xcb, 0x28, 0xcc, 0xad, 0xcc, 0x8b, 0x60, 0x15, 0x56, 0x99, 0x11, 0xc2, 0x51, 0xf3,
|
||||
0x80, 0x95, 0x2c, 0xfd, 0x10, 0x6b, 0x1f, 0xf3, 0x09, 0x6c, 0xf3, 0x4a, 0xd9, 0xb7, 0x0c, 0x4a,
|
||||
0x1f, 0x77, 0xfa, 0xc7, 0x16, 0xec, 0xf9, 0xfc, 0xaf, 0x79, 0x91, 0x69, 0x2e, 0xc9, 0x4f, 0xb0,
|
||||
0xd7, 0x78, 0x4c, 0xc9, 0x7b, 0x6b, 0x9c, 0x77, 0x3f, 0xc9, 0x61, 0x74, 0x53, 0x88, 0x63, 0x36,
|
||||
0xba, 0x47, 0xbe, 0x80, 0xc1, 0xab, 0xe2, 0x9a, 0x5f, 0x21, 0xa1, 0x6b, 0xf1, 0x0e, 0xf2, 0x99,
|
||||
0x1e, 0x75, 0x78, 0x56, 0x09, 0xbe, 0x86, 0xdd, 0x33, 0x2d, 0x91, 0x2d, 0xde, 0x28, 0xcd, 0xe3,
|
||||
0x80, 0x7c, 0x07, 0xbb, 0xeb, 0x4f, 0x10, 0x39, 0xaa, 0xc9, 0xaa, 0xf5, 0x3f, 0x10, 0xbe, 0xbb,
|
||||
0xd1, 0xbf, 0x3a, 0xdb, 0xcf, 0xb0, 0xdf, 0xac, 0x19, 0x89, 0x6e, 0x57, 0x6b, 0xf8, 0xfe, 0x8d,
|
||||
0x31, 0xab, 0xf4, 0xbf, 0xb4, 0x1f, 0x34, 0x3f, 0xa9, 0x3e, 0xbc, 0x21, 0x43, 0x5d, 0x36, 0xe1,
|
||||
0xa4, 0xa5, 0x89, 0x97, 0xe6, 0x07, 0x2d, 0xba, 0x77, 0x3e, 0xb0, 0xc8, 0xc7, 0xff, 0x04, 0x00,
|
||||
0x00, 0xff, 0xff, 0x48, 0xe1, 0x9e, 0xa4, 0xdd, 0x09, 0x00, 0x00,
|
||||
}
|
||||
|
|
|
@ -33,6 +33,10 @@ service ResourceProvider {
|
|||
// Invoke dynamically executes a built-in function in the provider.
|
||||
rpc Invoke(InvokeRequest) returns (InvokeResponse) {}
|
||||
|
||||
// StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
// of responses.
|
||||
rpc StreamInvoke(InvokeRequest) returns (stream InvokeResponse) {}
|
||||
|
||||
// Check validates that the given property bag is valid for a resource of the given type and returns the inputs
|
||||
// that should be passed to successive calls to Diff, Create, or Update for this resource. As a rule, the provider
|
||||
// inputs returned by a call to Check should preserve the original representation of the properties as present in
|
||||
|
|
|
@ -24,6 +24,7 @@ package pulumirpc;
|
|||
service ResourceMonitor {
|
||||
rpc SupportsFeature(SupportsFeatureRequest) returns (SupportsFeatureResponse) {}
|
||||
rpc Invoke(InvokeRequest) returns (InvokeResponse) {}
|
||||
rpc StreamInvoke(InvokeRequest) returns (stream InvokeResponse) {}
|
||||
rpc ReadResource(ReadResourceRequest) returns (ReadResourceResponse) {}
|
||||
rpc RegisterResource(RegisterResourceRequest) returns (RegisterResourceResponse) {}
|
||||
rpc RegisterResourceOutputs(RegisterResourceOutputsRequest) returns (google.protobuf.Empty) {}
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -37,6 +37,11 @@ class ResourceProviderStub(object):
|
|||
request_serializer=provider__pb2.InvokeRequest.SerializeToString,
|
||||
response_deserializer=provider__pb2.InvokeResponse.FromString,
|
||||
)
|
||||
self.StreamInvoke = channel.unary_stream(
|
||||
'/pulumirpc.ResourceProvider/StreamInvoke',
|
||||
request_serializer=provider__pb2.InvokeRequest.SerializeToString,
|
||||
response_deserializer=provider__pb2.InvokeResponse.FromString,
|
||||
)
|
||||
self.Check = channel.unary_unary(
|
||||
'/pulumirpc.ResourceProvider/Check',
|
||||
request_serializer=provider__pb2.CheckRequest.SerializeToString,
|
||||
|
@ -112,6 +117,14 @@ class ResourceProviderServicer(object):
|
|||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def StreamInvoke(self, request, context):
|
||||
"""StreamInvoke dynamically executes a built-in function in the provider, which returns a stream
|
||||
of responses.
|
||||
"""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def Check(self, request, context):
|
||||
"""Check validates that the given property bag is valid for a resource of the given type and returns the inputs
|
||||
that should be passed to successive calls to Diff, Create, or Update for this resource. As a rule, the provider
|
||||
|
@ -197,6 +210,11 @@ def add_ResourceProviderServicer_to_server(servicer, server):
|
|||
request_deserializer=provider__pb2.InvokeRequest.FromString,
|
||||
response_serializer=provider__pb2.InvokeResponse.SerializeToString,
|
||||
),
|
||||
'StreamInvoke': grpc.unary_stream_rpc_method_handler(
|
||||
servicer.StreamInvoke,
|
||||
request_deserializer=provider__pb2.InvokeRequest.FromString,
|
||||
response_serializer=provider__pb2.InvokeResponse.SerializeToString,
|
||||
),
|
||||
'Check': grpc.unary_unary_rpc_method_handler(
|
||||
servicer.Check,
|
||||
request_deserializer=provider__pb2.CheckRequest.FromString,
|
||||
|
|
|
@ -23,7 +23,7 @@ DESCRIPTOR = _descriptor.FileDescriptor(
|
|||
package='pulumirpc',
|
||||
syntax='proto3',
|
||||
serialized_options=None,
|
||||
serialized_pb=_b('\n\x0eresource.proto\x12\tpulumirpc\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x0eprovider.proto\"$\n\x16SupportsFeatureRequest\x12\n\n\x02id\x18\x01 \x01(\t\"-\n\x17SupportsFeatureResponse\x12\x12\n\nhasSupport\x18\x01 \x01(\x08\"\xfc\x01\n\x13ReadResourceRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0e\n\x06parent\x18\x04 \x01(\t\x12+\n\nproperties\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x14\n\x0c\x64\x65pendencies\x18\x06 \x03(\t\x12\x10\n\x08provider\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x15\n\racceptSecrets\x18\t \x01(\x08\x12\x1f\n\x17\x61\x64\x64itionalSecretOutputs\x18\n \x03(\t\x12\x0f\n\x07\x61liases\x18\x0b \x03(\t\"P\n\x14ReadResourceResponse\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x80\x06\n\x17RegisterResourceRequest\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06parent\x18\x03 \x01(\t\x12\x0e\n\x06\x63ustom\x18\x04 \x01(\x08\x12\'\n\x06object\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0f\n\x07protect\x18\x06 \x01(\x08\x12\x14\n\x0c\x64\x65pendencies\x18\x07 \x03(\t\x12\x10\n\x08provider\x18\x08 \x01(\t\x12Z\n\x14propertyDependencies\x18\t \x03(\x0b\x32<.pulumirpc.RegisterResourceRequest.PropertyDependenciesEntry\x12\x1b\n\x13\x64\x65leteBeforeReplace\x18\n \x01(\x08\x12\x0f\n\x07version\x18\x0b \x01(\t\x12\x15\n\rignoreChanges\x18\x0c \x03(\t\x12\x15\n\racceptSecrets\x18\r \x01(\x08\x12\x1f\n\x17\x61\x64\x64itionalSecretOutputs\x18\x0e \x03(\t\x12\x0f\n\x07\x61liases\x18\x0f \x03(\t\x12\x10\n\x08importId\x18\x10 \x01(\t\x12I\n\x0e\x63ustomTimeouts\x18\x11 \x01(\x0b\x32\x31.pulumirpc.RegisterResourceRequest.CustomTimeouts\x12\"\n\x1a\x64\x65leteBeforeReplaceDefined\x18\x12 \x01(\x08\x1a$\n\x14PropertyDependencies\x12\x0c\n\x04urns\x18\x01 \x03(\t\x1a@\n\x0e\x43ustomTimeouts\x12\x0e\n\x06\x63reate\x18\x01 \x01(\t\x12\x0e\n\x06update\x18\x02 \x01(\t\x12\x0e\n\x06\x64\x65lete\x18\x03 \x01(\t\x1at\n\x19PropertyDependenciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x46\n\x05value\x18\x02 \x01(\x0b\x32\x37.pulumirpc.RegisterResourceRequest.PropertyDependencies:\x02\x38\x01\"}\n\x18RegisterResourceResponse\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12\'\n\x06object\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0e\n\x06stable\x18\x04 \x01(\x08\x12\x0f\n\x07stables\x18\x05 \x03(\t\"W\n\x1eRegisterResourceOutputsRequest\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12(\n\x07outputs\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct2\xc0\x03\n\x0fResourceMonitor\x12Z\n\x0fSupportsFeature\x12!.pulumirpc.SupportsFeatureRequest\x1a\".pulumirpc.SupportsFeatureResponse\"\x00\x12?\n\x06Invoke\x12\x18.pulumirpc.InvokeRequest\x1a\x19.pulumirpc.InvokeResponse\"\x00\x12Q\n\x0cReadResource\x12\x1e.pulumirpc.ReadResourceRequest\x1a\x1f.pulumirpc.ReadResourceResponse\"\x00\x12]\n\x10RegisterResource\x12\".pulumirpc.RegisterResourceRequest\x1a#.pulumirpc.RegisterResourceResponse\"\x00\x12^\n\x17RegisterResourceOutputs\x12).pulumirpc.RegisterResourceOutputsRequest\x1a\x16.google.protobuf.Empty\"\x00\x62\x06proto3')
|
||||
serialized_pb=_b('\n\x0eresource.proto\x12\tpulumirpc\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x0eprovider.proto\"$\n\x16SupportsFeatureRequest\x12\n\n\x02id\x18\x01 \x01(\t\"-\n\x17SupportsFeatureResponse\x12\x12\n\nhasSupport\x18\x01 \x01(\x08\"\xfc\x01\n\x13ReadResourceRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04type\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x0e\n\x06parent\x18\x04 \x01(\t\x12+\n\nproperties\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x14\n\x0c\x64\x65pendencies\x18\x06 \x03(\t\x12\x10\n\x08provider\x18\x07 \x01(\t\x12\x0f\n\x07version\x18\x08 \x01(\t\x12\x15\n\racceptSecrets\x18\t \x01(\x08\x12\x1f\n\x17\x61\x64\x64itionalSecretOutputs\x18\n \x03(\t\x12\x0f\n\x07\x61liases\x18\x0b \x03(\t\"P\n\x14ReadResourceResponse\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12+\n\nproperties\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x80\x06\n\x17RegisterResourceRequest\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06parent\x18\x03 \x01(\t\x12\x0e\n\x06\x63ustom\x18\x04 \x01(\x08\x12\'\n\x06object\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0f\n\x07protect\x18\x06 \x01(\x08\x12\x14\n\x0c\x64\x65pendencies\x18\x07 \x03(\t\x12\x10\n\x08provider\x18\x08 \x01(\t\x12Z\n\x14propertyDependencies\x18\t \x03(\x0b\x32<.pulumirpc.RegisterResourceRequest.PropertyDependenciesEntry\x12\x1b\n\x13\x64\x65leteBeforeReplace\x18\n \x01(\x08\x12\x0f\n\x07version\x18\x0b \x01(\t\x12\x15\n\rignoreChanges\x18\x0c \x03(\t\x12\x15\n\racceptSecrets\x18\r \x01(\x08\x12\x1f\n\x17\x61\x64\x64itionalSecretOutputs\x18\x0e \x03(\t\x12\x0f\n\x07\x61liases\x18\x0f \x03(\t\x12\x10\n\x08importId\x18\x10 \x01(\t\x12I\n\x0e\x63ustomTimeouts\x18\x11 \x01(\x0b\x32\x31.pulumirpc.RegisterResourceRequest.CustomTimeouts\x12\"\n\x1a\x64\x65leteBeforeReplaceDefined\x18\x12 \x01(\x08\x1a$\n\x14PropertyDependencies\x12\x0c\n\x04urns\x18\x01 \x03(\t\x1a@\n\x0e\x43ustomTimeouts\x12\x0e\n\x06\x63reate\x18\x01 \x01(\t\x12\x0e\n\x06update\x18\x02 \x01(\t\x12\x0e\n\x06\x64\x65lete\x18\x03 \x01(\t\x1at\n\x19PropertyDependenciesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x46\n\x05value\x18\x02 \x01(\x0b\x32\x37.pulumirpc.RegisterResourceRequest.PropertyDependencies:\x02\x38\x01\"}\n\x18RegisterResourceResponse\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\t\x12\'\n\x06object\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x0e\n\x06stable\x18\x04 \x01(\x08\x12\x0f\n\x07stables\x18\x05 \x03(\t\"W\n\x1eRegisterResourceOutputsRequest\x12\x0b\n\x03urn\x18\x01 \x01(\t\x12(\n\x07outputs\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct2\x89\x04\n\x0fResourceMonitor\x12Z\n\x0fSupportsFeature\x12!.pulumirpc.SupportsFeatureRequest\x1a\".pulumirpc.SupportsFeatureResponse\"\x00\x12?\n\x06Invoke\x12\x18.pulumirpc.InvokeRequest\x1a\x19.pulumirpc.InvokeResponse\"\x00\x12G\n\x0cStreamInvoke\x12\x18.pulumirpc.InvokeRequest\x1a\x19.pulumirpc.InvokeResponse\"\x00\x30\x01\x12Q\n\x0cReadResource\x12\x1e.pulumirpc.ReadResourceRequest\x1a\x1f.pulumirpc.ReadResourceResponse\"\x00\x12]\n\x10RegisterResource\x12\".pulumirpc.RegisterResourceRequest\x1a#.pulumirpc.RegisterResourceResponse\"\x00\x12^\n\x17RegisterResourceOutputs\x12).pulumirpc.RegisterResourceOutputsRequest\x1a\x16.google.protobuf.Empty\"\x00\x62\x06proto3')
|
||||
,
|
||||
dependencies=[google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,google_dot_protobuf_dot_struct__pb2.DESCRIPTOR,provider__pb2.DESCRIPTOR,])
|
||||
|
||||
|
@ -691,7 +691,7 @@ _RESOURCEMONITOR = _descriptor.ServiceDescriptor(
|
|||
index=0,
|
||||
serialized_options=None,
|
||||
serialized_start=1514,
|
||||
serialized_end=1962,
|
||||
serialized_end=2035,
|
||||
methods=[
|
||||
_descriptor.MethodDescriptor(
|
||||
name='SupportsFeature',
|
||||
|
@ -711,10 +711,19 @@ _RESOURCEMONITOR = _descriptor.ServiceDescriptor(
|
|||
output_type=provider__pb2._INVOKERESPONSE,
|
||||
serialized_options=None,
|
||||
),
|
||||
_descriptor.MethodDescriptor(
|
||||
name='StreamInvoke',
|
||||
full_name='pulumirpc.ResourceMonitor.StreamInvoke',
|
||||
index=2,
|
||||
containing_service=None,
|
||||
input_type=provider__pb2._INVOKEREQUEST,
|
||||
output_type=provider__pb2._INVOKERESPONSE,
|
||||
serialized_options=None,
|
||||
),
|
||||
_descriptor.MethodDescriptor(
|
||||
name='ReadResource',
|
||||
full_name='pulumirpc.ResourceMonitor.ReadResource',
|
||||
index=2,
|
||||
index=3,
|
||||
containing_service=None,
|
||||
input_type=_READRESOURCEREQUEST,
|
||||
output_type=_READRESOURCERESPONSE,
|
||||
|
@ -723,7 +732,7 @@ _RESOURCEMONITOR = _descriptor.ServiceDescriptor(
|
|||
_descriptor.MethodDescriptor(
|
||||
name='RegisterResource',
|
||||
full_name='pulumirpc.ResourceMonitor.RegisterResource',
|
||||
index=3,
|
||||
index=4,
|
||||
containing_service=None,
|
||||
input_type=_REGISTERRESOURCEREQUEST,
|
||||
output_type=_REGISTERRESOURCERESPONSE,
|
||||
|
@ -732,7 +741,7 @@ _RESOURCEMONITOR = _descriptor.ServiceDescriptor(
|
|||
_descriptor.MethodDescriptor(
|
||||
name='RegisterResourceOutputs',
|
||||
full_name='pulumirpc.ResourceMonitor.RegisterResourceOutputs',
|
||||
index=4,
|
||||
index=5,
|
||||
containing_service=None,
|
||||
input_type=_REGISTERRESOURCEOUTPUTSREQUEST,
|
||||
output_type=google_dot_protobuf_dot_empty__pb2._EMPTY,
|
||||
|
|
|
@ -26,6 +26,11 @@ class ResourceMonitorStub(object):
|
|||
request_serializer=provider__pb2.InvokeRequest.SerializeToString,
|
||||
response_deserializer=provider__pb2.InvokeResponse.FromString,
|
||||
)
|
||||
self.StreamInvoke = channel.unary_stream(
|
||||
'/pulumirpc.ResourceMonitor/StreamInvoke',
|
||||
request_serializer=provider__pb2.InvokeRequest.SerializeToString,
|
||||
response_deserializer=provider__pb2.InvokeResponse.FromString,
|
||||
)
|
||||
self.ReadResource = channel.unary_unary(
|
||||
'/pulumirpc.ResourceMonitor/ReadResource',
|
||||
request_serializer=resource__pb2.ReadResourceRequest.SerializeToString,
|
||||
|
@ -61,6 +66,13 @@ class ResourceMonitorServicer(object):
|
|||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def StreamInvoke(self, request, context):
|
||||
# missing associated documentation comment in .proto file
|
||||
pass
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def ReadResource(self, request, context):
|
||||
# missing associated documentation comment in .proto file
|
||||
pass
|
||||
|
@ -95,6 +107,11 @@ def add_ResourceMonitorServicer_to_server(servicer, server):
|
|||
request_deserializer=provider__pb2.InvokeRequest.FromString,
|
||||
response_serializer=provider__pb2.InvokeResponse.SerializeToString,
|
||||
),
|
||||
'StreamInvoke': grpc.unary_stream_rpc_method_handler(
|
||||
servicer.StreamInvoke,
|
||||
request_deserializer=provider__pb2.InvokeRequest.FromString,
|
||||
response_serializer=provider__pb2.InvokeResponse.SerializeToString,
|
||||
),
|
||||
'ReadResource': grpc.unary_unary_rpc_method_handler(
|
||||
servicer.ReadResource,
|
||||
request_deserializer=resource__pb2.ReadResourceRequest.FromString,
|
||||
|
|
Loading…
Reference in a new issue