2018-01-27 04:25:58 +08:00
|
|
|
// <auto-generated>
|
|
|
|
|
// Code generated by Microsoft (R) AutoRest Code Generator.
|
|
|
|
|
// Changes may cause incorrect behavior and will be lost if the code is
|
|
|
|
|
// regenerated.
|
|
|
|
|
// </auto-generated>
|
|
|
|
|
|
|
|
|
|
namespace k8s.Models
|
|
|
|
|
{
|
|
|
|
|
using Newtonsoft.Json;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Spec to control the desired behavior of rolling update.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public partial class V1RollingUpdateDeployment
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initializes a new instance of the V1RollingUpdateDeployment class.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public V1RollingUpdateDeployment()
|
|
|
|
|
{
|
|
|
|
|
CustomInit();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initializes a new instance of the V1RollingUpdateDeployment class.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="maxSurge">The maximum number of pods that can be
|
|
|
|
|
/// scheduled above the desired number of pods. Value can be an
|
|
|
|
|
/// absolute number (ex: 5) or a percentage of desired pods (ex: 10%).
|
|
|
|
|
/// This can not be 0 if MaxUnavailable is 0. Absolute number is
|
|
|
|
|
/// calculated from percentage by rounding up. Defaults to 25%.
|
2018-07-02 22:22:11 +08:00
|
|
|
/// Example: when this is set to 30%, the new ReplicaSet can be scaled
|
|
|
|
|
/// up immediately when the rolling update starts, such that the total
|
2018-01-27 04:25:58 +08:00
|
|
|
/// number of old and new pods do not exceed 130% of desired pods. Once
|
2018-07-02 22:22:11 +08:00
|
|
|
/// old pods have been killed, new ReplicaSet can be scaled up further,
|
2018-01-27 04:25:58 +08:00
|
|
|
/// ensuring that total number of pods running at any time during the
|
2018-03-28 10:30:09 +08:00
|
|
|
/// update is at most 130% of desired pods.</param>
|
2018-01-27 04:25:58 +08:00
|
|
|
/// <param name="maxUnavailable">The maximum number of pods that can be
|
|
|
|
|
/// unavailable during the update. Value can be an absolute number (ex:
|
|
|
|
|
/// 5) or a percentage of desired pods (ex: 10%). Absolute number is
|
|
|
|
|
/// calculated from percentage by rounding down. This can not be 0 if
|
|
|
|
|
/// MaxSurge is 0. Defaults to 25%. Example: when this is set to 30%,
|
2018-07-02 22:22:11 +08:00
|
|
|
/// the old ReplicaSet can be scaled down to 70% of desired pods
|
|
|
|
|
/// immediately when the rolling update starts. Once new pods are
|
|
|
|
|
/// ready, old ReplicaSet can be scaled down further, followed by
|
|
|
|
|
/// scaling up the new ReplicaSet, ensuring that the total number of
|
|
|
|
|
/// pods available at all times during the update is at least 70% of
|
|
|
|
|
/// desired pods.</param>
|
2018-01-27 04:25:58 +08:00
|
|
|
public V1RollingUpdateDeployment(IntstrIntOrString maxSurge = default(IntstrIntOrString), IntstrIntOrString maxUnavailable = default(IntstrIntOrString))
|
|
|
|
|
{
|
|
|
|
|
MaxSurge = maxSurge;
|
|
|
|
|
MaxUnavailable = maxUnavailable;
|
|
|
|
|
CustomInit();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// An initialization method that performs custom operations like setting defaults
|
|
|
|
|
/// </summary>
|
|
|
|
|
partial void CustomInit();
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Gets or sets the maximum number of pods that can be scheduled above
|
|
|
|
|
/// the desired number of pods. Value can be an absolute number (ex: 5)
|
|
|
|
|
/// or a percentage of desired pods (ex: 10%). This can not be 0 if
|
|
|
|
|
/// MaxUnavailable is 0. Absolute number is calculated from percentage
|
|
|
|
|
/// by rounding up. Defaults to 25%. Example: when this is set to 30%,
|
2018-07-02 22:22:11 +08:00
|
|
|
/// the new ReplicaSet can be scaled up immediately when the rolling
|
|
|
|
|
/// update starts, such that the total number of old and new pods do
|
|
|
|
|
/// not exceed 130% of desired pods. Once old pods have been killed,
|
|
|
|
|
/// new ReplicaSet can be scaled up further, ensuring that total number
|
|
|
|
|
/// of pods running at any time during the update is at most 130% of
|
|
|
|
|
/// desired pods.
|
2018-01-27 04:25:58 +08:00
|
|
|
/// </summary>
|
|
|
|
|
[JsonProperty(PropertyName = "maxSurge")]
|
|
|
|
|
public IntstrIntOrString MaxSurge { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Gets or sets the maximum number of pods that can be unavailable
|
|
|
|
|
/// during the update. Value can be an absolute number (ex: 5) or a
|
|
|
|
|
/// percentage of desired pods (ex: 10%). Absolute number is calculated
|
|
|
|
|
/// from percentage by rounding down. This can not be 0 if MaxSurge is
|
2018-07-02 22:22:11 +08:00
|
|
|
/// 0. Defaults to 25%. Example: when this is set to 30%, the old
|
|
|
|
|
/// ReplicaSet can be scaled down to 70% of desired pods immediately
|
|
|
|
|
/// when the rolling update starts. Once new pods are ready, old
|
|
|
|
|
/// ReplicaSet can be scaled down further, followed by scaling up the
|
|
|
|
|
/// new ReplicaSet, ensuring that the total number of pods available at
|
|
|
|
|
/// all times during the update is at least 70% of desired pods.
|
2018-01-27 04:25:58 +08:00
|
|
|
/// </summary>
|
|
|
|
|
[JsonProperty(PropertyName = "maxUnavailable")]
|
|
|
|
|
public IntstrIntOrString MaxUnavailable { get; set; }
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|