// Copyright 2016-2017, Pulumi Corporation // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; import "google/protobuf/empty.proto"; import "google/protobuf/struct.proto"; package lumirpc; // Engine is an interface into the core engine responsible for orchestrating resource operations. service Engine { // Log logs a global message in the engine, including errors and warnings. rpc Log(LogRequest) returns (google.protobuf.Empty) {} // ReadLocation reads the value from a location identified by a token in the current program. rpc ReadLocation(ReadLocationRequest) returns (google.protobuf.Value) {} } // LogSeverity is the severity level of a log message. Errors are fatal; all others are informational. enum LogSeverity { DEBUG = 0; // a debug-level message not displayed to end-users (the default). INFO = 1; // an informational message printed to output during resource operations. WARNING = 2; // a warning to indicate that something went wrong. ERROR = 3; // a fatal error indicating that the tool should stop processing subsequent resource operations. } message LogRequest { LogSeverity severity = 1; // the logging level of this message. string message = 2; // the contents of the logged message. } message ReadLocationRequest { string token = 1; // the static or module variable whose value to read. }