github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/web/src/view.d.ts (about) 1 // Autogenerated: DO NOT EDIT 2 declare namespace Proto { 3 export interface webviewView { 4 log?: string; 5 resources?: webviewResource[]; 6 /** 7 * We used to have a setting that allowed users to dynamically 8 * prepend timestamps in logs. 9 */ 10 DEPRECATEDLogTimestamps?: boolean; 11 featureFlags?: object; 12 needsAnalyticsNudge?: boolean; 13 runningTiltBuild?: webviewTiltBuild; 14 DEPRECATEDLatestTiltBuild?: webviewTiltBuild; 15 suggestedTiltVersion?: string; 16 versionSettings?: webviewVersionSettings; 17 tiltCloudUsername?: string; 18 tiltCloudTeamName?: string; 19 tiltCloudSchemeHost?: string; 20 tiltCloudTeamID?: string; 21 fatalError?: string; 22 logList?: webviewLogList; 23 /** 24 * Allows us to synchronize on a running Tilt instance, 25 * so we can tell when Tilt restarted. 26 */ 27 tiltStartTime?: string; 28 tiltfileKey?: string; 29 /** 30 * New API-server based data models. 31 */ 32 uiSession?: v1alpha1UISession; 33 uiResources?: v1alpha1UIResource[]; 34 uiButtons?: v1alpha1UIButton[]; 35 clusters?: v1alpha1Cluster[]; 36 /** 37 * indicates that this view is a complete representation of the app 38 * if false, this view just contains deltas from a previous view. 39 */ 40 isComplete?: boolean; 41 } 42 export interface webviewVersionSettings { 43 checkUpdates?: boolean; 44 } 45 export interface webviewUploadSnapshotResponse { 46 url?: string; 47 } 48 export interface webviewTiltBuild { 49 version?: string; 50 commitSHA?: string; 51 date?: string; 52 dev?: boolean; 53 } 54 export interface webviewTargetSpec { 55 id?: string; 56 type?: string; 57 hasLiveUpdate?: boolean; 58 } 59 export interface webviewSnapshotHighlight { 60 beginningLogID?: string; 61 endingLogID?: string; 62 text?: string; 63 } 64 export interface webviewSnapshot { 65 view?: webviewView; 66 isSidebarClosed?: boolean; 67 path?: string; 68 snapshotHighlight?: webviewSnapshotHighlight; 69 snapshotLink?: string; 70 createdAt?: string; 71 } 72 export interface webviewResource { 73 name?: string; 74 lastDeployTime?: string; 75 triggerMode?: number; 76 buildHistory?: webviewBuildRecord[]; 77 currentBuild?: webviewBuildRecord; 78 pendingBuildSince?: string; 79 hasPendingChanges?: boolean; 80 endpointLinks?: webviewLink[]; 81 podID?: string; 82 k8sResourceInfo?: webviewK8sResourceInfo; 83 localResourceInfo?: webviewLocalResourceInfo; 84 runtimeStatus?: string; 85 updateStatus?: string; 86 isTiltfile?: boolean; 87 specs?: webviewTargetSpec[]; 88 queued?: boolean; 89 } 90 export interface webviewLogSpan { 91 manifestName?: string; 92 } 93 export interface webviewLogSegment { 94 spanId?: string; 95 time?: string; 96 text?: string; 97 level?: string; 98 /** 99 * When we store warnings in the LogStore, we break them up into lines and 100 * store them as a series of line segments. 'anchor' marks the beginning of a 101 * series of logs that should be kept together. 102 * 103 * Anchor warning1, line1 104 * warning1, line2 105 * Anchor warning2, line1 106 */ 107 anchor?: boolean; 108 /** 109 * Context-specific optional fields for a log segment. 110 * Used for experimenting with new types of log metadata. 111 */ 112 fields?: object; 113 } 114 export interface webviewLogList { 115 spans?: object; 116 segments?: webviewLogSegment[]; 117 /** 118 * [from_checkpoint, to_checkpoint) 119 * 120 * An interval of [0, 0) means that the server isn't using 121 * the incremental load protocol. 122 * 123 * An interval of [-1, -1) means that the server doesn't have new logs 124 * to send down. 125 */ 126 fromCheckpoint?: number; 127 toCheckpoint?: number; 128 } 129 export interface webviewLocalResourceInfo { 130 pid?: string; 131 isTest?: boolean; 132 } 133 export interface webviewLink { 134 url?: string; 135 name?: string; 136 } 137 export interface webviewK8sResourceInfo { 138 podName?: string; 139 podCreationTime?: string; 140 podUpdateStartTime?: string; 141 podStatus?: string; 142 podStatusMessage?: string; 143 allContainersReady?: boolean; 144 podRestarts?: number; 145 spanId?: string; 146 displayNames?: string[]; 147 } 148 export interface webviewBuildRecord { 149 error?: string; 150 warnings?: string[]; 151 startTime?: string; 152 finishTime?: string; 153 isCrashRebuild?: boolean; 154 /** 155 * The span id for this build record's logs in the main logstore. 156 */ 157 spanId?: string; 158 } 159 export interface webviewAckWebsocketResponse {} 160 export interface webviewAckWebsocketRequest { 161 toCheckpoint?: number; 162 /** 163 * Allows us to synchronize on a running Tilt instance, 164 * so we can tell when we're talking to the same Tilt. 165 */ 166 tiltStartTime?: string; 167 } 168 export interface v1Time { 169 /** 170 * Represents seconds of UTC time since Unix epoch 171 * 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 172 * 9999-12-31T23:59:59Z inclusive. 173 */ 174 seconds?: string; 175 /** 176 * Non-negative fractions of a second at nanosecond resolution. Negative 177 * second values with fractions must still have non-negative nanos values 178 * that count forward in time. Must be from 0 to 999,999,999 179 * inclusive. This field may be limited in precision depending on context. 180 */ 181 nanos?: number; 182 } 183 export interface v1OwnerReference { 184 /** 185 * API version of the referent. 186 */ 187 apiVersion?: string; 188 kind?: string; 189 name?: string; 190 uid?: string; 191 controller?: boolean; 192 blockOwnerDeletion?: boolean; 193 } 194 export interface v1ObjectMeta { 195 name?: string; 196 /** 197 * GenerateName is an optional prefix, used by the server, to generate a unique 198 * name ONLY IF the Name field has not been provided. 199 * If this field is used, the name returned to the client will be different 200 * than the name passed. This value will also be combined with a unique suffix. 201 * The provided value has the same validation rules as the Name field, 202 * and may be truncated by the length of the suffix required to make the value 203 * unique on the server. 204 * 205 * If this field is specified and the generated name exists, the server will return a 409. 206 * 207 * Applied only if Name is not specified. 208 * More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency 209 * +optional 210 */ 211 generateName?: string; 212 /** 213 * Namespace defines the space within which each name must be unique. An empty namespace is 214 * equivalent to the "default" namespace, but "default" is the canonical representation. 215 * Not all objects are required to be scoped to a namespace - the value of this field for 216 * those objects will be empty. 217 * 218 * Must be a DNS_LABEL. 219 * Cannot be updated. 220 * More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces 221 * +optional 222 */ 223 namespace?: string; 224 selfLink?: string; 225 /** 226 * UID is the unique in time and space value for this object. It is typically generated by 227 * the server on successful creation of a resource and is not allowed to change on PUT 228 * operations. 229 * 230 * Populated by the system. 231 * Read-only. 232 * More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids 233 * +optional 234 */ 235 uid?: string; 236 /** 237 * An opaque value that represents the internal version of this object that can 238 * be used by clients to determine when objects have changed. May be used for optimistic 239 * concurrency, change detection, and the watch operation on a resource or set of resources. 240 * Clients must treat these values as opaque and passed unmodified back to the server. 241 * They may only be valid for a particular resource or set of resources. 242 * 243 * Populated by the system. 244 * Read-only. 245 * Value must be treated as opaque by clients and . 246 * More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency 247 * +optional 248 */ 249 resourceVersion?: string; 250 generation?: string; 251 /** 252 * CreationTimestamp is a timestamp representing the server time when this object was 253 * created. It is not guaranteed to be set in happens-before order across separate operations. 254 * Clients may not set this value. It is represented in RFC3339 form and is in UTC. 255 * 256 * Populated by the system. 257 * Read-only. 258 * Null for lists. 259 * More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 260 * +optional 261 */ 262 creationTimestamp?: string; 263 /** 264 * DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This 265 * field is set by the server when a graceful deletion is requested by the user, and is not 266 * directly settable by a client. The resource is expected to be deleted (no longer visible 267 * from resource lists, and not reachable by name) after the time in this field, once the 268 * finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. 269 * Once the deletionTimestamp is set, this value may not be unset or be set further into the 270 * future, although it may be shortened or the resource may be deleted prior to this time. 271 * For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react 272 * by sending a graceful termination signal to the containers in the pod. After that 30 seconds, 273 * the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, 274 * remove the pod from the API. In the presence of network partitions, this object may still 275 * exist after this timestamp, until an administrator or automated process can determine the 276 * resource is fully terminated. 277 * If not set, graceful deletion of the object has not been requested. 278 * 279 * Populated by the system when a graceful deletion is requested. 280 * Read-only. 281 * More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 282 * +optional 283 */ 284 deletionTimestamp?: string; 285 deletionGracePeriodSeconds?: string; 286 labels?: object; 287 annotations?: object; 288 ownerReferences?: v1OwnerReference[]; 289 finalizers?: string[]; 290 /** 291 * ManagedFields maps workflow-id and version to the set of fields 292 * that are managed by that workflow. This is mostly for internal 293 * housekeeping, and users typically shouldn't need to set or 294 * understand this field. A workflow can be the user's name, a 295 * controller's name, or the name of a specific apply path like 296 * "ci-cd". The set of fields is always in the version that the 297 * workflow used when modifying the object. 298 * 299 * +optional 300 * +listType=atomic 301 */ 302 managedFields?: v1ManagedFieldsEntry[]; 303 } 304 export interface v1MicroTime { 305 /** 306 * Represents seconds of UTC time since Unix epoch 307 * 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 308 * 9999-12-31T23:59:59Z inclusive. 309 */ 310 seconds?: string; 311 /** 312 * Non-negative fractions of a second at nanosecond resolution. Negative 313 * second values with fractions must still have non-negative nanos values 314 * that count forward in time. Must be from 0 to 999,999,999 315 * inclusive. This field may be limited in precision depending on context. 316 */ 317 nanos?: number; 318 } 319 export interface v1ManagedFieldsEntry { 320 /** 321 * Manager is an identifier of the workflow managing these fields. 322 */ 323 manager?: string; 324 /** 325 * Operation is the type of operation which lead to this ManagedFieldsEntry being created. 326 * The only valid values for this field are 'Apply' and 'Update'. 327 */ 328 operation?: string; 329 /** 330 * APIVersion defines the version of this resource that this field set 331 * applies to. The format is "group/version" just like the top-level 332 * APIVersion field. It is necessary to track the version of a field 333 * set because it cannot be automatically converted. 334 */ 335 apiVersion?: string; 336 time?: string; 337 fieldsType?: string; 338 fieldsV1?: v1FieldsV1; 339 /** 340 * Subresource is the name of the subresource used to update that object, or 341 * empty string if the object was updated through the main resource. The 342 * value of this field is used to distinguish between managers, even if they 343 * share the same name. For example, a status update will be distinct from a 344 * regular update using the same manager name. 345 * Note that the APIVersion field is not related to the Subresource field and 346 * it always corresponds to the version of the main resource. 347 */ 348 subresource?: string; 349 } 350 export interface v1FieldsV1 { 351 /** 352 * Raw is the underlying serialization of this object. 353 */ 354 Raw?: string; 355 } 356 export interface v1alpha1UITextInputStatus { 357 /** 358 * The content of the text input. 359 */ 360 value?: string; 361 } 362 export interface v1alpha1UITextInputSpec { 363 /** 364 * Initial value for this field. 365 * 366 * +optional 367 */ 368 defaultValue?: string; 369 /** 370 * A short hint that describes the expected input of this field. 371 * 372 * +optional 373 */ 374 placeholder?: string; 375 } 376 export interface v1alpha1UISessionStatus { 377 featureFlags?: v1alpha1UIFeatureFlag[]; 378 needsAnalyticsNudge?: boolean; 379 runningTiltBuild?: corev1alpha1TiltBuild; 380 suggestedTiltVersion?: string; 381 versionSettings?: corev1alpha1VersionSettings; 382 /** 383 * TiltCloudUsername reports the username if the user is signed into 384 * TiltCloud. 385 * 386 * deprecated: no longer populated 387 * 388 * +optional 389 */ 390 tiltCloudUsername?: string; 391 /** 392 * TiltCloudUsername reports the human-readable team name if the user is 393 * signed into TiltCloud and the Tiltfile declares a team. 394 * 395 * deprecated: no longer populated 396 * 397 * +optional 398 */ 399 tiltCloudTeamName?: string; 400 /** 401 * deprecated: no longer populated 402 * 403 * +optional 404 */ 405 tiltCloudSchemeHost?: string; 406 /** 407 * TiltCloudTeamID reports the unique team id if the user is signed into 408 * TiltCloud and the Tiltfile declares a team. 409 * 410 * deprecated: no longer populated 411 * 412 * +optional 413 */ 414 tiltCloudTeamID?: string; 415 fatalError?: string; 416 tiltStartTime?: string; 417 tiltfileKey?: string; 418 } 419 export interface v1alpha1UISessionSpec {} 420 export interface v1alpha1UISession { 421 metadata?: v1ObjectMeta; 422 spec?: v1alpha1UISessionSpec; 423 status?: v1alpha1UISessionStatus; 424 } 425 export interface v1alpha1UIResourceTargetSpec { 426 id?: string; 427 type?: string; 428 hasLiveUpdate?: boolean; 429 } 430 export interface v1alpha1UIResourceStatus { 431 lastDeployTime?: string; 432 triggerMode?: number; 433 buildHistory?: v1alpha1UIBuildTerminated[]; 434 currentBuild?: v1alpha1UIBuildRunning; 435 pendingBuildSince?: string; 436 hasPendingChanges?: boolean; 437 endpointLinks?: v1alpha1UIResourceLink[]; 438 k8sResourceInfo?: v1alpha1UIResourceKubernetes; 439 localResourceInfo?: v1alpha1UIResourceLocal; 440 /** 441 * The RuntimeStatus is a simple, high-level summary of the runtime state of a server. 442 * 443 * Not all resources run servers. 444 * +optional 445 */ 446 runtimeStatus?: string; 447 /** 448 * The UpdateStatus is a simple, high-level summary of any update tasks to bring 449 * the resource up-to-date. 450 * 451 * If the resource runs a server, this may include both build tasks and live-update 452 * syncing. 453 * +optional 454 */ 455 updateStatus?: string; 456 specs?: v1alpha1UIResourceTargetSpec[]; 457 queued?: boolean; 458 /** 459 * Order expresses the relative order of resources in the UI when they're not 460 * otherwise sorted. Lower integers go first. When two resources have the same 461 * order, they should be sorted by name. 462 * 463 * When UIResources are generated from the Tiltfile, we use the order they 464 * were added to the Tiltfile for the Order field. 465 * 466 * +optional 467 */ 468 order?: number; 469 /** 470 * Information about the resource's objects' disabled status. 471 */ 472 disableStatus?: v1alpha1DisableResourceStatus; 473 /** 474 * Waiting provides detail on why the resource is currently blocked from updating. 475 * 476 * +optional 477 */ 478 waiting?: v1alpha1UIResourceStateWaiting; 479 /** 480 * Represents the latest available observations of a UIResource's current state. 481 * 482 * Designed for compatibility with 'wait' and cross-resource status reporting. 483 * https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#typical-status-properties 484 * 485 * +optional 486 */ 487 conditions?: v1alpha1UIResourceCondition[]; 488 } 489 export interface v1alpha1UIResourceStateWaitingOnRef { 490 /** 491 * Group for the object type being waited on. 492 */ 493 group?: string; 494 /** 495 * APIVersion for the object type being waited on. 496 */ 497 apiVersion?: string; 498 /** 499 * Kind of the object type being waited on. 500 */ 501 kind?: string; 502 /** 503 * Name of the object being waiting on. 504 */ 505 name?: string; 506 } 507 export interface v1alpha1UIResourceStateWaiting { 508 /** 509 * Reason is a unique, one-word reason for why the UIResource update is pending. 510 */ 511 reason?: string; 512 /** 513 * HoldingOn is the set of objects blocking this resource from updating. 514 * 515 * These objects might NOT be explicit dependencies of the current resource. For example, if an un-parallelizable 516 * resource is updating, all other resources with queued updates will be holding on it with a reason of 517 * `waiting-for-local`. 518 * 519 * +optional 520 */ 521 on?: v1alpha1UIResourceStateWaitingOnRef[]; 522 } 523 export interface v1alpha1UIResourceSpec {} 524 export interface v1alpha1UIResourceLocal { 525 pid?: string; 526 /** 527 * Whether this represents a test job. 528 * 529 * Deprecated: Users should use labels for marking services as tests. 530 * 531 * +optional 532 */ 533 isTest?: boolean; 534 } 535 export interface v1alpha1UIResourceLink { 536 url?: string; 537 name?: string; 538 } 539 export interface v1alpha1UIResourceKubernetes { 540 /** 541 * The name of the active pod. 542 * 543 * The active pod tends to be what Tilt defaults to for port-forwards, 544 * live-updates, etc. 545 * +optional 546 */ 547 podName?: string; 548 podCreationTime?: string; 549 podUpdateStartTime?: string; 550 podStatus?: string; 551 podStatusMessage?: string; 552 allContainersReady?: boolean; 553 podRestarts?: number; 554 spanID?: string; 555 displayNames?: string[]; 556 } 557 export interface v1alpha1UIResourceCondition { 558 /** 559 * Type of UI Resource condition. 560 */ 561 type?: string; 562 /** 563 * Status of the condition, one of True, False, Unknown. 564 */ 565 status?: string; 566 lastTransitionTime?: string; 567 reason?: string; 568 message?: string; 569 } 570 export interface v1alpha1UIResource { 571 metadata?: v1ObjectMeta; 572 spec?: v1alpha1UIResourceSpec; 573 status?: v1alpha1UIResourceStatus; 574 } 575 export interface v1alpha1UIInputStatus { 576 /** 577 * Name of the input whose status this is. Must match the `Name` of a corresponding 578 * UIInputSpec. 579 */ 580 name?: string; 581 text?: v1alpha1UITextInputStatus; 582 bool?: v1alpha1UIBoolInputStatus; 583 hidden?: v1alpha1UIHiddenInputStatus; 584 choice?: v1alpha1UIChoiceInputStatus; 585 } 586 export interface v1alpha1UIInputSpec { 587 /** 588 * Name of this input. Must be unique within the UIButton. 589 */ 590 name?: string; 591 label?: string; 592 text?: v1alpha1UITextInputSpec; 593 bool?: v1alpha1UIBoolInputSpec; 594 hidden?: v1alpha1UIHiddenInputSpec; 595 choice?: v1alpha1UIChoiceInputSpec; 596 } 597 export interface v1alpha1UIHiddenInputStatus { 598 value?: string; 599 } 600 export interface v1alpha1UIHiddenInputSpec { 601 value?: string; 602 } 603 export interface v1alpha1UIFeatureFlag { 604 name?: string; 605 value?: boolean; 606 } 607 export interface v1alpha1UIComponentLocation { 608 /** 609 * ComponentID is the identifier of the parent component to associate this component with. 610 * 611 * For example, this is a resource name if the ComponentType is Resource. 612 */ 613 componentID?: string; 614 /** 615 * ComponentType is the type of the parent component. 616 */ 617 componentType?: string; 618 } 619 export interface v1alpha1UIChoiceInputStatus { 620 value?: string; 621 } 622 export interface v1alpha1UIChoiceInputSpec { 623 /** 624 * +optional 625 */ 626 choices?: string[]; 627 } 628 export interface v1alpha1UIButtonStatus { 629 /** 630 * LastClickedAt is the timestamp of the last time the button was clicked. 631 * 632 * If the button has never clicked before, this will be the zero-value/null. 633 */ 634 lastClickedAt?: string; 635 inputs?: v1alpha1UIInputStatus[]; 636 } 637 export interface v1alpha1UIButtonSpec { 638 /** 639 * Location associates the button with another component for layout. 640 */ 641 location?: v1alpha1UIComponentLocation; 642 /** 643 * Text to appear on the button itself or as hover text (depending on button location). 644 */ 645 text?: string; 646 /** 647 * IconName is a Material Icon to appear next to button text or on the button itself (depending on button location). 648 * 649 * Valid values are icon font ligature names from the Material Icons set. 650 * See https://fonts.google.com/icons for the full list of available icons. 651 * 652 * If both IconSVG and IconName are specified, IconSVG will take precedence. 653 * 654 * +optional 655 */ 656 iconName?: string; 657 /** 658 * IconSVG is an SVG to use as the icon to appear next to button text or on the button itself (depending on button 659 * location). 660 * 661 * This should be an <svg> element scaled for a 24x24 viewport. 662 * 663 * If both IconSVG and IconName are specified, IconSVG will take precedence. 664 * 665 * +optional 666 */ 667 iconSVG?: string; 668 /** 669 * If true, the button will be rendered, but with an effect indicating it's 670 * disabled. It will also be unclickable. 671 * 672 * +optional 673 */ 674 disabled?: boolean; 675 /** 676 * +optional 677 */ 678 requiresConfirmation?: boolean; 679 inputs?: v1alpha1UIInputSpec[]; 680 } 681 export interface v1alpha1UIButton { 682 metadata?: v1ObjectMeta; 683 spec?: v1alpha1UIButtonSpec; 684 status?: v1alpha1UIButtonStatus; 685 } 686 export interface v1alpha1UIBuildTerminated { 687 error?: string; 688 warnings?: string[]; 689 startTime?: string; 690 finishTime?: string; 691 spanID?: string; 692 isCrashRebuild?: boolean; 693 } 694 export interface v1alpha1UIBuildRunning { 695 startTime?: string; 696 spanID?: string; 697 } 698 export interface v1alpha1UIBoolInputStatus { 699 value?: boolean; 700 } 701 export interface v1alpha1UIBoolInputSpec { 702 defaultValue?: boolean; 703 trueString?: string; 704 falseString?: string; 705 } 706 export interface v1alpha1RegistryHosting { 707 /** 708 * Host documents the host (hostname and port) of the registry, as seen from 709 * outside the cluster. 710 * 711 * This is the registry host that tools outside the cluster should push images 712 * to. 713 */ 714 host?: string; 715 /** 716 * HostFromClusterNetwork documents the host (hostname and port) of the 717 * registry, as seen from networking inside the container pods. 718 * 719 * This is the registry host that tools running on pods inside the cluster 720 * should push images to. If not set, then tools inside the cluster should 721 * assume the local registry is not available to them. 722 * 723 * +optional 724 */ 725 hostFromClusterNetwork?: string; 726 /** 727 * HostFromContainerRuntime documents the host (hostname and port) of the 728 * registry, as seen from the cluster's container runtime. 729 * 730 * When tools apply Kubernetes objects to the cluster, this host should be 731 * used for image name fields. If not set, users of this field should use the 732 * value of Host instead. 733 * 734 * Note that it doesn't make sense semantically to define this field, but not 735 * define Host or HostFromClusterNetwork. That would imply a way to pull 736 * images without a way to push images. 737 * 738 * +optional 739 */ 740 hostFromContainerRuntime?: string; 741 /** 742 * Help contains a URL pointing to documentation for users on how to set 743 * up and configure a local registry. 744 * 745 * Tools can use this to nudge users to enable the registry. When possible, 746 * the writer should use as permanent a URL as possible to prevent drift 747 * (e.g., a version control SHA). 748 * 749 * When image pushes to a registry host specified in one of the other fields 750 * fail, the tool should display this help URL to the user. The help URL 751 * should contain instructions on how to diagnose broken or misconfigured 752 * registries. 753 * 754 * +optional 755 */ 756 help?: string; 757 /** 758 * SingleName uses a shared image name for _all_ Tilt-built images and 759 * relies on tags to distinguish between logically distinct images. 760 * 761 * This is most commonly used with Amazon Elastic Container Registry (ECR), 762 * which works differently than other image registries. 763 * 764 * An ECR host takes the form https://aws_account_id.dkr.ecr.region.amazonaws.com. 765 * Each image name in that registry must be pre-created ಠ_ಠ and assigned 766 * IAM permissions. 767 * For example: https://aws_account_id.dkr.ecr.region.amazonaws.com/my-repo 768 * (They call this a repo). 769 * 770 * For this reason, some users using ECR prefer to push all images to a 771 * single image name (ECR repo). 772 * 773 * A recommended pattern here is to create a "personal" image repo for each 774 * user during development. 775 * 776 * See: 777 * https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html 778 * https://github.com/tilt-dev/tilt/issues/2419 779 * 780 * +optional 781 */ 782 singleName?: string; 783 } 784 export interface v1alpha1KubernetesClusterConnectionStatus { 785 /** 786 * The resolved kubeconfig context. 787 */ 788 context?: string; 789 /** 790 * The resolved default namespace. 791 */ 792 namespace?: string; 793 /** 794 * The resolved cluster name (as determined by the kubeconfig context). 795 */ 796 cluster?: string; 797 /** 798 * The product name for this cluster. 799 * 800 * For a complete list of possible product names, see: 801 * https://pkg.go.dev/github.com/tilt-dev/clusterid#Product 802 */ 803 product?: string; 804 /** 805 * The resolved config path. 806 * 807 * Tilt will freeze the config and write it to a temporary directory. 808 * Subprocesses that depend on this cluster can find this file 809 * by reading the KUBECONFIG env var. 810 */ 811 configPath?: string; 812 } 813 export interface v1alpha1KubernetesClusterConnection { 814 /** 815 * The name of the kubeconfig context to use. 816 * 817 * If not specified, will use the default context in the kubeconfig. 818 * 819 * +optional 820 */ 821 context?: string; 822 /** 823 * The default namespace to use. 824 * 825 * If not specified, will use the namespace in the kubeconfig. 826 * 827 * +optional 828 */ 829 namespace?: string; 830 } 831 export interface v1alpha1DockerClusterConnection { 832 /** 833 * The docker host to use. 834 * 835 * If not specified, will read the DOCKER_HOST env or use the default docker 836 * host. 837 */ 838 host?: string; 839 } 840 export interface v1alpha1DisableSource { 841 /** 842 * Disabled by single ConfigMap value. 843 */ 844 configMap?: v1alpha1ConfigMapDisableSource; 845 /** 846 * Disabled by multiple ConfigMap values, which must all be set to disabled 847 * to disable the object. 848 */ 849 everyConfigMap?: v1alpha1ConfigMapDisableSource[]; 850 } 851 export interface v1alpha1DisableResourceStatus { 852 /** 853 * How many of the resource's sources are enabled. 854 */ 855 enabledCount?: number; 856 /** 857 * How many of the resource's sources are disabled. 858 */ 859 disabledCount?: number; 860 state?: string; 861 /** 862 * All unique sources that control the resource's objects' disable status. 863 */ 864 sources?: v1alpha1DisableSource[]; 865 } 866 export interface v1alpha1ConfigMapDisableSource { 867 name?: string; 868 /** 869 * The key where the enable/disable state is stored. 870 */ 871 key?: string; 872 } 873 export interface v1alpha1ClusterStatus { 874 /** 875 * The preferred chip architecture of the cluster. 876 * 877 * On Kubernetes, this will correspond to the kubernetes.io/arch annotation on 878 * a node. 879 * 880 * On Docker, this will be the Architecture of the Docker daemon. 881 * 882 * Note that many clusters support multiple chipsets. This field doesn't intend 883 * that this is the only architecture a cluster supports, only that it's one 884 * of the architectures. 885 */ 886 arch?: string; 887 /** 888 * An unrecoverable error connecting to the cluster. 889 * 890 * +optional 891 */ 892 error?: string; 893 /** 894 * ConnectedAt indicates the time at which the cluster connection was established. 895 * 896 * Consumers can use this to detect when the underlying config has changed 897 * and refresh their client/connection accordingly. 898 * 899 * +optional 900 */ 901 connectedAt?: string; 902 /** 903 * Registry describes a local registry that developer tools can 904 * connect to. A local registry allows clients to load images into the local 905 * cluster by pushing to this registry. 906 * 907 * +optional 908 */ 909 registry?: v1alpha1RegistryHosting; 910 /** 911 * Connection status for an existing cluster. 912 * 913 * +optional 914 */ 915 connection?: v1alpha1ClusterConnectionStatus; 916 /** 917 * Version is a cluster-provided, human-readable version string. 918 * 919 * +optional 920 */ 921 version?: string; 922 } 923 export interface v1alpha1ClusterSpec { 924 /** 925 * Connection spec for an existing cluster. 926 */ 927 connection?: v1alpha1ClusterConnection; 928 /** 929 * DefaultRegistry determines where images for this Cluster should 930 * be pushed/pulled from if the Cluster itself does not provide local 931 * registry hosting metadata. 932 * 933 * If not specified, no registry rewriting will occur, and the images will 934 * be pushed/pulled to from the registry specified by the corresponding 935 * image build directive (e.g. `docker_build` or `custom_build`). 936 * 937 * +optional 938 */ 939 defaultRegistry?: v1alpha1RegistryHosting; 940 } 941 export interface v1alpha1ClusterConnectionStatus { 942 /** 943 * Defines connection to a Kubernetes cluster. 944 */ 945 kubernetes?: v1alpha1KubernetesClusterConnectionStatus; 946 } 947 export interface v1alpha1ClusterConnection { 948 /** 949 * Defines connection to a Kubernetes cluster. 950 */ 951 kubernetes?: v1alpha1KubernetesClusterConnection; 952 /** 953 * Defines connection to a Docker daemon. 954 */ 955 docker?: v1alpha1DockerClusterConnection; 956 } 957 export interface v1alpha1Cluster { 958 metadata?: v1ObjectMeta; 959 spec?: v1alpha1ClusterSpec; 960 status?: v1alpha1ClusterStatus; 961 } 962 export interface runtimeError { 963 error?: string; 964 code?: number; 965 message?: string; 966 details?: protobufAny[]; 967 } 968 export interface protobufAny { 969 typeUrl?: string; 970 value?: string; 971 } 972 export interface corev1alpha1VersionSettings { 973 checkUpdates?: boolean; 974 } 975 export interface corev1alpha1TiltBuild { 976 version?: string; 977 commitSHA?: string; 978 date?: string; 979 dev?: boolean; 980 } 981 }