// // Copyright 2020 Docker Compose CLI authors // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // http://www.apache.org/licenses/LICENSE-2.0 // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; package com.docker.api.protos.compose.v1; option go_package = "github.com/docker/compose-cli/cli/server/protos/compose/v1;v1"; service Compose { rpc Up(ComposeUpRequest) returns (ComposeUpResponse); rpc Down(ComposeDownRequest) returns (ComposeDownResponse); rpc Stacks(ComposeStacksRequest)returns (ComposeStacksResponse); rpc Services(ComposeServicesRequest)returns (ComposeServicesResponse); } message ComposeUpRequest { string projectName = 1; string workDir = 2; repeated string files = 3; } message ComposeUpResponse { string projectName = 1; } message ComposeDownRequest { string projectName = 1; string workDir = 2; repeated string files = 3; } message ComposeDownResponse { string projectName = 1; } message ComposeStacksRequest { string projectName = 1; bool all = 2; } message ComposeStacksResponse { repeated Stack stacks = 1; } message Stack { string id = 1; string name = 2; string status = 3; string reason = 4; } message ComposeServicesRequest { string projectName = 1; string workDir = 2; repeated string files = 3; } message ComposeServicesResponse { repeated Service services = 1; } message Service { string id = 1; string name = 2; uint32 replicas = 3; uint32 desired = 4; repeated string Ports = 5; }