mirror of https://github.com/kubernetes/kops.git
				
				
				
			
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Go
		
	
	
	
| /*
 | |
| Copyright 2020 The Kubernetes 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.
 | |
| */
 | |
| 
 | |
| package cloudinstances
 | |
| 
 | |
| import v1 "k8s.io/api/core/v1"
 | |
| 
 | |
| // CloudInstanceStatusDetached means the instance needs update and has been detached.
 | |
| const CloudInstanceStatusDetached = "Detached"
 | |
| 
 | |
| // CloudInstanceStatusNeedsUpdate means the instance has joined the cluster, is not detached, and needs to be updated.
 | |
| const CloudInstanceStatusNeedsUpdate = "NeedsUpdate"
 | |
| 
 | |
| // CloudInstanceStatusReady means the instance has joined the cluster, is not detached, and is up to date.
 | |
| const CloudInstanceStatusUpToDate = "UpToDate"
 | |
| 
 | |
| type State string
 | |
| 
 | |
| // WarmPool means the instance is in the warm pool
 | |
| const WarmPool State = "WarmPool"
 | |
| 
 | |
| // CloudInstance describes an instance in a CloudInstanceGroup group.
 | |
| type CloudInstance struct {
 | |
| 	// ID is a unique identifier for the instance, meaningful to the cloud
 | |
| 	ID string
 | |
| 	// Node is the associated k8s instance, if it is known
 | |
| 	Node *v1.Node
 | |
| 	// CloudInstanceGroup is the managing CloudInstanceGroup
 | |
| 	CloudInstanceGroup *CloudInstanceGroup
 | |
| 	// Status indicates if the instance has joined the cluster and if it needs any updates.
 | |
| 	Status string
 | |
| 	// Roles are the roles the instance have.
 | |
| 	Roles []string
 | |
| 	// MachineType is the hardware resource class of the instance.
 | |
| 	MachineType string
 | |
| 	// Private IP is the private ip address of the instance.
 | |
| 	PrivateIP string
 | |
| 	// State is in which state the instance is in
 | |
| 	State State
 | |
| }
 |