github.com/pachyderm/pachyderm@v1.13.4/src/client/pkg/config/config.proto (about) 1 syntax = "proto3"; 2 3 package config; 4 option go_package = "github.com/pachyderm/pachyderm/src/client/pkg/config"; 5 6 import "gogoproto/gogo.proto"; 7 8 // Config specifies the pachyderm config that is read and interpreted by the 9 // pachctl command-line tool. Right now, this is stored at 10 // $HOME/.pachyderm/config. 11 // 12 // Different versions of the pachyderm config are specified as subfields of this 13 // message (this allows us to make significant changes to the config structure 14 // without breaking existing users by defining a new config version). 15 // 16 // DO NOT change or remove field numbers from this proto, otherwise ALL 17 // pachyderm user configs will fail to parse. 18 message Config { 19 string user_id = 1 [(gogoproto.customname) = "UserID"]; 20 21 // Configuration options. Exactly one of these fields should be set 22 // (depending on which version of the config is being used) 23 ConfigV1 v1 = 2; 24 ConfigV2 v2 = 3; 25 } 26 27 // ConfigV1 specifies v1 of the pachyderm config (June 30 2017 - June 2019) 28 // DO NOT change or remove field numbers from this proto, as if you do, v1 user 29 // configs will become unparseable. 30 message ConfigV1 { 31 // A host:port pointing pachd at a pachyderm cluster. 32 string pachd_address = 2; 33 34 // Trusted root certificates (overrides installed certificates), formatted 35 // as base64-encoded PEM 36 string server_cas = 3 [(gogoproto.customname) = "ServerCAs"]; 37 38 // A secret token identifying the current pachctl user within their 39 // pachyderm cluster. This is included in all RPCs sent by pachctl, and used 40 // to determine if pachctl actions are authorized. 41 string session_token = 1; 42 43 // The currently active transaction for batching together pachctl commands. 44 // This can be set or cleared via many of the `pachctl * transaction` commands. 45 // This is the ID of the transaction object stored in the pachyderm etcd. 46 string active_transaction = 4; 47 } 48 49 // ConfigV2 specifies v2 of the pachyderm config (June 2019 - present) 50 message ConfigV2 { 51 string active_context = 1; 52 map<string, Context> contexts = 2; 53 bool metrics = 3; 54 int64 max_shell_completions = 4; 55 } 56 57 message Context { 58 reserved 9; 59 60 // Where this context came from 61 ContextSource source = 1; 62 63 // The hostname or IP address pointing pachd at a pachyderm cluster. 64 string pachd_address = 2; 65 66 // Trusted root certificates (overrides installed certificates), formatted 67 // as base64-encoded PEM. 68 string server_cas = 3 [(gogoproto.customname) = "ServerCAs"]; 69 70 // A secret token identifying the current pachctl user within their 71 // pachyderm cluster. This is included in all RPCs sent by pachctl, and used 72 // to determine if pachctl actions are authorized. 73 string session_token = 4; 74 75 // The currently active transaction for batching together pachctl commands. 76 // This can be set or cleared via many of the `pachctl * transaction` commands. 77 // This is the ID of the transaction object stored in the pachyderm etcd. 78 string active_transaction = 5; 79 80 // The k8s cluster name - used to construct a k8s context. 81 string cluster_name = 6; 82 83 // The k8s auth info - used to construct a k8s context. 84 string auth_info = 7; 85 86 // The k8s namespace - used to construct a k8s context. 87 string namespace = 8; 88 89 // A mapping of service -> port number, when port forwarding is 90 // running for this context. 91 map<string, uint32> port_forwarders = 10; 92 93 // A unique ID for the cluster deployment. At client initialization time, 94 // we ensure this is the same as what the cluster reports back, to prevent 95 // us from connecting to the wrong cluster. 96 string cluster_deployment_id = 11 [(gogoproto.customname) = "ClusterDeploymentID"]; 97 } 98 99 enum ContextSource { 100 NONE = 0; 101 CONFIG_V1 = 1; 102 HUB = 2; 103 IMPORTED = 3; 104 }