12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- /*
- Copyright 2016 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.
- */
- // This file was autogenerated by go-to-protobuf. Do not edit it manually!
- syntax = 'proto2';
- package k8s.io.kubernetes.pkg.apis.policy.v1alpha1;
- import "k8s.io/kubernetes/pkg/api/resource/generated.proto";
- import "k8s.io/kubernetes/pkg/api/unversioned/generated.proto";
- import "k8s.io/kubernetes/pkg/api/v1/generated.proto";
- import "k8s.io/kubernetes/pkg/runtime/generated.proto";
- import "k8s.io/kubernetes/pkg/util/intstr/generated.proto";
- // Package-wide variables from generator "generated".
- option go_package = "v1alpha1";
- // Eviction evicts a pod from its node subject to certain policies and safety constraints.
- // This is a subresource of Pod. A request to cause such an eviction is
- // created by POSTing to .../pods/foo/evictions.
- message Eviction {
- // ObjectMeta describes the pod that is being evicted.
- optional k8s.io.kubernetes.pkg.api.v1.ObjectMeta metadata = 1;
- // DeleteOptions may be provided
- optional k8s.io.kubernetes.pkg.api.v1.DeleteOptions deleteOptions = 2;
- }
- // PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods
- message PodDisruptionBudget {
- optional k8s.io.kubernetes.pkg.api.v1.ObjectMeta metadata = 1;
- // Specification of the desired behavior of the PodDisruptionBudget.
- optional PodDisruptionBudgetSpec spec = 2;
- // Most recently observed status of the PodDisruptionBudget.
- optional PodDisruptionBudgetStatus status = 3;
- }
- // PodDisruptionBudgetList is a collection of PodDisruptionBudgets.
- message PodDisruptionBudgetList {
- optional k8s.io.kubernetes.pkg.api.unversioned.ListMeta metadata = 1;
- repeated PodDisruptionBudget items = 2;
- }
- // PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.
- message PodDisruptionBudgetSpec {
- // The minimum number of pods that must be available simultaneously. This
- // can be either an integer or a string specifying a percentage, e.g. "28%".
- optional k8s.io.kubernetes.pkg.util.intstr.IntOrString minAvailable = 1;
- // Label query over pods whose evictions are managed by the disruption
- // budget.
- optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 2;
- }
- // PodDisruptionBudgetStatus represents information about the status of a
- // PodDisruptionBudget. Status may trail the actual state of a system.
- message PodDisruptionBudgetStatus {
- // Whether or not a disruption is currently allowed.
- optional bool disruptionAllowed = 1;
- // current number of healthy pods
- optional int32 currentHealthy = 2;
- // minimum desired number of healthy pods
- optional int32 desiredHealthy = 3;
- // total number of pods counted by this disruption budget
- optional int32 expectedPods = 4;
- }
|