github.com/argoproj/argo-cd@v1.8.7/reposerver/repository/repository.proto (about)

     1  syntax = "proto3";
     2  option go_package = "github.com/argoproj/argo-cd/reposerver/apiclient";
     3  
     4  package repository;
     5  
     6  import "gogoproto/gogo.proto";
     7  import "google/api/annotations.proto";
     8  import "k8s.io/api/core/v1/generated.proto";
     9  import "github.com/argoproj/argo-cd/pkg/apis/application/v1alpha1/generated.proto";
    10  
    11  // ManifestRequest is a query for manifest generation.
    12  message ManifestRequest {
    13      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
    14      // revision, potentially un-resolved
    15      string revision = 2;
    16      bool noCache = 3;
    17      string appLabelKey = 4;
    18      string appLabelValue = 5;
    19      string namespace = 8;
    20      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.ApplicationSource applicationSource = 10;
    21      repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repos = 11;
    22      repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.ConfigManagementPlugin plugins = 12;
    23      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.KustomizeOptions kustomizeOptions = 13;
    24      string kubeVersion = 14;
    25      repeated string apiVersions = 15;
    26      // Request to verify the signature when generating the manifests (only for Git repositories)
    27      bool verifySignature = 16;
    28  }
    29  
    30  message ManifestResponse {
    31      repeated string manifests = 1;
    32      string namespace = 2;
    33      string server = 3;
    34      // resolved revision
    35      string revision = 4;
    36      string sourceType = 6;
    37      // Raw response of git verify-commit operation (always the empty string for Helm)
    38      string verifyResult = 7;
    39  }
    40  
    41  message ListRefsRequest {
    42    github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
    43  }
    44  
    45  // A subset of the repository's named refs
    46  message Refs {
    47    repeated string branches = 1;
    48    repeated string tags = 2;
    49  }
    50  
    51  // ListAppsRequest requests a repository directory structure
    52  message ListAppsRequest {
    53      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
    54      string revision = 2;
    55  }
    56  
    57  // AppList returns the contents of the repo of a ListApps request
    58  message AppList {
    59      map<string, string> apps = 1;
    60  }
    61  
    62  // RepoServerAppDetailsQuery contains query information for app details request
    63  message RepoServerAppDetailsQuery {
    64      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
    65      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.ApplicationSource source = 2;
    66      repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repos = 3;
    67      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.KustomizeOptions kustomizeOptions = 4;
    68  }
    69  
    70  // RepoAppDetailsResponse application details
    71  message RepoAppDetailsResponse {
    72  	string type = 1;
    73  	KsonnetAppSpec ksonnet = 2;
    74  	HelmAppSpec helm = 3;
    75  	KustomizeAppSpec kustomize = 4;
    76  	DirectoryAppSpec directory = 5;
    77  }
    78  
    79  message RepoServerRevisionMetadataRequest {
    80      // the repo
    81      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
    82      // the revision within the repo
    83      string revision = 2;
    84      // whether to check signature on revision
    85      bool checkSignature = 3;
    86  }
    87  
    88  // KsonnetAppSpec contains Ksonnet app response
    89  // This roughly reflects: ksonnet/ksonnet/metadata/app/schema.go
    90  message KsonnetAppSpec {
    91  	string name = 1;
    92  	map<string, KsonnetEnvironment> environments = 3;
    93  	repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.KsonnetParameter parameters = 4;
    94  }
    95  
    96  // HelmAppSpec contains helm app name  in source repo
    97  message HelmAppSpec {
    98  	string name = 1;
    99  	repeated string valueFiles = 3;
   100  	// the output of `helm inspect values`
   101  	repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.HelmParameter parameters = 4;
   102  	// the contents of values.yaml
   103  	string values = 5;
   104      // helm file parameters
   105      repeated github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.HelmFileParameter fileParameters = 6;
   106  }
   107  
   108  // KustomizeAppSpec contains kustomize images
   109  message KustomizeAppSpec {
   110  	// images is a list of available images.
   111  	repeated string images = 3;
   112  }
   113  
   114  message KsonnetEnvironment {
   115      // Name is the user defined name of an environment
   116      string name = 1;
   117      // KubernetesVersion is the kubernetes version the targeted cluster is running on.
   118      string k8sVersion = 2;
   119      // Destination stores the cluster address that this environment points to.
   120      KsonnetEnvironmentDestination destination = 4;
   121  }
   122  
   123  message KsonnetEnvironmentDestination {
   124      // Server is the Kubernetes server that the cluster is running on.
   125      string server = 1;
   126      // Namespace is the namespace of the Kubernetes server that targets should be deployed to
   127      string namespace = 2;
   128  }
   129  
   130  // DirectoryAppSpec contains directory
   131  message DirectoryAppSpec {
   132  }
   133  
   134  
   135  message HelmChartsRequest {
   136      github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.Repository repo = 1;
   137  }
   138  
   139  message HelmChart {
   140      string name = 1;
   141      repeated string versions = 2;
   142  }
   143  
   144  message HelmChartsResponse {
   145      repeated HelmChart items = 1;
   146  }
   147  
   148  // ManifestService
   149  service RepoServerService {
   150  
   151      // GenerateManifest generates manifest for application in specified repo name and revision
   152      rpc GenerateManifest(ManifestRequest) returns (ManifestResponse) {
   153      }
   154  
   155      // Returns a list of refs (eg. branches and tags) in the repo
   156      rpc ListRefs(ListRefsRequest) returns (Refs) {
   157      }
   158  
   159      // ListApps returns a list of apps in the repo
   160      rpc ListApps(ListAppsRequest) returns (AppList) {
   161      }
   162  
   163      // Generate manifest for application in specified repo name and revision
   164      rpc GetAppDetails(RepoServerAppDetailsQuery) returns (RepoAppDetailsResponse) {
   165      }
   166  
   167      // Get the meta-data (author, date, tags, message) for a specific revision of the repo
   168      rpc GetRevisionMetadata(RepoServerRevisionMetadataRequest) returns (github.com.argoproj.argo_cd.pkg.apis.application.v1alpha1.RevisionMetadata) {
   169      }
   170  
   171      // GetHelmCharts returns list of helm charts in the specified repository
   172      rpc GetHelmCharts(HelmChartsRequest) returns (HelmChartsResponse) {
   173      }
   174  }