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%.
|
|
|
|
|
/// Example: when this is set to 30%, the new RC 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 RC can be scaled up further,
|
|
|
|
|
/// 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%,
|
|
|
|
|
/// the old RC can be scaled down to 70% of desired pods immediately
|
|
|
|
|
/// when the rolling update starts. Once new pods are ready, old RC can
|
|
|
|
|
/// be scaled down further, followed by scaling up the new RC, ensuring
|
|
|
|
|
/// that the total number of pods available at all times during the
|
|
|
|
|
/// update is at least 70% of desired pods.</param>
|
|
|
|
|
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%,
|
|
|
|
|
/// the new RC 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 RC
|
|
|
|
|
/// can be scaled up further, ensuring that total number of pods
|
2018-03-28 10:30:09 +08:00
|
|
|
/// running at any time during the update is at most 130% of desired
|
2018-01-27 04:25:58 +08:00
|
|
|
/// pods.
|
|
|
|
|
/// </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
|
|
|
|
|
/// 0. Defaults to 25%. Example: when this is set to 30%, the old RC
|
|
|
|
|
/// can be scaled down to 70% of desired pods immediately when the
|
|
|
|
|
/// rolling update starts. Once new pods are ready, old RC can be
|
|
|
|
|
/// scaled down further, followed by scaling up the new RC, ensuring
|
|
|
|
|
/// that the total number of pods available at all times during the
|
|
|
|
|
/// update is at least 70% of desired pods.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[JsonProperty(PropertyName = "maxUnavailable")]
|
|
|
|
|
public IntstrIntOrString MaxUnavailable { get; set; }
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|