diff --git a/index.ts b/index.ts index eb3a285..79488e4 100644 --- a/index.ts +++ b/index.ts @@ -278,6 +278,7 @@ async function upsert( force: boolean = false ): Promise { const service = convertServiceInputs(inputs); + service.setProject(pulumi.getProject()); const client = await connect(inputs.fabricDNS); try { // Upload the build context, if provided @@ -301,6 +302,7 @@ async function upsert( return; } const sv = new pb.SecretValue(); + sv.setProject(pulumi.getProject()); sv.setName(secret.source); sv.setValue(secret.value); return new Promise((resolve, reject) => @@ -346,6 +348,7 @@ function waitForSteadyState( service: string ) { const subscribeRequest = new pb.SubscribeRequest(); + // subscribeRequest.setProject(pulumi.getProject()); subscribeRequest.setEtag(etag); subscribeRequest.addServices(service); const subscribeStream = client.subscribe(subscribeRequest); @@ -609,6 +612,7 @@ const defangServiceProvider: pulumi.dynamic.ResourceProvider< }, async delete(id: string, olds: DefangServiceOutputs): Promise { const serviceIds = new pb.DeleteRequest(); + serviceIds.setProject(pulumi.getProject()); serviceIds.addNames(id); const client = await connect(olds.fabricDNS); try { @@ -693,6 +697,7 @@ const defangServiceProvider: pulumi.dynamic.ResourceProvider< olds?: DefangServiceOutputs ): Promise> { const serviceId = new pb.ServiceID(); + // serviceId.setProject(pulumi.getProject()); serviceId.setName(id); assert(olds?.fabricDNS, "fabricDNS is required"); const client = await connect(olds.fabricDNS); diff --git a/io/defang/v1/fabric.proto b/io/defang/v1/fabric.proto index c802e29..5024bd5 100644 --- a/io/defang/v1/fabric.proto +++ b/io/defang/v1/fabric.proto @@ -1,14 +1,12 @@ -// protos/v1/fabric.proto +// protos/io/defang/v1/fabric.proto syntax = "proto3"; option go_package = "github.com/DefangLabs/defang/src/protos/io/defang/v1"; -// option java_multiple_files = true; -// option java_package = "io.defang.fabric"; -// option java_outer_classname = "FabricProto"; package io.defang.v1; import "google/protobuf/empty.proto"; +import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; service FabricController { @@ -23,12 +21,16 @@ service FabricController { rpc RevokeToken(google.protobuf.Empty) returns (google.protobuf.Empty); rpc Tail(TailRequest) returns (stream TailResponse); - rpc Update(Service) returns (ServiceInfo); // deprecated; use Deploy + rpc Update(Service) returns (ServiceInfo) { + option deprecated = true; + }; // used by pulumi-defang provider; should use Deploy rpc Deploy(DeployRequest) returns (DeployResponse); rpc Get(ServiceID) returns (ServiceInfo) { option idempotency_level = NO_SIDE_EFFECTS; }; // should be GetService - rpc Delete(DeleteRequest) returns (DeleteResponse); // deprecated; use Deploy + rpc Delete(DeleteRequest) returns (DeleteResponse){ + option deprecated = true; + }; // used by pulumi-defang provider; should use Deploy rpc Publish(PublishRequest) returns (google.protobuf.Empty); rpc Subscribe(SubscribeRequest) returns (stream SubscribeResponse); // rpc Promote(google.protobuf.Empty) returns (google.protobuf.Empty); @@ -42,7 +44,7 @@ service FabricController { rpc GenerateStatus(GenerateStatusRequest) returns (GenerateFilesResponse) { option idempotency_level = NO_SIDE_EFFECTS; } - rpc Debug(DebugRequest) returns (DebugResponse); // TEST + rpc Debug(DebugRequest) returns (DebugResponse); rpc SignEULA(google.protobuf.Empty) returns (google.protobuf.Empty); // AgreeToS @@ -50,11 +52,26 @@ service FabricController { option idempotency_level = NO_SIDE_EFFECTS; } - rpc PutSecret(SecretValue) returns (google.protobuf.Empty); - rpc DeleteSecrets(Secrets) returns (google.protobuf.Empty); + // deprecate - change to use *Config functions + rpc PutSecret(SecretValue) returns (google.protobuf.Empty) {option deprecated = true;}; + rpc DeleteSecrets(Secrets) returns (google.protobuf.Empty) {option deprecated = true;}; rpc ListSecrets(google.protobuf.Empty) returns (Secrets) { option idempotency_level = NO_SIDE_EFFECTS; + option deprecated = true; + } // no values + + rpc GetConfigs(GetConfigsRequest) returns (GetConfigsResponse) { + option idempotency_level = NO_SIDE_EFFECTS; + }; // no values + rpc PutConfig(PutConfigRequest) returns (google.protobuf.Empty) { + option idempotency_level = IDEMPOTENT; + + }; + rpc DeleteConfigs(DeleteConfigsRequest) returns (google.protobuf.Empty); + rpc ListConfigs(ListConfigsRequest) returns (ListConfigsResponse) { + option idempotency_level = NO_SIDE_EFFECTS; }; // no values + rpc CreateUploadURL(UploadURLRequest) returns (UploadURLResponse); rpc DelegateSubdomainZone(DelegateSubdomainZoneRequest) @@ -105,9 +122,18 @@ message TrackRequest { string arch = 5; } +enum DeploymentMode { + UNSPECIFIED_MODE= 0; + DEVELOPMENT = 1; + STAGING = 2; + PRODUCTION = 3; +} + message DeployRequest { - repeated Service services = 1; - string project = 2; + repeated Service services = 1 [deprecated = true]; // deprecated; use compose + string project = 2 [deprecated = true]; // deprecated; use compose.name + DeploymentMode mode = 3; + google.protobuf.Struct compose = 4; } message DeployResponse { @@ -172,7 +198,7 @@ message ServiceInfo { string etag = 4; string status = 5; repeated string nat_ips = 6; // comma-separated list of NAT IPs - repeated string lb_ips = 7; // comma-separated list of internal CIDR for the load-balancer + repeated string lb_ips = 7; // comma-separated list of internal CIDRs for the load-balancer string private_fqdn = 8; // fully qualified domain name (host) string public_fqdn = 9; // fully qualified domain name (ingress) google.protobuf.Timestamp created_at = 10; @@ -181,15 +207,11 @@ message ServiceInfo { bool use_acme_cert = 13; // If we should setup the facilities to use ACME(let's encrypt) certs reserved 14; // was: string lb_dns ServiceState state = 15; // enumerated status of the service + string domainname = 16; // domain name for the service // bool is_function = 5; // true if service is a function } -// message Project { -// repeated Service services = 1; -// repeated SecretValue secrets = 2; -// } - message Secrets { repeated string names = 1; string project = 2; // defaults to tenant ID @@ -201,6 +223,46 @@ message SecretValue { string project = 3; // defaults to tenant ID } +message Config { + string name = 1; + string value = 2; + string project = 3; + bool is_sensitive = 4; +} + +message ConfigKey { + string name = 1; + string project = 2; // defaults to tenant ID +} + +message GetConfigsRequest { + repeated ConfigKey configs = 1; +} + +message GetConfigsResponse { + repeated Config configs = 1; +} + + +message DeleteConfigsRequest { + repeated ConfigKey configs = 1; +} + +message PutConfigRequest { + string name = 1; + string value = 2; + string project = 3; + bool is_sensitive = 4; +} + +message ListConfigsRequest { + string project = 1; // defaults to tenant ID +} + +message ListConfigsResponse { + repeated ConfigKey configs = 1; +} + message TokenRequest { string tenant = 1; string auth_code = 2; // from GitHub authorization code flow @@ -262,10 +324,12 @@ message ListServicesResponse { message ProjectUpdate { repeated ServiceInfo services = 1; string alb_arn = 2; - string project = 3; + string project = 3; // should we use compose.name? + google.protobuf.Struct compose = 4; } enum Platform { + option deprecated = true; LINUX_AMD64 = 0; LINUX_ARM64 = 1; LINUX_ANY = 2; @@ -274,36 +338,28 @@ enum Platform { message ServiceID { string name = 1; } message Device { + option deprecated = true; repeated string capabilities = 1; // "gpu", "tpu", etc. string driver = 2; // "nvidia", "amd", etc. uint32 count = 3; // number of devices to reserve - - // repeated string device_ids = 4; // device IDs to reserve - // map options = 5; } -/* placement specifies constraints and preferences for platform to select a - * physical node to run service containers. */ -// message Placement { -// /* constraints defines a REQUIRED property the platform's node MUST fulfill -// to run service container. */ map constraints = 1; -// /* preferences defines a property the platform's node SHOULD fulfill to run -// service container. */ map preferences = 2; -// } - message Resource { + option deprecated = true; float memory = 1; // in MiB float cpus = 2; // fractional vCPUs repeated Device devices = 3; // devices & capabilities } message Resources { + option deprecated = true; Resource reservations = 1; // requested resources // Resource limits = 2; // hard limits } message Deploy { + option deprecated = true; uint32 replicas = 1; // number of initial replicas Resources resources = 2; // reservations and limits @@ -318,6 +374,7 @@ message Deploy { // } enum Protocol { + option deprecated = true; ANY = 0; // unspecified means any protocol UDP = 1; TCP = 2; @@ -327,11 +384,13 @@ enum Protocol { } enum Mode { + option deprecated = true; HOST = 0; // no load-balancer; suitable for internal services and functions INGRESS = 1; // with load-balancer; suitable for public services } message Port { + option deprecated = true; uint32 target = 1; Protocol protocol = 2; Mode mode = 3; // load-balanced (ingress) or not (host) @@ -341,54 +400,41 @@ message Port { } message Secret { + option deprecated = true; string source = 1; // name of the secret // string target = 2; } message Build { + option deprecated = true; string context = 1; // path or URL to the build context string dockerfile = 2; // path to the Dockerfile map args = 3; // build-time variables float shm_size = 4; // in MiB string target = 5; - - // string dockerfile_inline = 4; // inline Dockerfile - // repeated string ssh = 4; - // repeated string cache_from = 4; - // repeated string cache_to = 4; - // repeated string extra_hosts = 4; - // string isolation = 4; - // bool privileged = 4; - // map labels = 4; - // bool no_cache = 4; - // bool pull = 4; - // repeated Secret secrets = 4; - // repeated string tags = 4; - // repeated Platform platforms = 4; } message HealthCheck { + option deprecated = true; repeated string test = 1; uint32 interval = 2; // in seconds uint32 timeout = 3; // in seconds; must be less than interval uint32 retries = 4; - - // uint32 start_period = 5; - // uint32 start_interval = 5; not supported by ECS - // bool disable = 6; } enum Network { + option deprecated = true; UNSPECIFIED = 0; // was: internal=false PRIVATE = 1; // was: internal=true PUBLIC = 2; } message Service { + option deprecated = true; string name = 1; string image = 2; Platform platform = 3; - bool internal = 4; // deprecated: use networks + bool internal = 4 [deprecated = true]; // deprecated: use networks Deploy deploy = 5; repeated Port ports = 6; map environment = 7; @@ -403,15 +449,21 @@ message Service { Network networks = 16; // currently only 1 network is supported Redis redis = 18; // x-defang-redis: use a managed redis Postgres postgres = 19; // x-defang-postgres: use a managed + string project = 20; // defaults to tenant ID } message StaticFiles { + option deprecated = true; string folder = 1; repeated string redirects = 2; } -message Redis {} -message Postgres {} +message Redis { + option deprecated = true; +} +message Postgres { + option deprecated = true; +} message Event { string specversion = 1; // required (but we don't care) diff --git a/protos/io/defang/v1/fabric_grpc_pb.d.ts b/protos/io/defang/v1/fabric_grpc_pb.d.ts index 425ca18..5e65642 100644 --- a/protos/io/defang/v1/fabric_grpc_pb.d.ts +++ b/protos/io/defang/v1/fabric_grpc_pb.d.ts @@ -29,6 +29,10 @@ interface IFabricControllerService extends grpc.ServiceDefinition; deleteSecrets: grpc.MethodDefinition; listSecrets: grpc.MethodDefinition; + getConfigs: grpc.MethodDefinition; + putConfig: grpc.MethodDefinition; + deleteConfigs: grpc.MethodDefinition; + listConfigs: grpc.MethodDefinition; createUploadURL: grpc.MethodDefinition; delegateSubdomainZone: grpc.MethodDefinition; deleteSubdomainZone: grpc.MethodDefinition; @@ -61,6 +65,10 @@ export interface IFabricControllerServer extends grpc.UntypedServiceImplementati putSecret: grpc.handleUnaryCall; deleteSecrets: grpc.handleUnaryCall; listSecrets: grpc.handleUnaryCall; + getConfigs: grpc.handleUnaryCall; + putConfig: grpc.handleUnaryCall; + deleteConfigs: grpc.handleUnaryCall; + listConfigs: grpc.handleUnaryCall; createUploadURL: grpc.handleUnaryCall; delegateSubdomainZone: grpc.handleUnaryCall; deleteSubdomainZone: grpc.handleUnaryCall; @@ -132,6 +140,18 @@ export class FabricControllerClient extends grpc.Client { listSecrets(argument: google_protobuf_empty_pb.Empty, callback: grpc.requestCallback): grpc.ClientUnaryCall; listSecrets(argument: google_protobuf_empty_pb.Empty, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; listSecrets(argument: google_protobuf_empty_pb.Empty, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + getConfigs(argument: io_defang_v1_fabric_pb.GetConfigsRequest, callback: grpc.requestCallback): grpc.ClientUnaryCall; + getConfigs(argument: io_defang_v1_fabric_pb.GetConfigsRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + getConfigs(argument: io_defang_v1_fabric_pb.GetConfigsRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + putConfig(argument: io_defang_v1_fabric_pb.PutConfigRequest, callback: grpc.requestCallback): grpc.ClientUnaryCall; + putConfig(argument: io_defang_v1_fabric_pb.PutConfigRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + putConfig(argument: io_defang_v1_fabric_pb.PutConfigRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + deleteConfigs(argument: io_defang_v1_fabric_pb.DeleteConfigsRequest, callback: grpc.requestCallback): grpc.ClientUnaryCall; + deleteConfigs(argument: io_defang_v1_fabric_pb.DeleteConfigsRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + deleteConfigs(argument: io_defang_v1_fabric_pb.DeleteConfigsRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + listConfigs(argument: io_defang_v1_fabric_pb.ListConfigsRequest, callback: grpc.requestCallback): grpc.ClientUnaryCall; + listConfigs(argument: io_defang_v1_fabric_pb.ListConfigsRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; + listConfigs(argument: io_defang_v1_fabric_pb.ListConfigsRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; createUploadURL(argument: io_defang_v1_fabric_pb.UploadURLRequest, callback: grpc.requestCallback): grpc.ClientUnaryCall; createUploadURL(argument: io_defang_v1_fabric_pb.UploadURLRequest, metadataOrOptions: grpc.Metadata | grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; createUploadURL(argument: io_defang_v1_fabric_pb.UploadURLRequest, metadata: grpc.Metadata | null, options: grpc.CallOptions | null, callback: grpc.requestCallback): grpc.ClientUnaryCall; diff --git a/protos/io/defang/v1/fabric_grpc_pb.js b/protos/io/defang/v1/fabric_grpc_pb.js index 141c4e0..96da658 100644 --- a/protos/io/defang/v1/fabric_grpc_pb.js +++ b/protos/io/defang/v1/fabric_grpc_pb.js @@ -1,11 +1,12 @@ // GENERATED CODE -- DO NOT EDIT! // Original file comments: -// protos/v1/fabric.proto +// protos/io/defang/v1/fabric.proto 'use strict'; var grpc = require('@grpc/grpc-js'); var io_defang_v1_fabric_pb = require('../../../io/defang/v1/fabric_pb.js'); var google_protobuf_empty_pb = require('google-protobuf/google/protobuf/empty_pb.js'); +var google_protobuf_struct_pb = require('google-protobuf/google/protobuf/struct_pb.js'); var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js'); function serialize_google_protobuf_Empty(arg) { @@ -63,6 +64,17 @@ function deserialize_io_defang_v1_DelegateSubdomainZoneResponse(buffer_arg) { return io_defang_v1_fabric_pb.DelegateSubdomainZoneResponse.deserializeBinary(new Uint8Array(buffer_arg)); } +function serialize_io_defang_v1_DeleteConfigsRequest(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.DeleteConfigsRequest)) { + throw new Error('Expected argument of type io.defang.v1.DeleteConfigsRequest'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_DeleteConfigsRequest(buffer_arg) { + return io_defang_v1_fabric_pb.DeleteConfigsRequest.deserializeBinary(new Uint8Array(buffer_arg)); +} + function serialize_io_defang_v1_DeleteRequest(arg) { if (!(arg instanceof io_defang_v1_fabric_pb.DeleteRequest)) { throw new Error('Expected argument of type io.defang.v1.DeleteRequest'); @@ -140,6 +152,50 @@ function deserialize_io_defang_v1_GenerateStatusRequest(buffer_arg) { return io_defang_v1_fabric_pb.GenerateStatusRequest.deserializeBinary(new Uint8Array(buffer_arg)); } +function serialize_io_defang_v1_GetConfigsRequest(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.GetConfigsRequest)) { + throw new Error('Expected argument of type io.defang.v1.GetConfigsRequest'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_GetConfigsRequest(buffer_arg) { + return io_defang_v1_fabric_pb.GetConfigsRequest.deserializeBinary(new Uint8Array(buffer_arg)); +} + +function serialize_io_defang_v1_GetConfigsResponse(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.GetConfigsResponse)) { + throw new Error('Expected argument of type io.defang.v1.GetConfigsResponse'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_GetConfigsResponse(buffer_arg) { + return io_defang_v1_fabric_pb.GetConfigsResponse.deserializeBinary(new Uint8Array(buffer_arg)); +} + +function serialize_io_defang_v1_ListConfigsRequest(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.ListConfigsRequest)) { + throw new Error('Expected argument of type io.defang.v1.ListConfigsRequest'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_ListConfigsRequest(buffer_arg) { + return io_defang_v1_fabric_pb.ListConfigsRequest.deserializeBinary(new Uint8Array(buffer_arg)); +} + +function serialize_io_defang_v1_ListConfigsResponse(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.ListConfigsResponse)) { + throw new Error('Expected argument of type io.defang.v1.ListConfigsResponse'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_ListConfigsResponse(buffer_arg) { + return io_defang_v1_fabric_pb.ListConfigsResponse.deserializeBinary(new Uint8Array(buffer_arg)); +} + function serialize_io_defang_v1_ListServicesResponse(arg) { if (!(arg instanceof io_defang_v1_fabric_pb.ListServicesResponse)) { throw new Error('Expected argument of type io.defang.v1.ListServicesResponse'); @@ -162,6 +218,17 @@ function deserialize_io_defang_v1_PublishRequest(buffer_arg) { return io_defang_v1_fabric_pb.PublishRequest.deserializeBinary(new Uint8Array(buffer_arg)); } +function serialize_io_defang_v1_PutConfigRequest(arg) { + if (!(arg instanceof io_defang_v1_fabric_pb.PutConfigRequest)) { + throw new Error('Expected argument of type io.defang.v1.PutConfigRequest'); + } + return Buffer.from(arg.serializeBinary()); +} + +function deserialize_io_defang_v1_PutConfigRequest(buffer_arg) { + return io_defang_v1_fabric_pb.PutConfigRequest.deserializeBinary(new Uint8Array(buffer_arg)); +} + function serialize_io_defang_v1_SecretValue(arg) { if (!(arg instanceof io_defang_v1_fabric_pb.SecretValue)) { throw new Error('Expected argument of type io.defang.v1.SecretValue'); @@ -429,8 +496,7 @@ revokeToken: { responseSerialize: serialize_io_defang_v1_ServiceInfo, responseDeserialize: deserialize_io_defang_v1_ServiceInfo, }, - // deprecated; use Deploy -deploy: { + deploy: { path: '/io.defang.v1.FabricController/Deploy', requestStream: false, responseStream: false, @@ -463,8 +529,7 @@ deploy: { responseSerialize: serialize_io_defang_v1_DeleteResponse, responseDeserialize: deserialize_io_defang_v1_DeleteResponse, }, - // deprecated; use Deploy -publish: { + publish: { path: '/io.defang.v1.FabricController/Publish', requestStream: false, responseStream: false, @@ -543,8 +608,7 @@ startGenerate: { responseSerialize: serialize_io_defang_v1_DebugResponse, responseDeserialize: deserialize_io_defang_v1_DebugResponse, }, - // TEST -signEULA: { + signEULA: { path: '/io.defang.v1.FabricController/SignEULA', requestStream: false, responseStream: false, @@ -567,7 +631,8 @@ checkToS: { responseSerialize: serialize_google_protobuf_Empty, responseDeserialize: deserialize_google_protobuf_Empty, }, - putSecret: { + // deprecate - change to use *Config functions +putSecret: { path: '/io.defang.v1.FabricController/PutSecret', requestStream: false, responseStream: false, @@ -600,6 +665,50 @@ checkToS: { responseSerialize: serialize_io_defang_v1_Secrets, responseDeserialize: deserialize_io_defang_v1_Secrets, }, + getConfigs: { + path: '/io.defang.v1.FabricController/GetConfigs', + requestStream: false, + responseStream: false, + requestType: io_defang_v1_fabric_pb.GetConfigsRequest, + responseType: io_defang_v1_fabric_pb.GetConfigsResponse, + requestSerialize: serialize_io_defang_v1_GetConfigsRequest, + requestDeserialize: deserialize_io_defang_v1_GetConfigsRequest, + responseSerialize: serialize_io_defang_v1_GetConfigsResponse, + responseDeserialize: deserialize_io_defang_v1_GetConfigsResponse, + }, + putConfig: { + path: '/io.defang.v1.FabricController/PutConfig', + requestStream: false, + responseStream: false, + requestType: io_defang_v1_fabric_pb.PutConfigRequest, + responseType: google_protobuf_empty_pb.Empty, + requestSerialize: serialize_io_defang_v1_PutConfigRequest, + requestDeserialize: deserialize_io_defang_v1_PutConfigRequest, + responseSerialize: serialize_google_protobuf_Empty, + responseDeserialize: deserialize_google_protobuf_Empty, + }, + deleteConfigs: { + path: '/io.defang.v1.FabricController/DeleteConfigs', + requestStream: false, + responseStream: false, + requestType: io_defang_v1_fabric_pb.DeleteConfigsRequest, + responseType: google_protobuf_empty_pb.Empty, + requestSerialize: serialize_io_defang_v1_DeleteConfigsRequest, + requestDeserialize: deserialize_io_defang_v1_DeleteConfigsRequest, + responseSerialize: serialize_google_protobuf_Empty, + responseDeserialize: deserialize_google_protobuf_Empty, + }, + listConfigs: { + path: '/io.defang.v1.FabricController/ListConfigs', + requestStream: false, + responseStream: false, + requestType: io_defang_v1_fabric_pb.ListConfigsRequest, + responseType: io_defang_v1_fabric_pb.ListConfigsResponse, + requestSerialize: serialize_io_defang_v1_ListConfigsRequest, + requestDeserialize: deserialize_io_defang_v1_ListConfigsRequest, + responseSerialize: serialize_io_defang_v1_ListConfigsResponse, + responseDeserialize: deserialize_io_defang_v1_ListConfigsResponse, + }, createUploadURL: { path: '/io.defang.v1.FabricController/CreateUploadURL', requestStream: false, diff --git a/protos/io/defang/v1/fabric_pb.d.ts b/protos/io/defang/v1/fabric_pb.d.ts index 76b438c..e064e1a 100644 --- a/protos/io/defang/v1/fabric_pb.d.ts +++ b/protos/io/defang/v1/fabric_pb.d.ts @@ -3,6 +3,7 @@ import * as jspb from "google-protobuf"; import * as google_protobuf_empty_pb from "google-protobuf/google/protobuf/empty_pb"; +import * as google_protobuf_struct_pb from "google-protobuf/google/protobuf/struct_pb"; import * as google_protobuf_timestamp_pb from "google-protobuf/google/protobuf/timestamp_pb"; export class DebugRequest extends jspb.Message { @@ -179,6 +180,14 @@ export class DeployRequest extends jspb.Message { getProject(): string; setProject(value: string): void; + getMode(): DeploymentModeMap[keyof DeploymentModeMap]; + setMode(value: DeploymentModeMap[keyof DeploymentModeMap]): void; + + hasCompose(): boolean; + clearCompose(): void; + getCompose(): google_protobuf_struct_pb.Struct | undefined; + setCompose(value?: google_protobuf_struct_pb.Struct): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): DeployRequest.AsObject; static toObject(includeInstance: boolean, msg: DeployRequest): DeployRequest.AsObject; @@ -193,6 +202,8 @@ export namespace DeployRequest { export type AsObject = { servicesList: Array, project: string, + mode: DeploymentModeMap[keyof DeploymentModeMap], + compose?: google_protobuf_struct_pb.Struct.AsObject, } } @@ -477,6 +488,9 @@ export class ServiceInfo extends jspb.Message { getState(): ServiceStateMap[keyof ServiceStateMap]; setState(value: ServiceStateMap[keyof ServiceStateMap]): void; + getDomainname(): string; + setDomainname(value: string): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): ServiceInfo.AsObject; static toObject(includeInstance: boolean, msg: ServiceInfo): ServiceInfo.AsObject; @@ -503,6 +517,7 @@ export namespace ServiceInfo { zoneId: string, useAcmeCert: boolean, state: ServiceStateMap[keyof ServiceStateMap], + domainname: string, } } @@ -560,6 +575,202 @@ export namespace SecretValue { } } +export class Config extends jspb.Message { + getName(): string; + setName(value: string): void; + + getValue(): string; + setValue(value: string): void; + + getProject(): string; + setProject(value: string): void; + + getIsSensitive(): boolean; + setIsSensitive(value: boolean): void; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): Config.AsObject; + static toObject(includeInstance: boolean, msg: Config): Config.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: Config, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): Config; + static deserializeBinaryFromReader(message: Config, reader: jspb.BinaryReader): Config; +} + +export namespace Config { + export type AsObject = { + name: string, + value: string, + project: string, + isSensitive: boolean, + } +} + +export class ConfigKey extends jspb.Message { + getName(): string; + setName(value: string): void; + + getProject(): string; + setProject(value: string): void; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): ConfigKey.AsObject; + static toObject(includeInstance: boolean, msg: ConfigKey): ConfigKey.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: ConfigKey, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): ConfigKey; + static deserializeBinaryFromReader(message: ConfigKey, reader: jspb.BinaryReader): ConfigKey; +} + +export namespace ConfigKey { + export type AsObject = { + name: string, + project: string, + } +} + +export class GetConfigsRequest extends jspb.Message { + clearConfigsList(): void; + getConfigsList(): Array; + setConfigsList(value: Array): void; + addConfigs(value?: ConfigKey, index?: number): ConfigKey; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): GetConfigsRequest.AsObject; + static toObject(includeInstance: boolean, msg: GetConfigsRequest): GetConfigsRequest.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: GetConfigsRequest, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): GetConfigsRequest; + static deserializeBinaryFromReader(message: GetConfigsRequest, reader: jspb.BinaryReader): GetConfigsRequest; +} + +export namespace GetConfigsRequest { + export type AsObject = { + configsList: Array, + } +} + +export class GetConfigsResponse extends jspb.Message { + clearConfigsList(): void; + getConfigsList(): Array; + setConfigsList(value: Array): void; + addConfigs(value?: Config, index?: number): Config; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): GetConfigsResponse.AsObject; + static toObject(includeInstance: boolean, msg: GetConfigsResponse): GetConfigsResponse.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: GetConfigsResponse, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): GetConfigsResponse; + static deserializeBinaryFromReader(message: GetConfigsResponse, reader: jspb.BinaryReader): GetConfigsResponse; +} + +export namespace GetConfigsResponse { + export type AsObject = { + configsList: Array, + } +} + +export class DeleteConfigsRequest extends jspb.Message { + clearConfigsList(): void; + getConfigsList(): Array; + setConfigsList(value: Array): void; + addConfigs(value?: ConfigKey, index?: number): ConfigKey; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): DeleteConfigsRequest.AsObject; + static toObject(includeInstance: boolean, msg: DeleteConfigsRequest): DeleteConfigsRequest.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: DeleteConfigsRequest, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): DeleteConfigsRequest; + static deserializeBinaryFromReader(message: DeleteConfigsRequest, reader: jspb.BinaryReader): DeleteConfigsRequest; +} + +export namespace DeleteConfigsRequest { + export type AsObject = { + configsList: Array, + } +} + +export class PutConfigRequest extends jspb.Message { + getName(): string; + setName(value: string): void; + + getValue(): string; + setValue(value: string): void; + + getProject(): string; + setProject(value: string): void; + + getIsSensitive(): boolean; + setIsSensitive(value: boolean): void; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): PutConfigRequest.AsObject; + static toObject(includeInstance: boolean, msg: PutConfigRequest): PutConfigRequest.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: PutConfigRequest, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): PutConfigRequest; + static deserializeBinaryFromReader(message: PutConfigRequest, reader: jspb.BinaryReader): PutConfigRequest; +} + +export namespace PutConfigRequest { + export type AsObject = { + name: string, + value: string, + project: string, + isSensitive: boolean, + } +} + +export class ListConfigsRequest extends jspb.Message { + getProject(): string; + setProject(value: string): void; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): ListConfigsRequest.AsObject; + static toObject(includeInstance: boolean, msg: ListConfigsRequest): ListConfigsRequest.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: ListConfigsRequest, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): ListConfigsRequest; + static deserializeBinaryFromReader(message: ListConfigsRequest, reader: jspb.BinaryReader): ListConfigsRequest; +} + +export namespace ListConfigsRequest { + export type AsObject = { + project: string, + } +} + +export class ListConfigsResponse extends jspb.Message { + clearConfigsList(): void; + getConfigsList(): Array; + setConfigsList(value: Array): void; + addConfigs(value?: ConfigKey, index?: number): ConfigKey; + + serializeBinary(): Uint8Array; + toObject(includeInstance?: boolean): ListConfigsResponse.AsObject; + static toObject(includeInstance: boolean, msg: ListConfigsResponse): ListConfigsResponse.AsObject; + static extensions: {[key: number]: jspb.ExtensionFieldInfo}; + static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo}; + static serializeBinaryToWriter(message: ListConfigsResponse, writer: jspb.BinaryWriter): void; + static deserializeBinary(bytes: Uint8Array): ListConfigsResponse; + static deserializeBinaryFromReader(message: ListConfigsResponse, reader: jspb.BinaryReader): ListConfigsResponse; +} + +export namespace ListConfigsResponse { + export type AsObject = { + configsList: Array, + } +} + export class TokenRequest extends jspb.Message { getTenant(): string; setTenant(value: string): void; @@ -816,6 +1027,11 @@ export class ProjectUpdate extends jspb.Message { getProject(): string; setProject(value: string): void; + hasCompose(): boolean; + clearCompose(): void; + getCompose(): google_protobuf_struct_pb.Struct | undefined; + setCompose(value?: google_protobuf_struct_pb.Struct): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): ProjectUpdate.AsObject; static toObject(includeInstance: boolean, msg: ProjectUpdate): ProjectUpdate.AsObject; @@ -831,6 +1047,7 @@ export namespace ProjectUpdate { servicesList: Array, albArn: string, project: string, + compose?: google_protobuf_struct_pb.Struct.AsObject, } } @@ -1151,6 +1368,9 @@ export class Service extends jspb.Message { getPostgres(): Postgres | undefined; setPostgres(value?: Postgres): void; + getProject(): string; + setProject(value: string): void; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): Service.AsObject; static toObject(includeInstance: boolean, msg: Service): Service.AsObject; @@ -1181,6 +1401,7 @@ export namespace Service { networks: NetworkMap[keyof NetworkMap], redis?: Redis.AsObject, postgres?: Postgres.AsObject, + project: string, } } @@ -1454,6 +1675,15 @@ export namespace WhoAmIResponse { } } +export interface DeploymentModeMap { + UNSPECIFIED_MODE: 0; + DEVELOPMENT: 1; + STAGING: 2; + PRODUCTION: 3; +} + +export const DeploymentMode: DeploymentModeMap; + export interface ServiceStateMap { NOT_SPECIFIED: 0; BUILD_QUEUED: 1; diff --git a/protos/io/defang/v1/fabric_pb.js b/protos/io/defang/v1/fabric_pb.js index f36063b..fab625b 100644 --- a/protos/io/defang/v1/fabric_pb.js +++ b/protos/io/defang/v1/fabric_pb.js @@ -23,27 +23,37 @@ var global = (function() { var google_protobuf_empty_pb = require('google-protobuf/google/protobuf/empty_pb.js'); goog.object.extend(proto, google_protobuf_empty_pb); +var google_protobuf_struct_pb = require('google-protobuf/google/protobuf/struct_pb.js'); +goog.object.extend(proto, google_protobuf_struct_pb); var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js'); goog.object.extend(proto, google_protobuf_timestamp_pb); goog.exportSymbol('proto.io.defang.v1.Build', null, global); goog.exportSymbol('proto.io.defang.v1.CodeChange', null, global); +goog.exportSymbol('proto.io.defang.v1.Config', null, global); +goog.exportSymbol('proto.io.defang.v1.ConfigKey', null, global); goog.exportSymbol('proto.io.defang.v1.DebugRequest', null, global); goog.exportSymbol('proto.io.defang.v1.DebugResponse', null, global); goog.exportSymbol('proto.io.defang.v1.DelegateSubdomainZoneRequest', null, global); goog.exportSymbol('proto.io.defang.v1.DelegateSubdomainZoneResponse', null, global); +goog.exportSymbol('proto.io.defang.v1.DeleteConfigsRequest', null, global); goog.exportSymbol('proto.io.defang.v1.DeleteRequest', null, global); goog.exportSymbol('proto.io.defang.v1.DeleteResponse', null, global); goog.exportSymbol('proto.io.defang.v1.Deploy', null, global); goog.exportSymbol('proto.io.defang.v1.DeployRequest', null, global); goog.exportSymbol('proto.io.defang.v1.DeployResponse', null, global); +goog.exportSymbol('proto.io.defang.v1.DeploymentMode', null, global); goog.exportSymbol('proto.io.defang.v1.Device', null, global); goog.exportSymbol('proto.io.defang.v1.Event', null, global); goog.exportSymbol('proto.io.defang.v1.File', null, global); goog.exportSymbol('proto.io.defang.v1.GenerateFilesRequest', null, global); goog.exportSymbol('proto.io.defang.v1.GenerateFilesResponse', null, global); goog.exportSymbol('proto.io.defang.v1.GenerateStatusRequest', null, global); +goog.exportSymbol('proto.io.defang.v1.GetConfigsRequest', null, global); +goog.exportSymbol('proto.io.defang.v1.GetConfigsResponse', null, global); goog.exportSymbol('proto.io.defang.v1.HealthCheck', null, global); goog.exportSymbol('proto.io.defang.v1.Issue', null, global); +goog.exportSymbol('proto.io.defang.v1.ListConfigsRequest', null, global); +goog.exportSymbol('proto.io.defang.v1.ListConfigsResponse', null, global); goog.exportSymbol('proto.io.defang.v1.ListServicesResponse', null, global); goog.exportSymbol('proto.io.defang.v1.LogEntry', null, global); goog.exportSymbol('proto.io.defang.v1.Mode', null, global); @@ -54,6 +64,7 @@ goog.exportSymbol('proto.io.defang.v1.Postgres', null, global); goog.exportSymbol('proto.io.defang.v1.ProjectUpdate', null, global); goog.exportSymbol('proto.io.defang.v1.Protocol', null, global); goog.exportSymbol('proto.io.defang.v1.PublishRequest', null, global); +goog.exportSymbol('proto.io.defang.v1.PutConfigRequest', null, global); goog.exportSymbol('proto.io.defang.v1.Redis', null, global); goog.exportSymbol('proto.io.defang.v1.Resource', null, global); goog.exportSymbol('proto.io.defang.v1.Resources', null, global); @@ -477,6 +488,174 @@ if (goog.DEBUG && !COMPILED) { */ proto.io.defang.v1.SecretValue.displayName = 'proto.io.defang.v1.SecretValue'; } +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.Config = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.io.defang.v1.Config, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.Config.displayName = 'proto.io.defang.v1.Config'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.ConfigKey = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.io.defang.v1.ConfigKey, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.ConfigKey.displayName = 'proto.io.defang.v1.ConfigKey'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.GetConfigsRequest = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.io.defang.v1.GetConfigsRequest.repeatedFields_, null); +}; +goog.inherits(proto.io.defang.v1.GetConfigsRequest, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.GetConfigsRequest.displayName = 'proto.io.defang.v1.GetConfigsRequest'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.GetConfigsResponse = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.io.defang.v1.GetConfigsResponse.repeatedFields_, null); +}; +goog.inherits(proto.io.defang.v1.GetConfigsResponse, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.GetConfigsResponse.displayName = 'proto.io.defang.v1.GetConfigsResponse'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.DeleteConfigsRequest = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.io.defang.v1.DeleteConfigsRequest.repeatedFields_, null); +}; +goog.inherits(proto.io.defang.v1.DeleteConfigsRequest, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.DeleteConfigsRequest.displayName = 'proto.io.defang.v1.DeleteConfigsRequest'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.PutConfigRequest = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.io.defang.v1.PutConfigRequest, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.PutConfigRequest.displayName = 'proto.io.defang.v1.PutConfigRequest'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.ListConfigsRequest = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.io.defang.v1.ListConfigsRequest, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.ListConfigsRequest.displayName = 'proto.io.defang.v1.ListConfigsRequest'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.io.defang.v1.ListConfigsResponse = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.io.defang.v1.ListConfigsResponse.repeatedFields_, null); +}; +goog.inherits(proto.io.defang.v1.ListConfigsResponse, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.io.defang.v1.ListConfigsResponse.displayName = 'proto.io.defang.v1.ListConfigsResponse'; +} /** * Generated by JsPbCodeGenerator. * @param {Array=} opt_data Optional initial data array, typically from a @@ -2328,7 +2507,9 @@ proto.io.defang.v1.DeployRequest.toObject = function(includeInstance, msg) { var f, obj = { servicesList: jspb.Message.toObjectList(msg.getServicesList(), proto.io.defang.v1.Service.toObject, includeInstance), - project: jspb.Message.getFieldWithDefault(msg, 2, "") + project: jspb.Message.getFieldWithDefault(msg, 2, ""), + mode: jspb.Message.getFieldWithDefault(msg, 3, 0), + compose: (f = msg.getCompose()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f) }; if (includeInstance) { @@ -2374,6 +2555,15 @@ proto.io.defang.v1.DeployRequest.deserializeBinaryFromReader = function(msg, rea var value = /** @type {string} */ (reader.readString()); msg.setProject(value); break; + case 3: + var value = /** @type {!proto.io.defang.v1.DeploymentMode} */ (reader.readEnum()); + msg.setMode(value); + break; + case 4: + var value = new google_protobuf_struct_pb.Struct; + reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader); + msg.setCompose(value); + break; default: reader.skipField(); break; @@ -2418,6 +2608,21 @@ proto.io.defang.v1.DeployRequest.serializeBinaryToWriter = function(message, wri f ); } + f = message.getMode(); + if (f !== 0.0) { + writer.writeEnum( + 3, + f + ); + } + f = message.getCompose(); + if (f != null) { + writer.writeMessage( + 4, + f, + google_protobuf_struct_pb.Struct.serializeBinaryToWriter + ); + } }; @@ -2477,6 +2682,61 @@ proto.io.defang.v1.DeployRequest.prototype.setProject = function(value) { }; +/** + * optional DeploymentMode mode = 3; + * @return {!proto.io.defang.v1.DeploymentMode} + */ +proto.io.defang.v1.DeployRequest.prototype.getMode = function() { + return /** @type {!proto.io.defang.v1.DeploymentMode} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {!proto.io.defang.v1.DeploymentMode} value + * @return {!proto.io.defang.v1.DeployRequest} returns this + */ +proto.io.defang.v1.DeployRequest.prototype.setMode = function(value) { + return jspb.Message.setProto3EnumField(this, 3, value); +}; + + +/** + * optional google.protobuf.Struct compose = 4; + * @return {?proto.google.protobuf.Struct} + */ +proto.io.defang.v1.DeployRequest.prototype.getCompose = function() { + return /** @type{?proto.google.protobuf.Struct} */ ( + jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 4)); +}; + + +/** + * @param {?proto.google.protobuf.Struct|undefined} value + * @return {!proto.io.defang.v1.DeployRequest} returns this +*/ +proto.io.defang.v1.DeployRequest.prototype.setCompose = function(value) { + return jspb.Message.setWrapperField(this, 4, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.io.defang.v1.DeployRequest} returns this + */ +proto.io.defang.v1.DeployRequest.prototype.clearCompose = function() { + return this.setCompose(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.io.defang.v1.DeployRequest.prototype.hasCompose = function() { + return jspb.Message.getField(this, 4) != null; +}; + + /** * List of repeated fields within this message type. @@ -4065,7 +4325,8 @@ proto.io.defang.v1.ServiceInfo.toObject = function(includeInstance, msg) { updatedAt: (f = msg.getUpdatedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f), zoneId: jspb.Message.getFieldWithDefault(msg, 12, ""), useAcmeCert: jspb.Message.getBooleanFieldWithDefault(msg, 13, false), - state: jspb.Message.getFieldWithDefault(msg, 15, 0) + state: jspb.Message.getFieldWithDefault(msg, 15, 0), + domainname: jspb.Message.getFieldWithDefault(msg, 16, "") }; if (includeInstance) { @@ -4161,6 +4422,10 @@ proto.io.defang.v1.ServiceInfo.deserializeBinaryFromReader = function(msg, reade var value = /** @type {!proto.io.defang.v1.ServiceState} */ (reader.readEnum()); msg.setState(value); break; + case 16: + var value = /** @type {string} */ (reader.readString()); + msg.setDomainname(value); + break; default: reader.skipField(); break; @@ -4291,6 +4556,13 @@ proto.io.defang.v1.ServiceInfo.serializeBinaryToWriter = function(message, write f ); } + f = message.getDomainname(); + if (f.length > 0) { + writer.writeString( + 16, + f + ); + } }; @@ -4634,39 +4906,1506 @@ proto.io.defang.v1.ServiceInfo.prototype.getUseAcmeCert = function() { /** - * @param {boolean} value - * @return {!proto.io.defang.v1.ServiceInfo} returns this + * @param {boolean} value + * @return {!proto.io.defang.v1.ServiceInfo} returns this + */ +proto.io.defang.v1.ServiceInfo.prototype.setUseAcmeCert = function(value) { + return jspb.Message.setProto3BooleanField(this, 13, value); +}; + + +/** + * optional ServiceState state = 15; + * @return {!proto.io.defang.v1.ServiceState} + */ +proto.io.defang.v1.ServiceInfo.prototype.getState = function() { + return /** @type {!proto.io.defang.v1.ServiceState} */ (jspb.Message.getFieldWithDefault(this, 15, 0)); +}; + + +/** + * @param {!proto.io.defang.v1.ServiceState} value + * @return {!proto.io.defang.v1.ServiceInfo} returns this + */ +proto.io.defang.v1.ServiceInfo.prototype.setState = function(value) { + return jspb.Message.setProto3EnumField(this, 15, value); +}; + + +/** + * optional string domainname = 16; + * @return {string} + */ +proto.io.defang.v1.ServiceInfo.prototype.getDomainname = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 16, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.ServiceInfo} returns this + */ +proto.io.defang.v1.ServiceInfo.prototype.setDomainname = function(value) { + return jspb.Message.setProto3StringField(this, 16, value); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.io.defang.v1.Secrets.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.Secrets.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.Secrets.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.Secrets} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.Secrets.toObject = function(includeInstance, msg) { + var f, obj = { + namesList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f, + project: jspb.Message.getFieldWithDefault(msg, 2, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.Secrets} + */ +proto.io.defang.v1.Secrets.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.Secrets; + return proto.io.defang.v1.Secrets.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.Secrets} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.Secrets} + */ +proto.io.defang.v1.Secrets.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.addNames(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.Secrets.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.Secrets.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.Secrets} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.Secrets.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getNamesList(); + if (f.length > 0) { + writer.writeRepeatedString( + 1, + f + ); + } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } +}; + + +/** + * repeated string names = 1; + * @return {!Array} + */ +proto.io.defang.v1.Secrets.prototype.getNamesList = function() { + return /** @type {!Array} */ (jspb.Message.getRepeatedField(this, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.io.defang.v1.Secrets} returns this + */ +proto.io.defang.v1.Secrets.prototype.setNamesList = function(value) { + return jspb.Message.setField(this, 1, value || []); +}; + + +/** + * @param {string} value + * @param {number=} opt_index + * @return {!proto.io.defang.v1.Secrets} returns this + */ +proto.io.defang.v1.Secrets.prototype.addNames = function(value, opt_index) { + return jspb.Message.addToRepeatedField(this, 1, value, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.io.defang.v1.Secrets} returns this + */ +proto.io.defang.v1.Secrets.prototype.clearNamesList = function() { + return this.setNamesList([]); +}; + + +/** + * optional string project = 2; + * @return {string} + */ +proto.io.defang.v1.Secrets.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.Secrets} returns this + */ +proto.io.defang.v1.Secrets.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.SecretValue.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.SecretValue.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.SecretValue} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.SecretValue.toObject = function(includeInstance, msg) { + var f, obj = { + name: jspb.Message.getFieldWithDefault(msg, 1, ""), + value: jspb.Message.getFieldWithDefault(msg, 2, ""), + project: jspb.Message.getFieldWithDefault(msg, 3, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.SecretValue} + */ +proto.io.defang.v1.SecretValue.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.SecretValue; + return proto.io.defang.v1.SecretValue.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.SecretValue} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.SecretValue} + */ +proto.io.defang.v1.SecretValue.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setName(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setValue(value); + break; + case 3: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.SecretValue.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.SecretValue.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.SecretValue} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.SecretValue.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getName(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getValue(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 3, + f + ); + } +}; + + +/** + * optional string name = 1; + * @return {string} + */ +proto.io.defang.v1.SecretValue.prototype.getName = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.SecretValue} returns this + */ +proto.io.defang.v1.SecretValue.prototype.setName = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string value = 2; + * @return {string} + */ +proto.io.defang.v1.SecretValue.prototype.getValue = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.SecretValue} returns this + */ +proto.io.defang.v1.SecretValue.prototype.setValue = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + +/** + * optional string project = 3; + * @return {string} + */ +proto.io.defang.v1.SecretValue.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.SecretValue} returns this + */ +proto.io.defang.v1.SecretValue.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 3, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.Config.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.Config.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.Config} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.Config.toObject = function(includeInstance, msg) { + var f, obj = { + name: jspb.Message.getFieldWithDefault(msg, 1, ""), + value: jspb.Message.getFieldWithDefault(msg, 2, ""), + project: jspb.Message.getFieldWithDefault(msg, 3, ""), + isSensitive: jspb.Message.getBooleanFieldWithDefault(msg, 4, false) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.Config} + */ +proto.io.defang.v1.Config.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.Config; + return proto.io.defang.v1.Config.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.Config} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.Config} + */ +proto.io.defang.v1.Config.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setName(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setValue(value); + break; + case 3: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; + case 4: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setIsSensitive(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.Config.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.Config.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.Config} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.Config.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getName(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getValue(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 3, + f + ); + } + f = message.getIsSensitive(); + if (f) { + writer.writeBool( + 4, + f + ); + } +}; + + +/** + * optional string name = 1; + * @return {string} + */ +proto.io.defang.v1.Config.prototype.getName = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.Config} returns this + */ +proto.io.defang.v1.Config.prototype.setName = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string value = 2; + * @return {string} + */ +proto.io.defang.v1.Config.prototype.getValue = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.Config} returns this + */ +proto.io.defang.v1.Config.prototype.setValue = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + +/** + * optional string project = 3; + * @return {string} + */ +proto.io.defang.v1.Config.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.Config} returns this + */ +proto.io.defang.v1.Config.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 3, value); +}; + + +/** + * optional bool is_sensitive = 4; + * @return {boolean} + */ +proto.io.defang.v1.Config.prototype.getIsSensitive = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false)); +}; + + +/** + * @param {boolean} value + * @return {!proto.io.defang.v1.Config} returns this + */ +proto.io.defang.v1.Config.prototype.setIsSensitive = function(value) { + return jspb.Message.setProto3BooleanField(this, 4, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.ConfigKey.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.ConfigKey.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.ConfigKey} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.ConfigKey.toObject = function(includeInstance, msg) { + var f, obj = { + name: jspb.Message.getFieldWithDefault(msg, 1, ""), + project: jspb.Message.getFieldWithDefault(msg, 2, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.ConfigKey} + */ +proto.io.defang.v1.ConfigKey.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.ConfigKey; + return proto.io.defang.v1.ConfigKey.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.ConfigKey} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.ConfigKey} + */ +proto.io.defang.v1.ConfigKey.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setName(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.ConfigKey.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.ConfigKey.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.ConfigKey} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.ConfigKey.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getName(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } +}; + + +/** + * optional string name = 1; + * @return {string} + */ +proto.io.defang.v1.ConfigKey.prototype.getName = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.ConfigKey} returns this + */ +proto.io.defang.v1.ConfigKey.prototype.setName = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string project = 2; + * @return {string} + */ +proto.io.defang.v1.ConfigKey.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.ConfigKey} returns this + */ +proto.io.defang.v1.ConfigKey.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.io.defang.v1.GetConfigsRequest.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.GetConfigsRequest.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.GetConfigsRequest.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.GetConfigsRequest} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.GetConfigsRequest.toObject = function(includeInstance, msg) { + var f, obj = { + configsList: jspb.Message.toObjectList(msg.getConfigsList(), + proto.io.defang.v1.ConfigKey.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.GetConfigsRequest} + */ +proto.io.defang.v1.GetConfigsRequest.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.GetConfigsRequest; + return proto.io.defang.v1.GetConfigsRequest.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.GetConfigsRequest} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.GetConfigsRequest} + */ +proto.io.defang.v1.GetConfigsRequest.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.io.defang.v1.ConfigKey; + reader.readMessage(value,proto.io.defang.v1.ConfigKey.deserializeBinaryFromReader); + msg.addConfigs(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.GetConfigsRequest.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.GetConfigsRequest.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.GetConfigsRequest} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.GetConfigsRequest.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getConfigsList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.io.defang.v1.ConfigKey.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated ConfigKey configs = 1; + * @return {!Array} + */ +proto.io.defang.v1.GetConfigsRequest.prototype.getConfigsList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.io.defang.v1.ConfigKey, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.io.defang.v1.GetConfigsRequest} returns this +*/ +proto.io.defang.v1.GetConfigsRequest.prototype.setConfigsList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.io.defang.v1.ConfigKey=} opt_value + * @param {number=} opt_index + * @return {!proto.io.defang.v1.ConfigKey} + */ +proto.io.defang.v1.GetConfigsRequest.prototype.addConfigs = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.io.defang.v1.ConfigKey, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.io.defang.v1.GetConfigsRequest} returns this + */ +proto.io.defang.v1.GetConfigsRequest.prototype.clearConfigsList = function() { + return this.setConfigsList([]); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.io.defang.v1.GetConfigsResponse.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.GetConfigsResponse.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.GetConfigsResponse.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.GetConfigsResponse} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.GetConfigsResponse.toObject = function(includeInstance, msg) { + var f, obj = { + configsList: jspb.Message.toObjectList(msg.getConfigsList(), + proto.io.defang.v1.Config.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.GetConfigsResponse} + */ +proto.io.defang.v1.GetConfigsResponse.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.GetConfigsResponse; + return proto.io.defang.v1.GetConfigsResponse.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.GetConfigsResponse} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.GetConfigsResponse} + */ +proto.io.defang.v1.GetConfigsResponse.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.io.defang.v1.Config; + reader.readMessage(value,proto.io.defang.v1.Config.deserializeBinaryFromReader); + msg.addConfigs(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.GetConfigsResponse.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.GetConfigsResponse.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.GetConfigsResponse} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.GetConfigsResponse.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getConfigsList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.io.defang.v1.Config.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated Config configs = 1; + * @return {!Array} + */ +proto.io.defang.v1.GetConfigsResponse.prototype.getConfigsList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.io.defang.v1.Config, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.io.defang.v1.GetConfigsResponse} returns this +*/ +proto.io.defang.v1.GetConfigsResponse.prototype.setConfigsList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.io.defang.v1.Config=} opt_value + * @param {number=} opt_index + * @return {!proto.io.defang.v1.Config} + */ +proto.io.defang.v1.GetConfigsResponse.prototype.addConfigs = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.io.defang.v1.Config, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.io.defang.v1.GetConfigsResponse} returns this + */ +proto.io.defang.v1.GetConfigsResponse.prototype.clearConfigsList = function() { + return this.setConfigsList([]); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.io.defang.v1.DeleteConfigsRequest.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.DeleteConfigsRequest.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.DeleteConfigsRequest.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.DeleteConfigsRequest} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.DeleteConfigsRequest.toObject = function(includeInstance, msg) { + var f, obj = { + configsList: jspb.Message.toObjectList(msg.getConfigsList(), + proto.io.defang.v1.ConfigKey.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.DeleteConfigsRequest} + */ +proto.io.defang.v1.DeleteConfigsRequest.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.DeleteConfigsRequest; + return proto.io.defang.v1.DeleteConfigsRequest.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.DeleteConfigsRequest} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.DeleteConfigsRequest} + */ +proto.io.defang.v1.DeleteConfigsRequest.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.io.defang.v1.ConfigKey; + reader.readMessage(value,proto.io.defang.v1.ConfigKey.deserializeBinaryFromReader); + msg.addConfigs(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.DeleteConfigsRequest.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.DeleteConfigsRequest.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.DeleteConfigsRequest} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.DeleteConfigsRequest.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getConfigsList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.io.defang.v1.ConfigKey.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated ConfigKey configs = 1; + * @return {!Array} + */ +proto.io.defang.v1.DeleteConfigsRequest.prototype.getConfigsList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.io.defang.v1.ConfigKey, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.io.defang.v1.DeleteConfigsRequest} returns this +*/ +proto.io.defang.v1.DeleteConfigsRequest.prototype.setConfigsList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.io.defang.v1.ConfigKey=} opt_value + * @param {number=} opt_index + * @return {!proto.io.defang.v1.ConfigKey} + */ +proto.io.defang.v1.DeleteConfigsRequest.prototype.addConfigs = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.io.defang.v1.ConfigKey, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.io.defang.v1.DeleteConfigsRequest} returns this + */ +proto.io.defang.v1.DeleteConfigsRequest.prototype.clearConfigsList = function() { + return this.setConfigsList([]); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.io.defang.v1.PutConfigRequest.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.PutConfigRequest.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.io.defang.v1.PutConfigRequest} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.PutConfigRequest.toObject = function(includeInstance, msg) { + var f, obj = { + name: jspb.Message.getFieldWithDefault(msg, 1, ""), + value: jspb.Message.getFieldWithDefault(msg, 2, ""), + project: jspb.Message.getFieldWithDefault(msg, 3, ""), + isSensitive: jspb.Message.getBooleanFieldWithDefault(msg, 4, false) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.io.defang.v1.PutConfigRequest} + */ +proto.io.defang.v1.PutConfigRequest.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.io.defang.v1.PutConfigRequest; + return proto.io.defang.v1.PutConfigRequest.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.io.defang.v1.PutConfigRequest} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.io.defang.v1.PutConfigRequest} + */ +proto.io.defang.v1.PutConfigRequest.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setName(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setValue(value); + break; + case 3: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; + case 4: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setIsSensitive(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.io.defang.v1.PutConfigRequest.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.io.defang.v1.PutConfigRequest.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.io.defang.v1.PutConfigRequest} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.io.defang.v1.PutConfigRequest.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getName(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getValue(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 3, + f + ); + } + f = message.getIsSensitive(); + if (f) { + writer.writeBool( + 4, + f + ); + } +}; + + +/** + * optional string name = 1; + * @return {string} + */ +proto.io.defang.v1.PutConfigRequest.prototype.getName = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.PutConfigRequest} returns this + */ +proto.io.defang.v1.PutConfigRequest.prototype.setName = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string value = 2; + * @return {string} + */ +proto.io.defang.v1.PutConfigRequest.prototype.getValue = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.PutConfigRequest} returns this + */ +proto.io.defang.v1.PutConfigRequest.prototype.setValue = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + +/** + * optional string project = 3; + * @return {string} */ -proto.io.defang.v1.ServiceInfo.prototype.setUseAcmeCert = function(value) { - return jspb.Message.setProto3BooleanField(this, 13, value); +proto.io.defang.v1.PutConfigRequest.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, "")); }; /** - * optional ServiceState state = 15; - * @return {!proto.io.defang.v1.ServiceState} + * @param {string} value + * @return {!proto.io.defang.v1.PutConfigRequest} returns this */ -proto.io.defang.v1.ServiceInfo.prototype.getState = function() { - return /** @type {!proto.io.defang.v1.ServiceState} */ (jspb.Message.getFieldWithDefault(this, 15, 0)); +proto.io.defang.v1.PutConfigRequest.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 3, value); }; /** - * @param {!proto.io.defang.v1.ServiceState} value - * @return {!proto.io.defang.v1.ServiceInfo} returns this + * optional bool is_sensitive = 4; + * @return {boolean} */ -proto.io.defang.v1.ServiceInfo.prototype.setState = function(value) { - return jspb.Message.setProto3EnumField(this, 15, value); +proto.io.defang.v1.PutConfigRequest.prototype.getIsSensitive = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false)); }; - /** - * List of repeated fields within this message type. - * @private {!Array} - * @const + * @param {boolean} value + * @return {!proto.io.defang.v1.PutConfigRequest} returns this */ -proto.io.defang.v1.Secrets.repeatedFields_ = [1]; +proto.io.defang.v1.PutConfigRequest.prototype.setIsSensitive = function(value) { + return jspb.Message.setProto3BooleanField(this, 4, value); +}; + + @@ -4683,8 +6422,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) { * http://goto/soy-param-migration * @return {!Object} */ -proto.io.defang.v1.Secrets.prototype.toObject = function(opt_includeInstance) { - return proto.io.defang.v1.Secrets.toObject(opt_includeInstance, this); +proto.io.defang.v1.ListConfigsRequest.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.ListConfigsRequest.toObject(opt_includeInstance, this); }; @@ -4693,14 +6432,13 @@ proto.io.defang.v1.Secrets.prototype.toObject = function(opt_includeInstance) { * @param {boolean|undefined} includeInstance Deprecated. Whether to include * the JSPB instance for transitional soy proto support: * http://goto/soy-param-migration - * @param {!proto.io.defang.v1.Secrets} msg The msg instance to transform. + * @param {!proto.io.defang.v1.ListConfigsRequest} msg The msg instance to transform. * @return {!Object} * @suppress {unusedLocalVariables} f is only used for nested messages */ -proto.io.defang.v1.Secrets.toObject = function(includeInstance, msg) { +proto.io.defang.v1.ListConfigsRequest.toObject = function(includeInstance, msg) { var f, obj = { - namesList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f, - project: jspb.Message.getFieldWithDefault(msg, 2, "") + project: jspb.Message.getFieldWithDefault(msg, 1, "") }; if (includeInstance) { @@ -4714,23 +6452,23 @@ proto.io.defang.v1.Secrets.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). * @param {jspb.ByteSource} bytes The bytes to deserialize. - * @return {!proto.io.defang.v1.Secrets} + * @return {!proto.io.defang.v1.ListConfigsRequest} */ -proto.io.defang.v1.Secrets.deserializeBinary = function(bytes) { +proto.io.defang.v1.ListConfigsRequest.deserializeBinary = function(bytes) { var reader = new jspb.BinaryReader(bytes); - var msg = new proto.io.defang.v1.Secrets; - return proto.io.defang.v1.Secrets.deserializeBinaryFromReader(msg, reader); + var msg = new proto.io.defang.v1.ListConfigsRequest; + return proto.io.defang.v1.ListConfigsRequest.deserializeBinaryFromReader(msg, reader); }; /** * Deserializes binary data (in protobuf wire format) from the * given reader into the given message object. - * @param {!proto.io.defang.v1.Secrets} msg The message object to deserialize into. + * @param {!proto.io.defang.v1.ListConfigsRequest} msg The message object to deserialize into. * @param {!jspb.BinaryReader} reader The BinaryReader to use. - * @return {!proto.io.defang.v1.Secrets} + * @return {!proto.io.defang.v1.ListConfigsRequest} */ -proto.io.defang.v1.Secrets.deserializeBinaryFromReader = function(msg, reader) { +proto.io.defang.v1.ListConfigsRequest.deserializeBinaryFromReader = function(msg, reader) { while (reader.nextField()) { if (reader.isEndGroup()) { break; @@ -4738,10 +6476,6 @@ proto.io.defang.v1.Secrets.deserializeBinaryFromReader = function(msg, reader) { var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); - msg.addNames(value); - break; - case 2: var value = /** @type {string} */ (reader.readString()); msg.setProject(value); break; @@ -4758,9 +6492,9 @@ proto.io.defang.v1.Secrets.deserializeBinaryFromReader = function(msg, reader) { * Serializes the message to binary data (in protobuf wire format). * @return {!Uint8Array} */ -proto.io.defang.v1.Secrets.prototype.serializeBinary = function() { +proto.io.defang.v1.ListConfigsRequest.prototype.serializeBinary = function() { var writer = new jspb.BinaryWriter(); - proto.io.defang.v1.Secrets.serializeBinaryToWriter(this, writer); + proto.io.defang.v1.ListConfigsRequest.serializeBinaryToWriter(this, writer); return writer.getResultBuffer(); }; @@ -4768,23 +6502,16 @@ proto.io.defang.v1.Secrets.prototype.serializeBinary = function() { /** * Serializes the given message to binary data (in protobuf wire * format), writing to the given BinaryWriter. - * @param {!proto.io.defang.v1.Secrets} message + * @param {!proto.io.defang.v1.ListConfigsRequest} message * @param {!jspb.BinaryWriter} writer * @suppress {unusedLocalVariables} f is only used for nested messages */ -proto.io.defang.v1.Secrets.serializeBinaryToWriter = function(message, writer) { +proto.io.defang.v1.ListConfigsRequest.serializeBinaryToWriter = function(message, writer) { var f = undefined; - f = message.getNamesList(); - if (f.length > 0) { - writer.writeRepeatedString( - 1, - f - ); - } f = message.getProject(); if (f.length > 0) { writer.writeString( - 2, + 1, f ); } @@ -4792,60 +6519,30 @@ proto.io.defang.v1.Secrets.serializeBinaryToWriter = function(message, writer) { /** - * repeated string names = 1; - * @return {!Array} - */ -proto.io.defang.v1.Secrets.prototype.getNamesList = function() { - return /** @type {!Array} */ (jspb.Message.getRepeatedField(this, 1)); -}; - - -/** - * @param {!Array} value - * @return {!proto.io.defang.v1.Secrets} returns this + * optional string project = 1; + * @return {string} */ -proto.io.defang.v1.Secrets.prototype.setNamesList = function(value) { - return jspb.Message.setField(this, 1, value || []); +proto.io.defang.v1.ListConfigsRequest.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); }; /** * @param {string} value - * @param {number=} opt_index - * @return {!proto.io.defang.v1.Secrets} returns this - */ -proto.io.defang.v1.Secrets.prototype.addNames = function(value, opt_index) { - return jspb.Message.addToRepeatedField(this, 1, value, opt_index); -}; - - -/** - * Clears the list making it empty but non-null. - * @return {!proto.io.defang.v1.Secrets} returns this + * @return {!proto.io.defang.v1.ListConfigsRequest} returns this */ -proto.io.defang.v1.Secrets.prototype.clearNamesList = function() { - return this.setNamesList([]); +proto.io.defang.v1.ListConfigsRequest.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); }; -/** - * optional string project = 2; - * @return {string} - */ -proto.io.defang.v1.Secrets.prototype.getProject = function() { - return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); -}; - /** - * @param {string} value - * @return {!proto.io.defang.v1.Secrets} returns this + * List of repeated fields within this message type. + * @private {!Array} + * @const */ -proto.io.defang.v1.Secrets.prototype.setProject = function(value) { - return jspb.Message.setProto3StringField(this, 2, value); -}; - - +proto.io.defang.v1.ListConfigsResponse.repeatedFields_ = [1]; @@ -4862,8 +6559,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) { * http://goto/soy-param-migration * @return {!Object} */ -proto.io.defang.v1.SecretValue.prototype.toObject = function(opt_includeInstance) { - return proto.io.defang.v1.SecretValue.toObject(opt_includeInstance, this); +proto.io.defang.v1.ListConfigsResponse.prototype.toObject = function(opt_includeInstance) { + return proto.io.defang.v1.ListConfigsResponse.toObject(opt_includeInstance, this); }; @@ -4872,15 +6569,14 @@ proto.io.defang.v1.SecretValue.prototype.toObject = function(opt_includeInstance * @param {boolean|undefined} includeInstance Deprecated. Whether to include * the JSPB instance for transitional soy proto support: * http://goto/soy-param-migration - * @param {!proto.io.defang.v1.SecretValue} msg The msg instance to transform. + * @param {!proto.io.defang.v1.ListConfigsResponse} msg The msg instance to transform. * @return {!Object} * @suppress {unusedLocalVariables} f is only used for nested messages */ -proto.io.defang.v1.SecretValue.toObject = function(includeInstance, msg) { +proto.io.defang.v1.ListConfigsResponse.toObject = function(includeInstance, msg) { var f, obj = { - name: jspb.Message.getFieldWithDefault(msg, 1, ""), - value: jspb.Message.getFieldWithDefault(msg, 2, ""), - project: jspb.Message.getFieldWithDefault(msg, 3, "") + configsList: jspb.Message.toObjectList(msg.getConfigsList(), + proto.io.defang.v1.ConfigKey.toObject, includeInstance) }; if (includeInstance) { @@ -4894,23 +6590,23 @@ proto.io.defang.v1.SecretValue.toObject = function(includeInstance, msg) { /** * Deserializes binary data (in protobuf wire format). * @param {jspb.ByteSource} bytes The bytes to deserialize. - * @return {!proto.io.defang.v1.SecretValue} + * @return {!proto.io.defang.v1.ListConfigsResponse} */ -proto.io.defang.v1.SecretValue.deserializeBinary = function(bytes) { +proto.io.defang.v1.ListConfigsResponse.deserializeBinary = function(bytes) { var reader = new jspb.BinaryReader(bytes); - var msg = new proto.io.defang.v1.SecretValue; - return proto.io.defang.v1.SecretValue.deserializeBinaryFromReader(msg, reader); + var msg = new proto.io.defang.v1.ListConfigsResponse; + return proto.io.defang.v1.ListConfigsResponse.deserializeBinaryFromReader(msg, reader); }; /** * Deserializes binary data (in protobuf wire format) from the * given reader into the given message object. - * @param {!proto.io.defang.v1.SecretValue} msg The message object to deserialize into. + * @param {!proto.io.defang.v1.ListConfigsResponse} msg The message object to deserialize into. * @param {!jspb.BinaryReader} reader The BinaryReader to use. - * @return {!proto.io.defang.v1.SecretValue} + * @return {!proto.io.defang.v1.ListConfigsResponse} */ -proto.io.defang.v1.SecretValue.deserializeBinaryFromReader = function(msg, reader) { +proto.io.defang.v1.ListConfigsResponse.deserializeBinaryFromReader = function(msg, reader) { while (reader.nextField()) { if (reader.isEndGroup()) { break; @@ -4918,16 +6614,9 @@ proto.io.defang.v1.SecretValue.deserializeBinaryFromReader = function(msg, reade var field = reader.getFieldNumber(); switch (field) { case 1: - var value = /** @type {string} */ (reader.readString()); - msg.setName(value); - break; - case 2: - var value = /** @type {string} */ (reader.readString()); - msg.setValue(value); - break; - case 3: - var value = /** @type {string} */ (reader.readString()); - msg.setProject(value); + var value = new proto.io.defang.v1.ConfigKey; + reader.readMessage(value,proto.io.defang.v1.ConfigKey.deserializeBinaryFromReader); + msg.addConfigs(value); break; default: reader.skipField(); @@ -4942,9 +6631,9 @@ proto.io.defang.v1.SecretValue.deserializeBinaryFromReader = function(msg, reade * Serializes the message to binary data (in protobuf wire format). * @return {!Uint8Array} */ -proto.io.defang.v1.SecretValue.prototype.serializeBinary = function() { +proto.io.defang.v1.ListConfigsResponse.prototype.serializeBinary = function() { var writer = new jspb.BinaryWriter(); - proto.io.defang.v1.SecretValue.serializeBinaryToWriter(this, writer); + proto.io.defang.v1.ListConfigsResponse.serializeBinaryToWriter(this, writer); return writer.getResultBuffer(); }; @@ -4952,87 +6641,58 @@ proto.io.defang.v1.SecretValue.prototype.serializeBinary = function() { /** * Serializes the given message to binary data (in protobuf wire * format), writing to the given BinaryWriter. - * @param {!proto.io.defang.v1.SecretValue} message + * @param {!proto.io.defang.v1.ListConfigsResponse} message * @param {!jspb.BinaryWriter} writer * @suppress {unusedLocalVariables} f is only used for nested messages */ -proto.io.defang.v1.SecretValue.serializeBinaryToWriter = function(message, writer) { +proto.io.defang.v1.ListConfigsResponse.serializeBinaryToWriter = function(message, writer) { var f = undefined; - f = message.getName(); + f = message.getConfigsList(); if (f.length > 0) { - writer.writeString( + writer.writeRepeatedMessage( 1, - f - ); - } - f = message.getValue(); - if (f.length > 0) { - writer.writeString( - 2, - f - ); - } - f = message.getProject(); - if (f.length > 0) { - writer.writeString( - 3, - f + f, + proto.io.defang.v1.ConfigKey.serializeBinaryToWriter ); } }; /** - * optional string name = 1; - * @return {string} - */ -proto.io.defang.v1.SecretValue.prototype.getName = function() { - return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); -}; - - -/** - * @param {string} value - * @return {!proto.io.defang.v1.SecretValue} returns this - */ -proto.io.defang.v1.SecretValue.prototype.setName = function(value) { - return jspb.Message.setProto3StringField(this, 1, value); -}; - - -/** - * optional string value = 2; - * @return {string} + * repeated ConfigKey configs = 1; + * @return {!Array} */ -proto.io.defang.v1.SecretValue.prototype.getValue = function() { - return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +proto.io.defang.v1.ListConfigsResponse.prototype.getConfigsList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.io.defang.v1.ConfigKey, 1)); }; /** - * @param {string} value - * @return {!proto.io.defang.v1.SecretValue} returns this - */ -proto.io.defang.v1.SecretValue.prototype.setValue = function(value) { - return jspb.Message.setProto3StringField(this, 2, value); + * @param {!Array} value + * @return {!proto.io.defang.v1.ListConfigsResponse} returns this +*/ +proto.io.defang.v1.ListConfigsResponse.prototype.setConfigsList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); }; /** - * optional string project = 3; - * @return {string} + * @param {!proto.io.defang.v1.ConfigKey=} opt_value + * @param {number=} opt_index + * @return {!proto.io.defang.v1.ConfigKey} */ -proto.io.defang.v1.SecretValue.prototype.getProject = function() { - return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, "")); +proto.io.defang.v1.ListConfigsResponse.prototype.addConfigs = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.io.defang.v1.ConfigKey, opt_index); }; /** - * @param {string} value - * @return {!proto.io.defang.v1.SecretValue} returns this + * Clears the list making it empty but non-null. + * @return {!proto.io.defang.v1.ListConfigsResponse} returns this */ -proto.io.defang.v1.SecretValue.prototype.setProject = function(value) { - return jspb.Message.setProto3StringField(this, 3, value); +proto.io.defang.v1.ListConfigsResponse.prototype.clearConfigsList = function() { + return this.setConfigsList([]); }; @@ -6812,7 +8472,8 @@ proto.io.defang.v1.ProjectUpdate.toObject = function(includeInstance, msg) { servicesList: jspb.Message.toObjectList(msg.getServicesList(), proto.io.defang.v1.ServiceInfo.toObject, includeInstance), albArn: jspb.Message.getFieldWithDefault(msg, 2, ""), - project: jspb.Message.getFieldWithDefault(msg, 3, "") + project: jspb.Message.getFieldWithDefault(msg, 3, ""), + compose: (f = msg.getCompose()) && google_protobuf_struct_pb.Struct.toObject(includeInstance, f) }; if (includeInstance) { @@ -6862,6 +8523,11 @@ proto.io.defang.v1.ProjectUpdate.deserializeBinaryFromReader = function(msg, rea var value = /** @type {string} */ (reader.readString()); msg.setProject(value); break; + case 4: + var value = new google_protobuf_struct_pb.Struct; + reader.readMessage(value,google_protobuf_struct_pb.Struct.deserializeBinaryFromReader); + msg.setCompose(value); + break; default: reader.skipField(); break; @@ -6913,6 +8579,14 @@ proto.io.defang.v1.ProjectUpdate.serializeBinaryToWriter = function(message, wri f ); } + f = message.getCompose(); + if (f != null) { + writer.writeMessage( + 4, + f, + google_protobuf_struct_pb.Struct.serializeBinaryToWriter + ); + } }; @@ -6990,6 +8664,43 @@ proto.io.defang.v1.ProjectUpdate.prototype.setProject = function(value) { }; +/** + * optional google.protobuf.Struct compose = 4; + * @return {?proto.google.protobuf.Struct} + */ +proto.io.defang.v1.ProjectUpdate.prototype.getCompose = function() { + return /** @type{?proto.google.protobuf.Struct} */ ( + jspb.Message.getWrapperField(this, google_protobuf_struct_pb.Struct, 4)); +}; + + +/** + * @param {?proto.google.protobuf.Struct|undefined} value + * @return {!proto.io.defang.v1.ProjectUpdate} returns this +*/ +proto.io.defang.v1.ProjectUpdate.prototype.setCompose = function(value) { + return jspb.Message.setWrapperField(this, 4, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.io.defang.v1.ProjectUpdate} returns this + */ +proto.io.defang.v1.ProjectUpdate.prototype.clearCompose = function() { + return this.setCompose(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.io.defang.v1.ProjectUpdate.prototype.hasCompose = function() { + return jspb.Message.getField(this, 4) != null; +}; + + @@ -8765,7 +10476,8 @@ proto.io.defang.v1.Service.toObject = function(includeInstance, msg) { staticFiles: (f = msg.getStaticFiles()) && proto.io.defang.v1.StaticFiles.toObject(includeInstance, f), networks: jspb.Message.getFieldWithDefault(msg, 16, 0), redis: (f = msg.getRedis()) && proto.io.defang.v1.Redis.toObject(includeInstance, f), - postgres: (f = msg.getPostgres()) && proto.io.defang.v1.Postgres.toObject(includeInstance, f) + postgres: (f = msg.getPostgres()) && proto.io.defang.v1.Postgres.toObject(includeInstance, f), + project: jspb.Message.getFieldWithDefault(msg, 20, "") }; if (includeInstance) { @@ -8884,6 +10596,10 @@ proto.io.defang.v1.Service.deserializeBinaryFromReader = function(msg, reader) { reader.readMessage(value,proto.io.defang.v1.Postgres.deserializeBinaryFromReader); msg.setPostgres(value); break; + case 20: + var value = /** @type {string} */ (reader.readString()); + msg.setProject(value); + break; default: reader.skipField(); break; @@ -9044,6 +10760,13 @@ proto.io.defang.v1.Service.serializeBinaryToWriter = function(message, writer) { proto.io.defang.v1.Postgres.serializeBinaryToWriter ); } + f = message.getProject(); + if (f.length > 0) { + writer.writeString( + 20, + f + ); + } }; @@ -9548,6 +11271,24 @@ proto.io.defang.v1.Service.prototype.hasPostgres = function() { }; +/** + * optional string project = 20; + * @return {string} + */ +proto.io.defang.v1.Service.prototype.getProject = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 20, "")); +}; + + +/** + * @param {string} value + * @return {!proto.io.defang.v1.Service} returns this + */ +proto.io.defang.v1.Service.prototype.setProject = function(value) { + return jspb.Message.setProto3StringField(this, 20, value); +}; + + /** * List of repeated fields within this message type. @@ -11435,6 +13176,16 @@ proto.io.defang.v1.WhoAmIResponse.prototype.setUserId = function(value) { }; +/** + * @enum {number} + */ +proto.io.defang.v1.DeploymentMode = { + UNSPECIFIED_MODE: 0, + DEVELOPMENT: 1, + STAGING: 2, + PRODUCTION: 3 +}; + /** * @enum {number} */