@pulumi/rancher2 10.4.0-alpha.1766506762 → 11.0.0-alpha.1766596160

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +2 -2
  2. package/authConfigGenericOidc.d.ts +313 -0
  3. package/authConfigGenericOidc.js +134 -0
  4. package/authConfigGenericOidc.js.map +1 -0
  5. package/authConfigGithubapp.d.ts +133 -0
  6. package/authConfigGithubapp.js +89 -0
  7. package/authConfigGithubapp.js.map +1 -0
  8. package/cluster.d.ts +36 -340
  9. package/cluster.js +36 -340
  10. package/cluster.js.map +1 -1
  11. package/clusterProxyConfigV2.d.ts +96 -0
  12. package/clusterProxyConfigV2.js +61 -0
  13. package/clusterProxyConfigV2.js.map +1 -0
  14. package/clusterSync.d.ts +4 -4
  15. package/clusterSync.js +4 -4
  16. package/getClusterProxyConfigV2.d.ts +14 -0
  17. package/getClusterProxyConfigV2.js +18 -0
  18. package/getClusterProxyConfigV2.js.map +1 -0
  19. package/index.d.ts +12 -18
  20. package/index.js +20 -26
  21. package/index.js.map +1 -1
  22. package/nodePool.d.ts +4 -4
  23. package/nodePool.js +4 -4
  24. package/package.json +2 -2
  25. package/types/input.d.ts +762 -2581
  26. package/types/output.d.ts +2358 -5036
  27. package/clusterTemplate.d.ts +0 -215
  28. package/clusterTemplate.js +0 -146
  29. package/clusterTemplate.js.map +0 -1
  30. package/etcdBackup.d.ts +0 -186
  31. package/etcdBackup.js +0 -106
  32. package/etcdBackup.js.map +0 -1
  33. package/getClusterTemplate.d.ts +0 -115
  34. package/getClusterTemplate.js +0 -60
  35. package/getClusterTemplate.js.map +0 -1
  36. package/getEtcdBackup.d.ts +0 -99
  37. package/getEtcdBackup.js +0 -54
  38. package/getEtcdBackup.js.map +0 -1
  39. package/getNodeTemplate.d.ts +0 -134
  40. package/getNodeTemplate.js +0 -52
  41. package/getNodeTemplate.js.map +0 -1
  42. package/nodeTemplate.d.ts +0 -562
  43. package/nodeTemplate.js +0 -261
  44. package/nodeTemplate.js.map +0 -1
package/types/input.d.ts CHANGED
@@ -3175,2770 +3175,909 @@ export interface ClusterSyncNode {
3175
3175
  [key: string]: pulumi.Input<string>;
3176
3176
  }>;
3177
3177
  }
3178
- export interface ClusterTemplateMember {
3179
- /**
3180
- * Member access type: member, owner, read-only
3181
- */
3182
- accessType?: pulumi.Input<string>;
3183
- /**
3184
- * Member group principal id
3185
- */
3186
- groupPrincipalId?: pulumi.Input<string>;
3187
- /**
3188
- * Member user principal id
3189
- */
3190
- userPrincipalId?: pulumi.Input<string>;
3191
- }
3192
- export interface ClusterTemplateTemplateRevision {
3193
- /**
3194
- * Annotations for the cluster template (map)
3195
- */
3196
- annotations?: pulumi.Input<{
3197
- [key: string]: pulumi.Input<string>;
3198
- }>;
3199
- /**
3200
- * Cluster configuration
3201
- */
3202
- clusterConfig: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfig>;
3203
- /**
3204
- * Cluster template ID
3205
- */
3206
- clusterTemplateId?: pulumi.Input<string>;
3207
- /**
3208
- * Default cluster template revision
3209
- */
3210
- default?: pulumi.Input<boolean>;
3211
- /**
3212
- * Enable cluster template revision
3213
- */
3214
- enabled?: pulumi.Input<boolean>;
3215
- /**
3216
- * (Computed) The ID of the resource (string)
3217
- */
3218
- id?: pulumi.Input<string>;
3219
- /**
3220
- * Labels for the cluster template (map)
3221
- */
3222
- labels?: pulumi.Input<{
3223
- [key: string]: pulumi.Input<string>;
3224
- }>;
3178
+ export interface ClusterV2AgentEnvVar {
3225
3179
  /**
3226
- * The cluster template name (string)
3180
+ * The name of the cluster.
3227
3181
  */
3228
3182
  name: pulumi.Input<string>;
3229
3183
  /**
3230
- * Cluster template questions
3231
- */
3232
- questions?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionQuestion>[]>;
3233
- }
3234
- export interface ClusterTemplateTemplateRevisionClusterConfig {
3235
- /**
3236
- * Local cluster auth endpoint
3237
- */
3238
- clusterAuthEndpoint?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigClusterAuthEndpoint>;
3239
- /**
3240
- * Default cluster role for project members
3241
- */
3242
- defaultClusterRoleForProjectMembers?: pulumi.Input<string>;
3243
- /**
3244
- * Default pod security admission configuration template name
3245
- */
3246
- defaultPodSecurityAdmissionConfigurationTemplateName?: pulumi.Input<string>;
3247
- /**
3248
- * Desired agent image
3249
- */
3250
- desiredAgentImage?: pulumi.Input<string>;
3251
- /**
3252
- * Desired auth image
3253
- */
3254
- desiredAuthImage?: pulumi.Input<string>;
3255
- /**
3256
- * Docker Root Dir
3257
- */
3258
- dockerRootDir?: pulumi.Input<string>;
3259
- /**
3260
- * Enable project network isolation
3261
- */
3262
- enableNetworkPolicy?: pulumi.Input<boolean>;
3263
- /**
3264
- * Rancher Kubernetes Engine Config
3265
- */
3266
- rkeConfig: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfig>;
3267
- /**
3268
- * Windows prefered cluster
3269
- */
3270
- windowsPreferedCluster?: pulumi.Input<boolean>;
3271
- }
3272
- export interface ClusterTemplateTemplateRevisionClusterConfigClusterAuthEndpoint {
3273
- caCerts?: pulumi.Input<string>;
3274
- /**
3275
- * Enable cluster template revision. Default `true` (bool)
3276
- */
3277
- enabled?: pulumi.Input<boolean>;
3278
- fqdn?: pulumi.Input<string>;
3279
- }
3280
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfig {
3281
- /**
3282
- * Optional duration in seconds of addon job.
3283
- */
3284
- addonJobTimeout?: pulumi.Input<number>;
3285
- /**
3286
- * Optional addons descripton to deploy on rke cluster.
3287
- */
3288
- addons?: pulumi.Input<string>;
3289
- /**
3290
- * Optional addons yaml manisfest to deploy on rke cluster.
3291
- */
3292
- addonsIncludes?: pulumi.Input<pulumi.Input<string>[]>;
3293
- /**
3294
- * Kubernetes cluster authentication
3295
- */
3296
- authentication?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigAuthentication>;
3297
- /**
3298
- * Kubernetes cluster authorization
3299
- */
3300
- authorization?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigAuthorization>;
3301
- /**
3302
- * RKE bastion host
3303
- */
3304
- bastionHost?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigBastionHost>;
3305
- cloudProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProvider>;
3306
- dns?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDns>;
3307
- /**
3308
- * Enable/disable using cri-dockerd
3309
- */
3310
- enableCriDockerd?: pulumi.Input<boolean>;
3311
- /**
3312
- * Optional ignore docker version on nodes
3313
- */
3314
- ignoreDockerVersion?: pulumi.Input<boolean>;
3315
- /**
3316
- * Kubernetes ingress configuration
3317
- */
3318
- ingress?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngress>;
3319
- /**
3320
- * Optional kubernetes version to deploy
3321
- */
3322
- kubernetesVersion?: pulumi.Input<string>;
3323
- /**
3324
- * Kubernetes cluster monitoring
3325
- */
3326
- monitoring?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoring>;
3327
- /**
3328
- * Kubernetes cluster networking
3329
- */
3330
- network?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetwork>;
3331
- /**
3332
- * Optional RKE cluster nodes
3333
- */
3334
- nodes?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNode>[]>;
3335
- /**
3336
- * Optional prefix to customize kubernetes path
3337
- */
3338
- prefixPath?: pulumi.Input<string>;
3339
- /**
3340
- * Optional private registries for docker images
3341
- */
3342
- privateRegistries?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigPrivateRegistry>[]>;
3343
- /**
3344
- * Kubernetes cluster services
3345
- */
3346
- services?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServices>;
3347
- /**
3348
- * Optional use ssh agent auth
3349
- */
3350
- sshAgentAuth?: pulumi.Input<boolean>;
3351
- /**
3352
- * Optional cluster level SSH certificate path
3353
- */
3354
- sshCertPath?: pulumi.Input<string>;
3355
- /**
3356
- * Optional cluster level SSH private key path
3357
- */
3358
- sshKeyPath?: pulumi.Input<string>;
3359
- /**
3360
- * RKE upgrade strategy
3361
- */
3362
- upgradeStrategy?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategy>;
3363
- /**
3364
- * Optional prefix to customize kubernetes path for windows
3365
- */
3366
- winPrefixPath?: pulumi.Input<string>;
3367
- }
3368
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigAuthentication {
3369
- sans?: pulumi.Input<pulumi.Input<string>[]>;
3370
- strategy?: pulumi.Input<string>;
3371
- }
3372
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigAuthorization {
3373
- mode?: pulumi.Input<string>;
3374
- options?: pulumi.Input<{
3375
- [key: string]: pulumi.Input<string>;
3376
- }>;
3377
- }
3378
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigBastionHost {
3379
- address: pulumi.Input<string>;
3380
- port?: pulumi.Input<string>;
3381
- sshAgentAuth?: pulumi.Input<boolean>;
3382
- sshKey?: pulumi.Input<string>;
3383
- sshKeyPath?: pulumi.Input<string>;
3384
- user: pulumi.Input<string>;
3385
- }
3386
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProvider {
3387
- awsCloudProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProvider>;
3388
- azureCloudProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAzureCloudProvider>;
3389
- customCloudProvider?: pulumi.Input<string>;
3390
- /**
3391
- * The cluster template name (string)
3184
+ * The taint value.
3392
3185
  */
3393
- name?: pulumi.Input<string>;
3394
- openstackCloudProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProvider>;
3395
- vsphereCloudProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProvider>;
3396
- }
3397
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProvider {
3398
- global?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProviderGlobal>;
3399
- serviceOverrides?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProviderServiceOverride>[]>;
3400
- }
3401
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProviderGlobal {
3402
- disableSecurityGroupIngress?: pulumi.Input<boolean>;
3403
- disableStrictZoneCheck?: pulumi.Input<boolean>;
3404
- elbSecurityGroup?: pulumi.Input<string>;
3405
- kubernetesClusterId?: pulumi.Input<string>;
3406
- kubernetesClusterTag?: pulumi.Input<string>;
3407
- roleArn?: pulumi.Input<string>;
3408
- routeTableId?: pulumi.Input<string>;
3409
- subnetId?: pulumi.Input<string>;
3410
- vpc?: pulumi.Input<string>;
3411
- zone?: pulumi.Input<string>;
3412
- }
3413
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAwsCloudProviderServiceOverride {
3414
- region?: pulumi.Input<string>;
3415
- service: pulumi.Input<string>;
3416
- signingMethod?: pulumi.Input<string>;
3417
- signingName?: pulumi.Input<string>;
3418
- signingRegion?: pulumi.Input<string>;
3419
- url?: pulumi.Input<string>;
3186
+ value: pulumi.Input<string>;
3420
3187
  }
3421
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderAzureCloudProvider {
3422
- aadClientCertPassword?: pulumi.Input<string>;
3423
- aadClientCertPath?: pulumi.Input<string>;
3424
- aadClientId: pulumi.Input<string>;
3425
- aadClientSecret: pulumi.Input<string>;
3426
- cloud?: pulumi.Input<string>;
3427
- cloudProviderBackoff?: pulumi.Input<boolean>;
3428
- cloudProviderBackoffDuration?: pulumi.Input<number>;
3429
- cloudProviderBackoffExponent?: pulumi.Input<number>;
3430
- cloudProviderBackoffJitter?: pulumi.Input<number>;
3431
- cloudProviderBackoffRetries?: pulumi.Input<number>;
3432
- cloudProviderRateLimit?: pulumi.Input<boolean>;
3433
- cloudProviderRateLimitBucket?: pulumi.Input<number>;
3434
- cloudProviderRateLimitQps?: pulumi.Input<number>;
3188
+ export interface ClusterV2ClusterAgentDeploymentCustomization {
3435
3189
  /**
3436
- * Load balancer type (basic | standard). Must be standard for auto-scaling
3190
+ * User defined tolerations to append to agent
3437
3191
  */
3438
- loadBalancerSku?: pulumi.Input<string>;
3439
- location?: pulumi.Input<string>;
3440
- maximumLoadBalancerRuleCount?: pulumi.Input<number>;
3441
- primaryAvailabilitySetName?: pulumi.Input<string>;
3442
- primaryScaleSetName?: pulumi.Input<string>;
3443
- resourceGroup?: pulumi.Input<string>;
3444
- routeTableName?: pulumi.Input<string>;
3445
- securityGroupName?: pulumi.Input<string>;
3446
- subnetName?: pulumi.Input<string>;
3447
- subscriptionId: pulumi.Input<string>;
3448
- tenantId: pulumi.Input<string>;
3449
- useInstanceMetadata?: pulumi.Input<boolean>;
3450
- useManagedIdentityExtension?: pulumi.Input<boolean>;
3451
- vmType?: pulumi.Input<string>;
3452
- vnetName?: pulumi.Input<string>;
3453
- vnetResourceGroup?: pulumi.Input<string>;
3454
- }
3455
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProvider {
3456
- blockStorage?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderBlockStorage>;
3457
- global: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderGlobal>;
3458
- loadBalancer?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderLoadBalancer>;
3459
- metadata?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderMetadata>;
3460
- route?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderRoute>;
3461
- }
3462
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderBlockStorage {
3463
- bsVersion?: pulumi.Input<string>;
3464
- ignoreVolumeAz?: pulumi.Input<boolean>;
3465
- trustDevicePath?: pulumi.Input<boolean>;
3466
- }
3467
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderGlobal {
3468
- authUrl: pulumi.Input<string>;
3469
- caFile?: pulumi.Input<string>;
3470
- domainId?: pulumi.Input<string>;
3471
- domainName?: pulumi.Input<string>;
3472
- password: pulumi.Input<string>;
3473
- region?: pulumi.Input<string>;
3474
- tenantId?: pulumi.Input<string>;
3475
- tenantName?: pulumi.Input<string>;
3476
- trustId?: pulumi.Input<string>;
3477
- username: pulumi.Input<string>;
3478
- }
3479
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderLoadBalancer {
3480
- createMonitor?: pulumi.Input<boolean>;
3481
- floatingNetworkId?: pulumi.Input<string>;
3482
- lbMethod?: pulumi.Input<string>;
3483
- lbProvider?: pulumi.Input<string>;
3484
- lbVersion?: pulumi.Input<string>;
3485
- manageSecurityGroups?: pulumi.Input<boolean>;
3486
- monitorDelay?: pulumi.Input<string>;
3487
- monitorMaxRetries?: pulumi.Input<number>;
3488
- monitorTimeout?: pulumi.Input<string>;
3489
- subnetId?: pulumi.Input<string>;
3490
- useOctavia?: pulumi.Input<boolean>;
3491
- }
3492
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderMetadata {
3493
- requestTimeout?: pulumi.Input<number>;
3494
- searchOrder?: pulumi.Input<string>;
3495
- }
3496
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderOpenstackCloudProviderRoute {
3497
- routerId?: pulumi.Input<string>;
3498
- }
3499
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProvider {
3500
- disk?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderDisk>;
3501
- global?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal>;
3502
- network?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderNetwork>;
3503
- virtualCenters: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderVirtualCenter>[]>;
3504
- workspace: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderWorkspace>;
3505
- }
3506
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderDisk {
3507
- scsiControllerType?: pulumi.Input<string>;
3508
- }
3509
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderGlobal {
3510
- datacenters?: pulumi.Input<string>;
3511
- gracefulShutdownTimeout?: pulumi.Input<string>;
3512
- insecureFlag?: pulumi.Input<boolean>;
3513
- password?: pulumi.Input<string>;
3514
- port?: pulumi.Input<string>;
3515
- soapRoundtripCount?: pulumi.Input<number>;
3516
- user?: pulumi.Input<string>;
3517
- }
3518
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderNetwork {
3519
- publicNetwork?: pulumi.Input<string>;
3520
- }
3521
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderVirtualCenter {
3522
- datacenters: pulumi.Input<string>;
3192
+ appendTolerations?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationAppendToleration>[]>;
3523
3193
  /**
3524
- * The cluster template name (string)
3525
- */
3526
- name: pulumi.Input<string>;
3527
- password: pulumi.Input<string>;
3528
- port?: pulumi.Input<string>;
3529
- soapRoundtripCount?: pulumi.Input<number>;
3530
- user: pulumi.Input<string>;
3531
- }
3532
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigCloudProviderVsphereCloudProviderWorkspace {
3533
- datacenter: pulumi.Input<string>;
3534
- defaultDatastore?: pulumi.Input<string>;
3535
- folder: pulumi.Input<string>;
3536
- resourcepoolPath?: pulumi.Input<string>;
3537
- server: pulumi.Input<string>;
3538
- }
3539
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDns {
3540
- /**
3541
- * Linear Autoscaler Params
3542
- */
3543
- linearAutoscalerParams?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsLinearAutoscalerParams>;
3544
- nodeSelector?: pulumi.Input<{
3545
- [key: string]: pulumi.Input<string>;
3546
- }>;
3547
- /**
3548
- * Nodelocal dns
3549
- */
3550
- nodelocal?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsNodelocal>;
3551
- options?: pulumi.Input<{
3552
- [key: string]: pulumi.Input<string>;
3553
- }>;
3554
- provider?: pulumi.Input<string>;
3555
- reverseCidrs?: pulumi.Input<pulumi.Input<string>[]>;
3556
- /**
3557
- * DNS service tolerations
3558
- */
3559
- tolerations?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsToleration>[]>;
3560
- /**
3561
- * Update deployment strategy
3562
- */
3563
- updateStrategy?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsUpdateStrategy>;
3564
- upstreamNameservers?: pulumi.Input<pulumi.Input<string>[]>;
3565
- }
3566
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsLinearAutoscalerParams {
3567
- coresPerReplica?: pulumi.Input<number>;
3568
- max?: pulumi.Input<number>;
3569
- min?: pulumi.Input<number>;
3570
- nodesPerReplica?: pulumi.Input<number>;
3571
- preventSinglePointFailure?: pulumi.Input<boolean>;
3572
- }
3573
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsNodelocal {
3574
- ipAddress?: pulumi.Input<string>;
3575
- /**
3576
- * Node selector key pair
3577
- */
3578
- nodeSelector?: pulumi.Input<{
3579
- [key: string]: pulumi.Input<string>;
3580
- }>;
3581
- }
3582
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsToleration {
3583
- effect?: pulumi.Input<string>;
3584
- key: pulumi.Input<string>;
3585
- operator?: pulumi.Input<string>;
3586
- seconds?: pulumi.Input<number>;
3587
- value?: pulumi.Input<string>;
3588
- }
3589
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsUpdateStrategy {
3590
- /**
3591
- * Rolling update for update strategy
3592
- */
3593
- rollingUpdate?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsUpdateStrategyRollingUpdate>;
3594
- /**
3595
- * Strategy
3596
- */
3597
- strategy?: pulumi.Input<string>;
3598
- }
3599
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigDnsUpdateStrategyRollingUpdate {
3600
- /**
3601
- * Rolling update max surge
3602
- */
3603
- maxSurge?: pulumi.Input<number>;
3604
- /**
3605
- * Rolling update max unavailable
3606
- */
3607
- maxUnavailable?: pulumi.Input<number>;
3608
- }
3609
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngress {
3610
- defaultBackend?: pulumi.Input<boolean>;
3611
- dnsPolicy?: pulumi.Input<string>;
3612
- extraArgs?: pulumi.Input<{
3613
- [key: string]: pulumi.Input<string>;
3614
- }>;
3615
- httpPort?: pulumi.Input<number>;
3616
- httpsPort?: pulumi.Input<number>;
3617
- networkMode?: pulumi.Input<string>;
3618
- nodeSelector?: pulumi.Input<{
3619
- [key: string]: pulumi.Input<string>;
3620
- }>;
3621
- options?: pulumi.Input<{
3622
- [key: string]: pulumi.Input<string>;
3623
- }>;
3624
- provider?: pulumi.Input<string>;
3625
- /**
3626
- * Ingress add-on tolerations
3627
- */
3628
- tolerations?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressToleration>[]>;
3629
- /**
3630
- * Update daemon set strategy
3631
- */
3632
- updateStrategy?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressUpdateStrategy>;
3633
- }
3634
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressToleration {
3635
- effect?: pulumi.Input<string>;
3636
- key: pulumi.Input<string>;
3637
- operator?: pulumi.Input<string>;
3638
- seconds?: pulumi.Input<number>;
3639
- value?: pulumi.Input<string>;
3640
- }
3641
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressUpdateStrategy {
3642
- /**
3643
- * Rolling update for update strategy
3644
- */
3645
- rollingUpdate?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressUpdateStrategyRollingUpdate>;
3646
- /**
3647
- * Strategy
3648
- */
3649
- strategy?: pulumi.Input<string>;
3650
- }
3651
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigIngressUpdateStrategyRollingUpdate {
3652
- /**
3653
- * Rolling update max unavailable
3654
- */
3655
- maxUnavailable?: pulumi.Input<number>;
3656
- }
3657
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoring {
3658
- nodeSelector?: pulumi.Input<{
3659
- [key: string]: pulumi.Input<string>;
3660
- }>;
3661
- options?: pulumi.Input<{
3662
- [key: string]: pulumi.Input<string>;
3663
- }>;
3664
- provider?: pulumi.Input<string>;
3665
- replicas?: pulumi.Input<number>;
3666
- /**
3667
- * Monitoring add-on tolerations
3668
- */
3669
- tolerations?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringToleration>[]>;
3670
- /**
3671
- * Update deployment strategy
3672
- */
3673
- updateStrategy?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringUpdateStrategy>;
3674
- }
3675
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringToleration {
3676
- effect?: pulumi.Input<string>;
3677
- key: pulumi.Input<string>;
3678
- operator?: pulumi.Input<string>;
3679
- seconds?: pulumi.Input<number>;
3680
- value?: pulumi.Input<string>;
3681
- }
3682
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringUpdateStrategy {
3683
- /**
3684
- * Rolling update for update strategy
3685
- */
3686
- rollingUpdate?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringUpdateStrategyRollingUpdate>;
3687
- /**
3688
- * Strategy
3689
- */
3690
- strategy?: pulumi.Input<string>;
3691
- }
3692
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigMonitoringUpdateStrategyRollingUpdate {
3693
- /**
3694
- * Rolling update max surge
3695
- */
3696
- maxSurge?: pulumi.Input<number>;
3697
- /**
3698
- * Rolling update max unavailable
3699
- */
3700
- maxUnavailable?: pulumi.Input<number>;
3701
- }
3702
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetwork {
3703
- aciNetworkProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkAciNetworkProvider>;
3704
- calicoNetworkProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkCalicoNetworkProvider>;
3705
- canalNetworkProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkCanalNetworkProvider>;
3706
- flannelNetworkProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkFlannelNetworkProvider>;
3707
- mtu?: pulumi.Input<number>;
3708
- options?: pulumi.Input<{
3709
- [key: string]: pulumi.Input<string>;
3710
- }>;
3711
- plugin?: pulumi.Input<string>;
3712
- /**
3713
- * Network add-on tolerations
3714
- */
3715
- tolerations?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkToleration>[]>;
3716
- weaveNetworkProvider?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkWeaveNetworkProvider>;
3717
- }
3718
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkAciNetworkProvider {
3719
- aep: pulumi.Input<string>;
3720
- apicHosts: pulumi.Input<pulumi.Input<string>[]>;
3721
- apicRefreshTickerAdjust?: pulumi.Input<string>;
3722
- apicRefreshTime?: pulumi.Input<string>;
3723
- apicSubscriptionDelay?: pulumi.Input<string>;
3724
- apicUserCrt: pulumi.Input<string>;
3725
- apicUserKey: pulumi.Input<string>;
3726
- apicUserName: pulumi.Input<string>;
3727
- capic?: pulumi.Input<string>;
3728
- controllerLogLevel?: pulumi.Input<string>;
3729
- disablePeriodicSnatGlobalInfoSync?: pulumi.Input<string>;
3730
- disableWaitForNetwork?: pulumi.Input<string>;
3731
- dropLogEnable?: pulumi.Input<string>;
3732
- durationWaitForNetwork?: pulumi.Input<string>;
3733
- enableEndpointSlice?: pulumi.Input<string>;
3734
- encapType: pulumi.Input<string>;
3735
- epRegistry?: pulumi.Input<string>;
3736
- externDynamic: pulumi.Input<string>;
3737
- externStatic: pulumi.Input<string>;
3738
- gbpPodSubnet?: pulumi.Input<string>;
3739
- hostAgentLogLevel?: pulumi.Input<string>;
3740
- imagePullPolicy?: pulumi.Input<string>;
3741
- imagePullSecret?: pulumi.Input<string>;
3742
- infraVlan?: pulumi.Input<string>;
3743
- installIstio?: pulumi.Input<string>;
3744
- istioProfile?: pulumi.Input<string>;
3745
- kafkaBrokers?: pulumi.Input<pulumi.Input<string>[]>;
3746
- kafkaClientCrt?: pulumi.Input<string>;
3747
- kafkaClientKey?: pulumi.Input<string>;
3748
- kubeApiVlan: pulumi.Input<string>;
3749
- l3out: pulumi.Input<string>;
3750
- l3outExternalNetworks: pulumi.Input<pulumi.Input<string>[]>;
3751
- maxNodesSvcGraph?: pulumi.Input<string>;
3752
- mcastRangeEnd: pulumi.Input<string>;
3753
- mcastRangeStart: pulumi.Input<string>;
3754
- mtuHeadRoom?: pulumi.Input<string>;
3755
- multusDisable?: pulumi.Input<string>;
3756
- noPriorityClass?: pulumi.Input<string>;
3757
- nodePodIfEnable?: pulumi.Input<string>;
3758
- nodeSubnet: pulumi.Input<string>;
3759
- nodeSvcSubnet: pulumi.Input<string>;
3760
- opflexClientSsl?: pulumi.Input<string>;
3761
- opflexDeviceDeleteTimeout?: pulumi.Input<string>;
3762
- opflexLogLevel?: pulumi.Input<string>;
3763
- opflexMode?: pulumi.Input<string>;
3764
- opflexServerPort?: pulumi.Input<string>;
3765
- overlayVrfName?: pulumi.Input<string>;
3766
- ovsMemoryLimit?: pulumi.Input<string>;
3767
- pbrTrackingNonSnat?: pulumi.Input<string>;
3768
- podSubnetChunkSize?: pulumi.Input<string>;
3769
- runGbpContainer?: pulumi.Input<string>;
3770
- runOpflexServerContainer?: pulumi.Input<string>;
3771
- serviceMonitorInterval?: pulumi.Input<string>;
3772
- serviceVlan: pulumi.Input<string>;
3773
- snatContractScope?: pulumi.Input<string>;
3774
- snatNamespace?: pulumi.Input<string>;
3775
- snatPortRangeEnd?: pulumi.Input<string>;
3776
- snatPortRangeStart?: pulumi.Input<string>;
3777
- snatPortsPerNode?: pulumi.Input<string>;
3778
- sriovEnable?: pulumi.Input<string>;
3779
- subnetDomainName?: pulumi.Input<string>;
3780
- systemId: pulumi.Input<string>;
3781
- tenant?: pulumi.Input<string>;
3782
- token: pulumi.Input<string>;
3783
- useAciAnywhereCrd?: pulumi.Input<string>;
3784
- useAciCniPriorityClass?: pulumi.Input<string>;
3785
- useClusterRole?: pulumi.Input<string>;
3786
- useHostNetnsVolume?: pulumi.Input<string>;
3787
- useOpflexServerVolume?: pulumi.Input<string>;
3788
- usePrivilegedContainer?: pulumi.Input<string>;
3789
- vmmController?: pulumi.Input<string>;
3790
- vmmDomain?: pulumi.Input<string>;
3791
- vrfName: pulumi.Input<string>;
3792
- vrfTenant: pulumi.Input<string>;
3793
- }
3794
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkCalicoNetworkProvider {
3795
- cloudProvider?: pulumi.Input<string>;
3796
- }
3797
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkCanalNetworkProvider {
3798
- iface?: pulumi.Input<string>;
3799
- }
3800
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkFlannelNetworkProvider {
3801
- iface?: pulumi.Input<string>;
3802
- }
3803
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkToleration {
3804
- effect?: pulumi.Input<string>;
3805
- key: pulumi.Input<string>;
3806
- operator?: pulumi.Input<string>;
3807
- seconds?: pulumi.Input<number>;
3808
- value?: pulumi.Input<string>;
3809
- }
3810
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNetworkWeaveNetworkProvider {
3811
- password: pulumi.Input<string>;
3812
- }
3813
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigNode {
3814
- address: pulumi.Input<string>;
3815
- dockerSocket?: pulumi.Input<string>;
3816
- hostnameOverride?: pulumi.Input<string>;
3817
- internalAddress?: pulumi.Input<string>;
3818
- /**
3819
- * Labels for the cluster template (map)
3820
- */
3821
- labels?: pulumi.Input<{
3822
- [key: string]: pulumi.Input<string>;
3823
- }>;
3824
- nodeId?: pulumi.Input<string>;
3825
- port?: pulumi.Input<string>;
3826
- roles: pulumi.Input<pulumi.Input<string>[]>;
3827
- sshAgentAuth?: pulumi.Input<boolean>;
3828
- sshKey?: pulumi.Input<string>;
3829
- sshKeyPath?: pulumi.Input<string>;
3830
- user: pulumi.Input<string>;
3831
- }
3832
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigPrivateRegistry {
3833
- /**
3834
- * ECR credential plugin config
3835
- */
3836
- ecrCredentialPlugin?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigPrivateRegistryEcrCredentialPlugin>;
3837
- isDefault?: pulumi.Input<boolean>;
3838
- password?: pulumi.Input<string>;
3839
- url: pulumi.Input<string>;
3840
- user?: pulumi.Input<string>;
3841
- }
3842
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigPrivateRegistryEcrCredentialPlugin {
3843
- awsAccessKeyId?: pulumi.Input<string>;
3844
- awsSecretAccessKey?: pulumi.Input<string>;
3845
- awsSessionToken?: pulumi.Input<string>;
3846
- }
3847
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServices {
3848
- etcd?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcd>;
3849
- kubeApi?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApi>;
3850
- kubeController?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeController>;
3851
- kubelet?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubelet>;
3852
- kubeproxy?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeproxy>;
3853
- scheduler?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesScheduler>;
3854
- }
3855
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcd {
3856
- backupConfig?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdBackupConfig>;
3857
- caCert?: pulumi.Input<string>;
3858
- cert?: pulumi.Input<string>;
3859
- creation?: pulumi.Input<string>;
3860
- externalUrls?: pulumi.Input<pulumi.Input<string>[]>;
3861
- extraArgs?: pulumi.Input<{
3862
- [key: string]: pulumi.Input<string>;
3863
- }>;
3864
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
3865
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
3866
- gid?: pulumi.Input<number>;
3867
- image?: pulumi.Input<string>;
3868
- key?: pulumi.Input<string>;
3869
- path?: pulumi.Input<string>;
3870
- retention?: pulumi.Input<string>;
3871
- snapshot?: pulumi.Input<boolean>;
3872
- uid?: pulumi.Input<number>;
3873
- }
3874
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdBackupConfig {
3875
- /**
3876
- * Enable cluster template revision. Default `true` (bool)
3877
- */
3878
- enabled?: pulumi.Input<boolean>;
3879
- intervalHours?: pulumi.Input<number>;
3880
- retention?: pulumi.Input<number>;
3881
- s3BackupConfig?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdBackupConfigS3BackupConfig>;
3882
- safeTimestamp?: pulumi.Input<boolean>;
3883
- timeout?: pulumi.Input<number>;
3884
- }
3885
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesEtcdBackupConfigS3BackupConfig {
3886
- accessKey?: pulumi.Input<string>;
3887
- bucketName: pulumi.Input<string>;
3888
- customCa?: pulumi.Input<string>;
3889
- endpoint: pulumi.Input<string>;
3890
- folder?: pulumi.Input<string>;
3891
- region?: pulumi.Input<string>;
3892
- secretKey?: pulumi.Input<string>;
3893
- }
3894
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApi {
3895
- /**
3896
- * Cluster admission configuration
3897
- */
3898
- admissionConfiguration?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAdmissionConfiguration>;
3899
- alwaysPullImages?: pulumi.Input<boolean>;
3900
- auditLog?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAuditLog>;
3901
- eventRateLimit?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiEventRateLimit>;
3902
- extraArgs?: pulumi.Input<{
3903
- [key: string]: pulumi.Input<string>;
3904
- }>;
3905
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
3906
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
3907
- image?: pulumi.Input<string>;
3908
- secretsEncryptionConfig?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiSecretsEncryptionConfig>;
3909
- serviceClusterIpRange?: pulumi.Input<string>;
3910
- serviceNodePortRange?: pulumi.Input<string>;
3911
- }
3912
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAdmissionConfiguration {
3913
- /**
3914
- * Admission configuration ApiVersion
3915
- */
3916
- apiVersion?: pulumi.Input<string>;
3917
- /**
3918
- * Admission configuration Kind
3919
- */
3920
- kind?: pulumi.Input<string>;
3921
- /**
3922
- * Admission configuration plugins
3923
- */
3924
- plugins?: pulumi.Input<pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAdmissionConfigurationPlugin>[]>;
3925
- }
3926
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAdmissionConfigurationPlugin {
3927
- /**
3928
- * Plugin configuration
3929
- */
3930
- configuration?: pulumi.Input<string>;
3931
- /**
3932
- * The cluster template name (string)
3933
- */
3934
- name?: pulumi.Input<string>;
3935
- /**
3936
- * Plugin path
3937
- */
3938
- path?: pulumi.Input<string>;
3939
- }
3940
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAuditLog {
3941
- configuration?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAuditLogConfiguration>;
3942
- /**
3943
- * Enable cluster template revision. Default `true` (bool)
3944
- */
3945
- enabled?: pulumi.Input<boolean>;
3946
- }
3947
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiAuditLogConfiguration {
3948
- format?: pulumi.Input<string>;
3949
- maxAge?: pulumi.Input<number>;
3950
- maxBackup?: pulumi.Input<number>;
3951
- maxSize?: pulumi.Input<number>;
3952
- path?: pulumi.Input<string>;
3953
- policy?: pulumi.Input<string>;
3954
- }
3955
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiEventRateLimit {
3956
- configuration?: pulumi.Input<string>;
3957
- /**
3958
- * Enable cluster template revision. Default `true` (bool)
3959
- */
3960
- enabled?: pulumi.Input<boolean>;
3961
- }
3962
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeApiSecretsEncryptionConfig {
3963
- customConfig?: pulumi.Input<string>;
3964
- /**
3965
- * Enable cluster template revision. Default `true` (bool)
3966
- */
3967
- enabled?: pulumi.Input<boolean>;
3968
- }
3969
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeController {
3970
- clusterCidr?: pulumi.Input<string>;
3971
- extraArgs?: pulumi.Input<{
3972
- [key: string]: pulumi.Input<string>;
3973
- }>;
3974
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
3975
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
3976
- image?: pulumi.Input<string>;
3977
- serviceClusterIpRange?: pulumi.Input<string>;
3978
- }
3979
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubelet {
3980
- clusterDnsServer?: pulumi.Input<string>;
3981
- clusterDomain?: pulumi.Input<string>;
3982
- extraArgs?: pulumi.Input<{
3983
- [key: string]: pulumi.Input<string>;
3984
- }>;
3985
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
3986
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
3987
- failSwapOn?: pulumi.Input<boolean>;
3988
- generateServingCertificate?: pulumi.Input<boolean>;
3989
- image?: pulumi.Input<string>;
3990
- infraContainerImage?: pulumi.Input<string>;
3991
- }
3992
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesKubeproxy {
3993
- extraArgs?: pulumi.Input<{
3994
- [key: string]: pulumi.Input<string>;
3995
- }>;
3996
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
3997
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
3998
- image?: pulumi.Input<string>;
3999
- }
4000
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigServicesScheduler {
4001
- extraArgs?: pulumi.Input<{
4002
- [key: string]: pulumi.Input<string>;
4003
- }>;
4004
- extraBinds?: pulumi.Input<pulumi.Input<string>[]>;
4005
- extraEnvs?: pulumi.Input<pulumi.Input<string>[]>;
4006
- image?: pulumi.Input<string>;
4007
- }
4008
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategy {
4009
- drain?: pulumi.Input<boolean>;
4010
- drainInput?: pulumi.Input<inputs.ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyDrainInput>;
4011
- maxUnavailableControlplane?: pulumi.Input<string>;
4012
- maxUnavailableWorker?: pulumi.Input<string>;
4013
- }
4014
- export interface ClusterTemplateTemplateRevisionClusterConfigRkeConfigUpgradeStrategyDrainInput {
4015
- deleteLocalData?: pulumi.Input<boolean>;
4016
- force?: pulumi.Input<boolean>;
4017
- gracePeriod?: pulumi.Input<number>;
4018
- ignoreDaemonSets?: pulumi.Input<boolean>;
4019
- timeout?: pulumi.Input<number>;
4020
- }
4021
- export interface ClusterTemplateTemplateRevisionQuestion {
4022
- /**
4023
- * Default variable value
4024
- */
4025
- default: pulumi.Input<string>;
4026
- /**
4027
- * Required variable
4028
- */
4029
- required?: pulumi.Input<boolean>;
4030
- /**
4031
- * Variable type
4032
- */
4033
- type?: pulumi.Input<string>;
4034
- /**
4035
- * Variable name
4036
- */
4037
- variable: pulumi.Input<string>;
4038
- }
4039
- export interface ClusterV2AgentEnvVar {
4040
- /**
4041
- * The name of the cluster.
4042
- */
4043
- name: pulumi.Input<string>;
4044
- /**
4045
- * The taint value.
4046
- */
4047
- value: pulumi.Input<string>;
4048
- }
4049
- export interface ClusterV2ClusterAgentDeploymentCustomization {
4050
- /**
4051
- * User defined tolerations to append to agent
4052
- */
4053
- appendTolerations?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationAppendToleration>[]>;
4054
- /**
4055
- * User defined affinity to override default agent affinity
4056
- */
4057
- overrideAffinity?: pulumi.Input<string>;
4058
- /**
4059
- * User defined resource requirements to set on the agent
4060
- */
4061
- overrideResourceRequirements?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement>[]>;
4062
- /**
4063
- * User defined scheduling customization for the cattle cluster agent
4064
- */
4065
- schedulingCustomizations?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomization>[]>;
4066
- }
4067
- export interface ClusterV2ClusterAgentDeploymentCustomizationAppendToleration {
4068
- /**
4069
- * The taint effect. Default: `\"NoExecute\"`.
4070
- */
4071
- effect?: pulumi.Input<string>;
4072
- /**
4073
- * Key is the name of the key of the item to retrieve.
4074
- */
4075
- key: pulumi.Input<string>;
4076
- /**
4077
- * Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
4078
- */
4079
- operator?: pulumi.Input<string>;
4080
- /**
4081
- * The number of seconds a pod will stay bound to a node with a matching taint.
4082
- */
4083
- seconds?: pulumi.Input<number>;
4084
- /**
4085
- * The taint value.
4086
- */
4087
- value?: pulumi.Input<string>;
4088
- }
4089
- export interface ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement {
4090
- /**
4091
- * The maximum CPU limit for agent
4092
- */
4093
- cpuLimit?: pulumi.Input<string>;
4094
- /**
4095
- * The minimum CPU required for agent
4096
- */
4097
- cpuRequest?: pulumi.Input<string>;
4098
- /**
4099
- * The maximum memory limit for agent
4100
- */
4101
- memoryLimit?: pulumi.Input<string>;
4102
- /**
4103
- * The minimum memory required for agent
4104
- */
4105
- memoryRequest?: pulumi.Input<string>;
4106
- }
4107
- export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomization {
4108
- /**
4109
- * The Pod Disruption Budget created for the cattle cluster agent
4110
- */
4111
- podDisruptionBudgets?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPodDisruptionBudget>[]>;
4112
- /**
4113
- * The Priority Class created for the cattle cluster agent
4114
- */
4115
- priorityClasses?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPriorityClass>[]>;
4116
- }
4117
- export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPodDisruptionBudget {
4118
- /**
4119
- * The maximum number of cattle cluster agent replicas that can be down at a given time.
4120
- */
4121
- maxUnavailable?: pulumi.Input<string>;
4122
- /**
4123
- * The minimum number of cattle cluster agent replicas that must be running at a given time.
4124
- */
4125
- minAvailable?: pulumi.Input<string>;
4126
- }
4127
- export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPriorityClass {
4128
- /**
4129
- * The preemption behavior for the cattle cluster agent. Must be either 'PreemptLowerPriority' or 'Never'
4130
- */
4131
- preemptionPolicy?: pulumi.Input<string>;
4132
- /**
4133
- * The priority value for the cattle cluster agent. Must be between negative 1 billion and 1 billion.
4134
- */
4135
- value: pulumi.Input<number>;
4136
- }
4137
- export interface ClusterV2ClusterRegistrationToken {
4138
- /**
4139
- * Annotations for the Cluster.
4140
- */
4141
- annotations?: pulumi.Input<{
4142
- [key: string]: pulumi.Input<string>;
4143
- }>;
4144
- /**
4145
- * Cluster ID.
4146
- */
4147
- clusterId?: pulumi.Input<string>;
4148
- /**
4149
- * Command to execute in an imported k8s cluster.
4150
- */
4151
- command?: pulumi.Input<string>;
4152
- /**
4153
- * (Computed, string) The ID of the resource.
4154
- */
4155
- id?: pulumi.Input<string>;
4156
- /**
4157
- * Insecure command to execute in an imported k8s cluster.
4158
- */
4159
- insecureCommand?: pulumi.Input<string>;
4160
- /**
4161
- * Insecure node command to execute in an imported k8s cluster.
4162
- */
4163
- insecureNodeCommand?: pulumi.Input<string>;
4164
- /**
4165
- * Insecure windows command to execute in an imported k8s cluster.
4166
- */
4167
- insecureWindowsNodeCommand?: pulumi.Input<string>;
4168
- /**
4169
- * Labels for the Cluster.
4170
- */
4171
- labels?: pulumi.Input<{
4172
- [key: string]: pulumi.Input<string>;
4173
- }>;
4174
- /**
4175
- * K8s manifest url to execute with `kubectl` to import an existing k8s cluster.
4176
- */
4177
- manifestUrl?: pulumi.Input<string>;
4178
- /**
4179
- * The name of the cluster.
4180
- */
4181
- name?: pulumi.Input<string>;
4182
- /**
4183
- * Node command to execute in Linux nodes for custom k8s cluster.
4184
- */
4185
- nodeCommand?: pulumi.Input<string>;
4186
- /**
4187
- * Token for cluster registration token object.
4188
- */
4189
- token?: pulumi.Input<string>;
4190
- /**
4191
- * Node command to execute in Windows nodes for custom k8s cluster.
4192
- */
4193
- windowsNodeCommand?: pulumi.Input<string>;
4194
- }
4195
- export interface ClusterV2FleetAgentDeploymentCustomization {
4196
- /**
4197
- * User defined tolerations to append to agent
4198
- */
4199
- appendTolerations?: pulumi.Input<pulumi.Input<inputs.ClusterV2FleetAgentDeploymentCustomizationAppendToleration>[]>;
4200
- /**
4201
- * User defined affinity to override default agent affinity
4202
- */
4203
- overrideAffinity?: pulumi.Input<string>;
4204
- /**
4205
- * User defined resource requirements to set on the agent
4206
- */
4207
- overrideResourceRequirements?: pulumi.Input<pulumi.Input<inputs.ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement>[]>;
4208
- }
4209
- export interface ClusterV2FleetAgentDeploymentCustomizationAppendToleration {
4210
- /**
4211
- * The taint effect. Default: `\"NoExecute\"`.
4212
- */
4213
- effect?: pulumi.Input<string>;
4214
- /**
4215
- * Key is the name of the key of the item to retrieve.
4216
- */
4217
- key: pulumi.Input<string>;
4218
- /**
4219
- * Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
4220
- */
4221
- operator?: pulumi.Input<string>;
4222
- /**
4223
- * The number of seconds a pod will stay bound to a node with a matching taint.
4224
- */
4225
- seconds?: pulumi.Input<number>;
4226
- /**
4227
- * The taint value.
4228
- */
4229
- value?: pulumi.Input<string>;
4230
- }
4231
- export interface ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement {
4232
- /**
4233
- * The maximum CPU limit for agent
4234
- */
4235
- cpuLimit?: pulumi.Input<string>;
4236
- /**
4237
- * The minimum CPU required for agent
4238
- */
4239
- cpuRequest?: pulumi.Input<string>;
4240
- /**
4241
- * The maximum memory limit for agent
4242
- */
4243
- memoryLimit?: pulumi.Input<string>;
4244
- /**
4245
- * The minimum memory required for agent
4246
- */
4247
- memoryRequest?: pulumi.Input<string>;
4248
- }
4249
- export interface ClusterV2LocalAuthEndpoint {
4250
- /**
4251
- * CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.
4252
- */
4253
- caCerts?: pulumi.Input<string>;
4254
- /**
4255
- * If `enabled` is set to true, nodes will be drained before upgrade.
4256
- */
4257
- enabled?: pulumi.Input<boolean>;
4258
- /**
4259
- * FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.
4260
- */
4261
- fqdn?: pulumi.Input<string>;
4262
- }
4263
- export interface ClusterV2RkeConfig {
4264
- /**
4265
- * Cluster V2 additional manifest
4266
- */
4267
- additionalManifest?: pulumi.Input<string>;
4268
- /**
4269
- * Cluster V2 chart values. It should be in YAML format
4270
- */
4271
- chartValues?: pulumi.Input<string>;
4272
- /**
4273
- * Cluster V2 data directories
4274
- */
4275
- dataDirectories?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigDataDirectory>[]>;
4276
- /**
4277
- * Cluster V2 etcd
4278
- */
4279
- etcd?: pulumi.Input<inputs.ClusterV2RkeConfigEtcd>;
4280
- /**
4281
- * Cluster V2 etcd snapshot create
4282
- */
4283
- etcdSnapshotCreate?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdSnapshotCreate>;
4284
- /**
4285
- * Cluster V2 etcd snapshot restore
4286
- */
4287
- etcdSnapshotRestore?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdSnapshotRestore>;
4288
- /**
4289
- * Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).
4290
- *
4291
- * @deprecated Use rancher2_cluster_v2.local_auth_endpoint instead
4292
- */
4293
- localAuthEndpoint?: pulumi.Input<inputs.ClusterV2RkeConfigLocalAuthEndpoint>;
4294
- /**
4295
- * Cluster V2 machine global config
4296
- */
4297
- machineGlobalConfig?: pulumi.Input<string>;
4298
- /**
4299
- * Default values for machine pool configurations if unset
4300
- */
4301
- machinePoolDefaults?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolDefault>[]>;
4302
- /**
4303
- * Cluster V2 machine pools
4304
- */
4305
- machinePools?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePool>[]>;
4306
- /**
4307
- * Cluster V2 machine selector config
4308
- */
4309
- machineSelectorConfigs?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfig>[]>;
4310
- /**
4311
- * Cluster V2 machine selector files
4312
- */
4313
- machineSelectorFiles?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFile>[]>;
4314
- /**
4315
- * Cluster V2 registries
4316
- */
4317
- registries?: pulumi.Input<inputs.ClusterV2RkeConfigRegistries>;
4318
- /**
4319
- * Cluster V2 certificate rotation
4320
- */
4321
- rotateCertificates?: pulumi.Input<inputs.ClusterV2RkeConfigRotateCertificates>;
4322
- /**
4323
- * Cluster V2 upgrade strategy
4324
- */
4325
- upgradeStrategy?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategy>;
4326
- }
4327
- export interface ClusterV2RkeConfigDataDirectory {
4328
- /**
4329
- * Desired k8s distro data directory.
4330
- */
4331
- k8sDistro?: pulumi.Input<string>;
4332
- /**
4333
- * Desired provisioning data directory.
4334
- */
4335
- provisioning?: pulumi.Input<string>;
4336
- /**
4337
- * Desired System Agent data directory.
4338
- */
4339
- systemAgent?: pulumi.Input<string>;
4340
- }
4341
- export interface ClusterV2RkeConfigEtcd {
4342
- /**
4343
- * Disable ETCD snapshots
4344
- */
4345
- disableSnapshots?: pulumi.Input<boolean>;
4346
- /**
4347
- * ETCD snapshot S3 config
4348
- */
4349
- s3Config?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdS3Config>;
4350
- /**
4351
- * ETCD snapshot retention
4352
- */
4353
- snapshotRetention?: pulumi.Input<number>;
4354
- /**
4355
- * ETCD snapshot schedule cron (e.g `"0 *&#47;5 * * *"`)
4356
- */
4357
- snapshotScheduleCron?: pulumi.Input<string>;
4358
- }
4359
- export interface ClusterV2RkeConfigEtcdS3Config {
4360
- /**
4361
- * ETCD snapshot S3 bucket
4362
- */
4363
- bucket: pulumi.Input<string>;
4364
- /**
4365
- * ETCD snapshot S3 cloud credential name
4366
- */
4367
- cloudCredentialName?: pulumi.Input<string>;
4368
- /**
4369
- * ETCD snapshot S3 endpoint
4370
- */
4371
- endpoint: pulumi.Input<string>;
4372
- /**
4373
- * ETCD snapshot S3 endpoint CA
4374
- */
4375
- endpointCa?: pulumi.Input<string>;
4376
- /**
4377
- * ETCD snapshot S3 folder
4378
- */
4379
- folder?: pulumi.Input<string>;
4380
- /**
4381
- * ETCD snapshot S3 region
4382
- */
4383
- region?: pulumi.Input<string>;
4384
- /**
4385
- * Disable ETCD skip ssl verify
4386
- */
4387
- skipSslVerify?: pulumi.Input<boolean>;
4388
- }
4389
- export interface ClusterV2RkeConfigEtcdSnapshotCreate {
4390
- /**
4391
- * ETCD generation to initiate a snapshot
4392
- */
4393
- generation: pulumi.Input<number>;
4394
- }
4395
- export interface ClusterV2RkeConfigEtcdSnapshotRestore {
4396
- /**
4397
- * ETCD snapshot desired generation
4398
- */
4399
- generation: pulumi.Input<number>;
4400
- /**
4401
- * The name of the cluster.
4402
- */
4403
- name: pulumi.Input<string>;
4404
- /**
4405
- * ETCD restore RKE config (set to none, all, or kubernetesVersion)
4406
- */
4407
- restoreRkeConfig?: pulumi.Input<string>;
4408
- }
4409
- export interface ClusterV2RkeConfigLocalAuthEndpoint {
4410
- /**
4411
- * CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.
4412
- */
4413
- caCerts?: pulumi.Input<string>;
4414
- /**
4415
- * If `enabled` is set to true, nodes will be drained before upgrade.
4416
- */
4417
- enabled?: pulumi.Input<boolean>;
4418
- /**
4419
- * FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.
4420
- */
4421
- fqdn?: pulumi.Input<string>;
4422
- }
4423
- export interface ClusterV2RkeConfigMachinePool {
4424
- /**
4425
- * Annotations for the Cluster.
4426
- */
4427
- annotations?: pulumi.Input<{
4428
- [key: string]: pulumi.Input<string>;
4429
- }>;
4430
- /**
4431
- * Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.
4432
- */
4433
- cloudCredentialSecretName?: pulumi.Input<string>;
4434
- /**
4435
- * Machine pool control plane role
4436
- */
4437
- controlPlaneRole?: pulumi.Input<boolean>;
4438
- /**
4439
- * Machine pool drain before delete
4440
- */
4441
- drainBeforeDelete?: pulumi.Input<boolean>;
4442
- /**
4443
- * Machine pool etcd role
4444
- */
4445
- etcdRole?: pulumi.Input<boolean>;
4446
- /**
4447
- * maximum length for autogenerated hostname
4448
- */
4449
- hostnameLengthLimit?: pulumi.Input<number>;
4450
- /**
4451
- * Labels for the Cluster.
4452
- */
4453
- labels?: pulumi.Input<{
4454
- [key: string]: pulumi.Input<string>;
4455
- }>;
4456
- /**
4457
- * Machine config data
4458
- */
4459
- machineConfig: pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolMachineConfig>;
4460
- /**
4461
- * Labels for the machine pool nodes
4462
- */
4463
- machineLabels?: pulumi.Input<{
4464
- [key: string]: pulumi.Input<string>;
4465
- }>;
4466
- /**
4467
- * OS Type in machine pool
4468
- */
4469
- machineOs?: pulumi.Input<string>;
4470
- /**
4471
- * max unhealthy nodes for automated replacement to be allowed
4472
- */
4473
- maxUnhealthy?: pulumi.Input<string>;
4474
- /**
4475
- * The name of the cluster.
4476
- */
4477
- name: pulumi.Input<string>;
4478
- /**
4479
- * seconds to wait for machine pool drain to complete before machine deletion
4480
- */
4481
- nodeDrainTimeout?: pulumi.Input<number>;
4482
- /**
4483
- * seconds a new node has to become active before it is replaced
4484
- */
4485
- nodeStartupTimeoutSeconds?: pulumi.Input<number>;
4486
- /**
4487
- * Machine pool paused
4488
- */
4489
- paused?: pulumi.Input<boolean>;
4490
- /**
4491
- * Machine pool quantity
4492
- */
4493
- quantity?: pulumi.Input<number>;
4494
- /**
4495
- * Machine pool rolling update
4496
- */
4497
- rollingUpdate?: pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolRollingUpdate>;
4498
- /**
4499
- * Machine pool taints
4500
- */
4501
- taints?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolTaint>[]>;
4502
- /**
4503
- * seconds an unhealthy node has to become active before it is replaced
4504
- */
4505
- unhealthyNodeTimeoutSeconds?: pulumi.Input<number>;
4506
- /**
4507
- * range of unhealthy nodes for automated replacement to be allowed
4508
- */
4509
- unhealthyRange?: pulumi.Input<string>;
4510
- /**
4511
- * Machine pool worker role
4512
- */
4513
- workerRole?: pulumi.Input<boolean>;
4514
- }
4515
- export interface ClusterV2RkeConfigMachinePoolDefault {
4516
- /**
4517
- * maximum length for autogenerated hostname
4518
- */
4519
- hostnameLengthLimit?: pulumi.Input<number>;
4520
- }
4521
- export interface ClusterV2RkeConfigMachinePoolMachineConfig {
4522
- /**
4523
- * Machine config API version
4524
- */
4525
- apiVersion?: pulumi.Input<string>;
4526
- /**
4527
- * Machine config kind
4528
- */
4529
- kind: pulumi.Input<string>;
4530
- /**
4531
- * The name of the cluster.
4532
- */
4533
- name: pulumi.Input<string>;
4534
- }
4535
- export interface ClusterV2RkeConfigMachinePoolRollingUpdate {
4536
- /**
4537
- * Rolling update max surge
4538
- */
4539
- maxSurge?: pulumi.Input<string>;
4540
- /**
4541
- * Rolling update max unavailable
4542
- */
4543
- maxUnavailable?: pulumi.Input<string>;
4544
- }
4545
- export interface ClusterV2RkeConfigMachinePoolTaint {
4546
- /**
4547
- * The taint effect. Default: `\"NoExecute\"`.
4548
- */
4549
- effect?: pulumi.Input<string>;
4550
- /**
4551
- * Key is the name of the key of the item to retrieve.
4552
- */
4553
- key: pulumi.Input<string>;
4554
- /**
4555
- * The taint value.
4556
- */
4557
- value: pulumi.Input<string>;
4558
- }
4559
- export interface ClusterV2RkeConfigMachineSelectorConfig {
4560
- /**
4561
- * Machine selector config
4562
- */
4563
- config?: pulumi.Input<string>;
4564
- /**
4565
- * Machine label selector
4566
- */
4567
- machineLabelSelector?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector>;
4568
- }
4569
- export interface ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector {
4570
- /**
4571
- * Label selector match expressions
4572
- */
4573
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression>[]>;
4574
- /**
4575
- * Label selector match labels
4576
- */
4577
- matchLabels?: pulumi.Input<{
4578
- [key: string]: pulumi.Input<string>;
4579
- }>;
4580
- }
4581
- export interface ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression {
4582
- /**
4583
- * Label selector requirement key
4584
- */
4585
- key?: pulumi.Input<string>;
4586
- /**
4587
- * Label selector operator
4588
- */
4589
- operator?: pulumi.Input<string>;
4590
- /**
4591
- * Label selector requirement values
4592
- */
4593
- values?: pulumi.Input<pulumi.Input<string>[]>;
4594
- }
4595
- export interface ClusterV2RkeConfigMachineSelectorFile {
4596
- /**
4597
- * File sources
4598
- */
4599
- fileSources?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSource>[]>;
4600
- /**
4601
- * Machine label selector
4602
- */
4603
- machineLabelSelector?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector>;
4604
- }
4605
- export interface ClusterV2RkeConfigMachineSelectorFileFileSource {
4606
- /**
4607
- * The configmap which is the source of files
4608
- */
4609
- configmap?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap>;
4610
- /**
4611
- * The secret which is the source of files
4612
- */
4613
- secret?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceSecret>;
4614
- }
4615
- export interface ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap {
4616
- /**
4617
- * The default permissions to be applied when they are not set at the item level
4618
- */
4619
- defaultPermissions?: pulumi.Input<string>;
4620
- /**
4621
- * Items(files) to retrieve from the K8s object
4622
- */
4623
- items?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem>[]>;
4624
- /**
4625
- * The name of the cluster.
4626
- */
4627
- name: pulumi.Input<string>;
4628
- }
4629
- export interface ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem {
4630
- /**
4631
- * If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).
4632
- */
4633
- dynamic?: pulumi.Input<boolean>;
4634
- /**
4635
- * The base64 encoded value of the SHA256 checksum of the file's content
4636
- */
4637
- hash?: pulumi.Input<string>;
4638
- /**
4639
- * The key of the item(file) to retrieve
4640
- */
4641
- key: pulumi.Input<string>;
4642
- /**
4643
- * The path to put the file in the target node
4644
- */
4645
- path: pulumi.Input<string>;
4646
- /**
4647
- * The numeric representation of the file permissions
4648
- */
4649
- permissions?: pulumi.Input<string>;
4650
- }
4651
- export interface ClusterV2RkeConfigMachineSelectorFileFileSourceSecret {
4652
- /**
4653
- * The default permissions to be applied when they are not set at the item level
4654
- */
4655
- defaultPermissions?: pulumi.Input<string>;
4656
- /**
4657
- * Items(files) to retrieve from the K8s object
4658
- */
4659
- items?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem>[]>;
4660
- /**
4661
- * The name of the cluster.
4662
- */
4663
- name: pulumi.Input<string>;
4664
- }
4665
- export interface ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem {
4666
- /**
4667
- * If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).
4668
- */
4669
- dynamic?: pulumi.Input<boolean>;
4670
- /**
4671
- * The base64 encoded value of the SHA256 checksum of the file's content
4672
- */
4673
- hash?: pulumi.Input<string>;
4674
- /**
4675
- * The key of the item(file) to retrieve
4676
- */
4677
- key: pulumi.Input<string>;
4678
- /**
4679
- * The path to put the file in the target node
4680
- */
4681
- path: pulumi.Input<string>;
4682
- /**
4683
- * The numeric representation of the file permissions
4684
- */
4685
- permissions?: pulumi.Input<string>;
4686
- }
4687
- export interface ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector {
4688
- /**
4689
- * Label selector match expressions
4690
- */
4691
- matchExpressions?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression>[]>;
4692
- /**
4693
- * Label selector match labels
4694
- */
4695
- matchLabels?: pulumi.Input<{
4696
- [key: string]: pulumi.Input<string>;
4697
- }>;
4698
- }
4699
- export interface ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression {
4700
- /**
4701
- * Label selector requirement key
4702
- */
4703
- key?: pulumi.Input<string>;
4704
- /**
4705
- * Label selector operator
4706
- */
4707
- operator?: pulumi.Input<string>;
4708
- /**
4709
- * Label selector requirement values
4710
- */
4711
- values?: pulumi.Input<pulumi.Input<string>[]>;
4712
- }
4713
- export interface ClusterV2RkeConfigRegistries {
4714
- /**
4715
- * Registry config
4716
- */
4717
- configs?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigRegistriesConfig>[]>;
4718
- /**
4719
- * Registry mirrors
4720
- */
4721
- mirrors?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigRegistriesMirror>[]>;
4722
- }
4723
- export interface ClusterV2RkeConfigRegistriesConfig {
4724
- /**
4725
- * Registry auth config secret name
4726
- */
4727
- authConfigSecretName?: pulumi.Input<string>;
4728
- /**
4729
- * Registry CA bundle
4730
- */
4731
- caBundle?: pulumi.Input<string>;
4732
- /**
4733
- * Registry hostname
4734
- */
4735
- hostname: pulumi.Input<string>;
4736
- /**
4737
- * Registry insecure connectivity
4738
- */
4739
- insecure?: pulumi.Input<boolean>;
4740
- /**
4741
- * Registry TLS secret name. TLS is a pair of Cert/Key
4742
- */
4743
- tlsSecretName?: pulumi.Input<string>;
4744
- }
4745
- export interface ClusterV2RkeConfigRegistriesMirror {
4746
- /**
4747
- * Registry mirror endpoints
4748
- */
4749
- endpoints?: pulumi.Input<pulumi.Input<string>[]>;
4750
- /**
4751
- * Registry hostname
4752
- */
4753
- hostname: pulumi.Input<string>;
4754
- /**
4755
- * Registry mirror rewrites
4756
- */
4757
- rewrites?: pulumi.Input<{
4758
- [key: string]: pulumi.Input<string>;
4759
- }>;
4760
- }
4761
- export interface ClusterV2RkeConfigRotateCertificates {
4762
- /**
4763
- * Desired certificate rotation generation.
4764
- */
4765
- generation: pulumi.Input<number>;
4766
- /**
4767
- * Service certificates to rotate with this generation.
4768
- */
4769
- services?: pulumi.Input<pulumi.Input<string>[]>;
4770
- }
4771
- export interface ClusterV2RkeConfigUpgradeStrategy {
4772
- /**
4773
- * How many controlplane nodes should be upgrade at time, 0 is infinite. Percentages are also accepted
4774
- */
4775
- controlPlaneConcurrency?: pulumi.Input<string>;
4776
- /**
4777
- * Controlplane nodes drain options
4778
- */
4779
- controlPlaneDrainOptions?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions>;
4780
- /**
4781
- * How many worker nodes should be upgrade at time
4782
- */
4783
- workerConcurrency?: pulumi.Input<string>;
4784
- /**
4785
- * Worker nodes drain options
4786
- */
4787
- workerDrainOptions?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions>;
4788
- }
4789
- export interface ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions {
4790
- /**
4791
- * Drain options delete empty dir data
4792
- */
4793
- deleteEmptyDirData?: pulumi.Input<boolean>;
4794
- /**
4795
- * Drain options disable eviction
4796
- */
4797
- disableEviction?: pulumi.Input<boolean>;
4798
- /**
4799
- * Drain options enabled?
4800
- */
4801
- enabled?: pulumi.Input<boolean>;
4802
- /**
4803
- * Drain options force
4804
- */
4805
- force?: pulumi.Input<boolean>;
4806
- /**
4807
- * Drain options grace period
4808
- */
4809
- gracePeriod?: pulumi.Input<number>;
4810
- /**
4811
- * Drain options ignore daemon sets
4812
- */
4813
- ignoreDaemonSets?: pulumi.Input<boolean>;
4814
- /**
4815
- * Drain options ignore errors
4816
- */
4817
- ignoreErrors?: pulumi.Input<boolean>;
4818
- /**
4819
- * Drain options skip wait for delete timeout seconds
4820
- */
4821
- skipWaitForDeleteTimeoutSeconds?: pulumi.Input<number>;
4822
- /**
4823
- * Drain options timeout
4824
- */
4825
- timeout?: pulumi.Input<number>;
4826
- }
4827
- export interface ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions {
4828
- /**
4829
- * Drain options delete empty dir data
4830
- */
4831
- deleteEmptyDirData?: pulumi.Input<boolean>;
4832
- /**
4833
- * Drain options disable eviction
4834
- */
4835
- disableEviction?: pulumi.Input<boolean>;
4836
- /**
4837
- * Drain options enabled?
4838
- */
4839
- enabled?: pulumi.Input<boolean>;
4840
- /**
4841
- * Drain options force
4842
- */
4843
- force?: pulumi.Input<boolean>;
4844
- /**
4845
- * Drain options grace period
4846
- */
4847
- gracePeriod?: pulumi.Input<number>;
4848
- /**
4849
- * Drain options ignore daemon sets
4850
- */
4851
- ignoreDaemonSets?: pulumi.Input<boolean>;
4852
- /**
4853
- * Drain options ignore errors
4854
- */
4855
- ignoreErrors?: pulumi.Input<boolean>;
4856
- /**
4857
- * Drain options skip wait for delete timeout seconds
4858
- */
4859
- skipWaitForDeleteTimeoutSeconds?: pulumi.Input<number>;
4860
- /**
4861
- * Drain options timeout
4862
- */
4863
- timeout?: pulumi.Input<number>;
4864
- }
4865
- export interface EtcdBackupBackupConfig {
4866
- /**
4867
- * Enable etcd backup (bool)
4868
- */
4869
- enabled?: pulumi.Input<boolean>;
4870
- /**
4871
- * Interval hours for etcd backup. Default `12` (int)
4872
- */
4873
- intervalHours?: pulumi.Input<number>;
4874
- /**
4875
- * Retention for etcd backup. Default `6` (int)
4876
- */
4877
- retention?: pulumi.Input<number>;
4878
- /**
4879
- * S3 config options for etcd backup. Valid for `imported` and `rke` clusters. (list maxitems:1)
4880
- */
4881
- s3BackupConfig?: pulumi.Input<inputs.EtcdBackupBackupConfigS3BackupConfig>;
4882
- safeTimestamp?: pulumi.Input<boolean>;
4883
- timeout?: pulumi.Input<number>;
4884
- }
4885
- export interface EtcdBackupBackupConfigS3BackupConfig {
4886
- /**
4887
- * Access key for S3 service (string)
4888
- */
4889
- accessKey?: pulumi.Input<string>;
4890
- /**
4891
- * Bucket name for S3 service (string)
4892
- */
4893
- bucketName: pulumi.Input<string>;
4894
- /**
4895
- * Base64 encoded custom CA for S3 service. Use filebase64(<FILE>) for encoding file. Available from Rancher v2.2.5 (string)
4896
- */
4897
- customCa?: pulumi.Input<string>;
4898
- /**
4899
- * Endpoint for S3 service (string)
4900
- */
4901
- endpoint: pulumi.Input<string>;
4902
- /**
4903
- * Folder for S3 service. Available from Rancher v2.2.7 (string)
4904
- */
4905
- folder?: pulumi.Input<string>;
4906
- /**
4907
- * Region for S3 service (string)
4908
- */
4909
- region?: pulumi.Input<string>;
4910
- /**
4911
- * Secret key for S3 service (string)
4912
- */
4913
- secretKey?: pulumi.Input<string>;
4914
- }
4915
- export interface GetRoleTemplateExternalRule {
4916
- /**
4917
- * Policy rule api groups
4918
- */
4919
- apiGroups?: string[];
4920
- /**
4921
- * Policy rule non resource urls
4922
- */
4923
- nonResourceUrls?: string[];
4924
- /**
4925
- * Policy rule resource names
4926
- */
4927
- resourceNames?: string[];
4928
- /**
4929
- * Policy rule resources
4930
- */
4931
- resources?: string[];
4932
- /**
4933
- * Policy rule verbs
4934
- */
4935
- verbs?: string[];
4936
- }
4937
- export interface GetRoleTemplateExternalRuleArgs {
4938
- /**
4939
- * Policy rule api groups
4940
- */
4941
- apiGroups?: pulumi.Input<pulumi.Input<string>[]>;
4942
- /**
4943
- * Policy rule non resource urls
4944
- */
4945
- nonResourceUrls?: pulumi.Input<pulumi.Input<string>[]>;
4946
- /**
4947
- * Policy rule resource names
4948
- */
4949
- resourceNames?: pulumi.Input<pulumi.Input<string>[]>;
4950
- /**
4951
- * Policy rule resources
4952
- */
4953
- resources?: pulumi.Input<pulumi.Input<string>[]>;
4954
- /**
4955
- * Policy rule verbs
4956
- */
4957
- verbs?: pulumi.Input<pulumi.Input<string>[]>;
4958
- }
4959
- export interface GlobalRoleRule {
4960
- /**
4961
- * Policy rule api groups
4962
- */
4963
- apiGroups?: pulumi.Input<pulumi.Input<string>[]>;
4964
- /**
4965
- * Policy rule non resource urls
4966
- */
4967
- nonResourceUrls?: pulumi.Input<pulumi.Input<string>[]>;
4968
- /**
4969
- * Policy rule resource names
4970
- */
4971
- resourceNames?: pulumi.Input<pulumi.Input<string>[]>;
4972
- /**
4973
- * Policy rule resources
4974
- */
4975
- resources?: pulumi.Input<pulumi.Input<string>[]>;
4976
- /**
4977
- * Policy rule verbs
4978
- */
4979
- verbs?: pulumi.Input<pulumi.Input<string>[]>;
4980
- }
4981
- export interface MachineConfigV2Amazonec2Config {
4982
- /**
4983
- * AWS Access Key
4984
- */
4985
- accessKey?: pulumi.Input<string>;
4986
- /**
4987
- * AWS machine image
4988
- */
4989
- ami: pulumi.Input<string>;
4990
- /**
4991
- * AWS spot instance duration in minutes (60, 120, 180, 240, 300, or 360)
4992
- */
4993
- blockDurationMinutes?: pulumi.Input<string>;
4994
- /**
4995
- * AWS root device name
4996
- */
4997
- deviceName?: pulumi.Input<string>;
4998
- /**
4999
- * Encrypt EBS volume
5000
- */
5001
- encryptEbsVolume?: pulumi.Input<boolean>;
5002
- /**
5003
- * Optional endpoint URL (hostname only or fully qualified URI)
5004
- */
5005
- endpoint?: pulumi.Input<string>;
5006
- /**
5007
- * Enables or disables the HTTP metadata endpoint on your instances
5008
- */
5009
- httpEndpoint?: pulumi.Input<string>;
5010
- /**
5011
- * The state of token usage for your instance metadata requests
5012
- */
5013
- httpTokens?: pulumi.Input<string>;
5014
- /**
5015
- * AWS IAM Instance Profile
5016
- */
5017
- iamInstanceProfile?: pulumi.Input<string>;
5018
- /**
5019
- * Disable SSL when sending requests
5020
- */
5021
- insecureTransport?: pulumi.Input<boolean>;
5022
- /**
5023
- * AWS instance type
5024
- */
5025
- instanceType?: pulumi.Input<string>;
5026
- /**
5027
- * Custom KMS key ID using the AWS Managed CMK
5028
- */
5029
- kmsKey?: pulumi.Input<string>;
5030
- /**
5031
- * Set this flag to enable CloudWatch monitoring
5032
- */
5033
- monitoring?: pulumi.Input<boolean>;
5034
- /**
5035
- * Make the specified port number accessible from the Internet
5036
- */
5037
- openPorts?: pulumi.Input<pulumi.Input<string>[]>;
5038
- /**
5039
- * Only use a private IP address
5040
- */
5041
- privateAddressOnly?: pulumi.Input<boolean>;
5042
- /**
5043
- * AWS Region
5044
- */
5045
- region: pulumi.Input<string>;
5046
- /**
5047
- * Set this flag to request spot instance
5048
- */
5049
- requestSpotInstance?: pulumi.Input<boolean>;
5050
- /**
5051
- * Set retry count for recoverable failures (use -1 to disable)
5052
- */
5053
- retries?: pulumi.Input<string>;
5054
- /**
5055
- * AWS root disk size (in GB)
5056
- */
5057
- rootSize?: pulumi.Input<string>;
5058
- /**
5059
- * AWS Secret Key
5060
- */
5061
- secretKey?: pulumi.Input<string>;
5062
- /**
5063
- * Skip adding default rules to security groups
5064
- */
5065
- securityGroupReadonly?: pulumi.Input<boolean>;
5066
- /**
5067
- * AWS VPC security group
5068
- */
5069
- securityGroups: pulumi.Input<pulumi.Input<string>[]>;
5070
- /**
5071
- * AWS Session Token
5072
- */
5073
- sessionToken?: pulumi.Input<string>;
5074
- /**
5075
- * AWS spot instance bid price (in dollar)
5076
- */
5077
- spotPrice?: pulumi.Input<string>;
5078
- /**
5079
- * SSH Key file contents for sshKeyContents
5080
- */
5081
- sshKeyContents?: pulumi.Input<string>;
5082
- /**
5083
- * Set the name of the ssh user
5084
- */
5085
- sshUser?: pulumi.Input<string>;
5086
- /**
5087
- * AWS VPC subnet id
5088
- */
5089
- subnetId: pulumi.Input<string>;
5090
- /**
5091
- * AWS Tags (e.g. key1,value1,key2,value2)
5092
- */
5093
- tags?: pulumi.Input<string>;
5094
- /**
5095
- * Create an EBS optimized instance
5096
- */
5097
- useEbsOptimizedInstance?: pulumi.Input<boolean>;
5098
- /**
5099
- * Force the usage of private IP address
5100
- */
5101
- usePrivateAddress?: pulumi.Input<boolean>;
5102
- /**
5103
- * Path to file with cloud-init user data
5104
- */
5105
- userdata?: pulumi.Input<string>;
5106
- /**
5107
- * Amazon EBS volume type
5108
- */
5109
- volumeType?: pulumi.Input<string>;
5110
- /**
5111
- * AWS VPC id
5112
- */
5113
- vpcId: pulumi.Input<string>;
5114
- /**
5115
- * AWS zone for instance (i.e. a,b,c,d,e)
5116
- */
5117
- zone: pulumi.Input<string>;
5118
- }
5119
- export interface MachineConfigV2AzureConfig {
5120
- /**
5121
- * Use Accelerated Networking when creating a network interface for the Azure VM
5122
- */
5123
- acceleratedNetworking?: pulumi.Input<boolean>;
5124
- /**
5125
- * Azure Availability Set to place the virtual machine into
5126
- */
5127
- availabilitySet?: pulumi.Input<string>;
5128
- /**
5129
- * The Availability Zone that the Azure VM should be created in
5130
- */
5131
- availabilityZone?: pulumi.Input<string>;
5132
- /**
5133
- * Azure Service Principal Account ID (optional, browser auth is used if not specified)
5134
- */
5135
- clientId?: pulumi.Input<string>;
5136
- /**
5137
- * Azure Service Principal Account password (optional, browser auth is used if not specified)
3194
+ * User defined affinity to override default agent affinity
5138
3195
  */
5139
- clientSecret?: pulumi.Input<string>;
3196
+ overrideAffinity?: pulumi.Input<string>;
5140
3197
  /**
5141
- * Path to file with custom-data
3198
+ * User defined resource requirements to set on the agent
5142
3199
  */
5143
- customData?: pulumi.Input<string>;
3200
+ overrideResourceRequirements?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement>[]>;
5144
3201
  /**
5145
- * Disk size if using managed disk
3202
+ * User defined scheduling customization for the cattle cluster agent
5146
3203
  */
5147
- diskSize?: pulumi.Input<string>;
3204
+ schedulingCustomizations?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomization>[]>;
3205
+ }
3206
+ export interface ClusterV2ClusterAgentDeploymentCustomizationAppendToleration {
5148
3207
  /**
5149
- * A unique DNS label for the public IP adddress
3208
+ * The taint effect. Default: `\"NoExecute\"`.
5150
3209
  */
5151
- dns?: pulumi.Input<string>;
3210
+ effect?: pulumi.Input<string>;
5152
3211
  /**
5153
- * Port number for Docker engine
3212
+ * Key is the name of the key of the item to retrieve.
5154
3213
  */
5155
- dockerPort?: pulumi.Input<string>;
3214
+ key: pulumi.Input<string>;
5156
3215
  /**
5157
- * Azure environment (e.g. AzurePublicCloud, AzureChinaCloud)
3216
+ * Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
5158
3217
  */
5159
- environment?: pulumi.Input<string>;
3218
+ operator?: pulumi.Input<string>;
5160
3219
  /**
5161
- * Fault domain count to use for availability set
3220
+ * The number of seconds a pod will stay bound to a node with a matching taint.
5162
3221
  */
5163
- faultDomainCount?: pulumi.Input<string>;
3222
+ seconds?: pulumi.Input<number>;
5164
3223
  /**
5165
- * Azure virtual machine OS image
3224
+ * The taint value.
5166
3225
  */
5167
- image?: pulumi.Input<string>;
3226
+ value?: pulumi.Input<string>;
3227
+ }
3228
+ export interface ClusterV2ClusterAgentDeploymentCustomizationOverrideResourceRequirement {
5168
3229
  /**
5169
- * Azure region to create the virtual machine
3230
+ * The maximum CPU limit for agent
5170
3231
  */
5171
- location?: pulumi.Input<string>;
3232
+ cpuLimit?: pulumi.Input<string>;
5172
3233
  /**
5173
- * Configures VM and availability set for managed disks
3234
+ * The minimum CPU required for agent
5174
3235
  */
5175
- managedDisks?: pulumi.Input<boolean>;
3236
+ cpuRequest?: pulumi.Input<string>;
5176
3237
  /**
5177
- * Do not create a public IP address for the machine
3238
+ * The maximum memory limit for agent
5178
3239
  */
5179
- noPublicIp?: pulumi.Input<boolean>;
3240
+ memoryLimit?: pulumi.Input<string>;
5180
3241
  /**
5181
- * Azure Network Security Group to assign this node to (accepts either a name or resource ID, default is to create a new NSG for each machine)
3242
+ * The minimum memory required for agent
5182
3243
  */
5183
- nsg?: pulumi.Input<string>;
3244
+ memoryRequest?: pulumi.Input<string>;
3245
+ }
3246
+ export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomization {
5184
3247
  /**
5185
- * Make the specified port number accessible from the Internet
3248
+ * The Pod Disruption Budget created for the cattle cluster agent
5186
3249
  */
5187
- openPorts?: pulumi.Input<pulumi.Input<string>[]>;
3250
+ podDisruptionBudgets?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPodDisruptionBudget>[]>;
5188
3251
  /**
5189
- * Only use a private IP address
3252
+ * The Priority Class created for the cattle cluster agent
5190
3253
  */
5191
- privateAddressOnly?: pulumi.Input<boolean>;
3254
+ priorityClasses?: pulumi.Input<pulumi.Input<inputs.ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPriorityClass>[]>;
3255
+ }
3256
+ export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPodDisruptionBudget {
5192
3257
  /**
5193
- * Specify a static private IP address for the machine
3258
+ * The maximum number of cattle cluster agent replicas that can be down at a given time.
5194
3259
  */
5195
- privateIpAddress?: pulumi.Input<string>;
3260
+ maxUnavailable?: pulumi.Input<string>;
5196
3261
  /**
5197
- * Azure Resource Group name (will be created if missing)
3262
+ * The minimum number of cattle cluster agent replicas that must be running at a given time.
5198
3263
  */
5199
- resourceGroup?: pulumi.Input<string>;
3264
+ minAvailable?: pulumi.Input<string>;
3265
+ }
3266
+ export interface ClusterV2ClusterAgentDeploymentCustomizationSchedulingCustomizationPriorityClass {
5200
3267
  /**
5201
- * Size for Azure Virtual Machine
3268
+ * The preemption behavior for the cattle cluster agent. Must be either 'PreemptLowerPriority' or 'Never'
5202
3269
  */
5203
- size?: pulumi.Input<string>;
3270
+ preemptionPolicy?: pulumi.Input<string>;
5204
3271
  /**
5205
- * Username for SSH login
3272
+ * The priority value for the cattle cluster agent. Must be between negative 1 billion and 1 billion.
5206
3273
  */
5207
- sshUser?: pulumi.Input<string>;
3274
+ value: pulumi.Input<number>;
3275
+ }
3276
+ export interface ClusterV2ClusterRegistrationToken {
5208
3277
  /**
5209
- * Assign a static public IP address to the machine
3278
+ * Annotations for the Cluster.
5210
3279
  */
5211
- staticPublicIp?: pulumi.Input<boolean>;
3280
+ annotations?: pulumi.Input<{
3281
+ [key: string]: pulumi.Input<string>;
3282
+ }>;
5212
3283
  /**
5213
- * Type of Storage Account to host the OS Disk for the machine
3284
+ * Cluster ID.
5214
3285
  */
5215
- storageType?: pulumi.Input<string>;
3286
+ clusterId?: pulumi.Input<string>;
5216
3287
  /**
5217
- * Azure Subnet Name to be used within the Virtual Network
3288
+ * Command to execute in an imported k8s cluster.
5218
3289
  */
5219
- subnet?: pulumi.Input<string>;
3290
+ command?: pulumi.Input<string>;
5220
3291
  /**
5221
- * Private CIDR block to be used for the new subnet, should comply RFC 1918
3292
+ * (Computed, string) The ID of the resource.
5222
3293
  */
5223
- subnetPrefix?: pulumi.Input<string>;
3294
+ id?: pulumi.Input<string>;
5224
3295
  /**
5225
- * Azure Subscription ID
3296
+ * Insecure command to execute in an imported k8s cluster.
5226
3297
  */
5227
- subscriptionId?: pulumi.Input<string>;
3298
+ insecureCommand?: pulumi.Input<string>;
5228
3299
  /**
5229
- * Tags to be applied to the Azure VM instance (e.g. key1,value1,key2,value2)
3300
+ * Insecure node command to execute in an imported k8s cluster.
5230
3301
  */
5231
- tags?: pulumi.Input<string>;
3302
+ insecureNodeCommand?: pulumi.Input<string>;
5232
3303
  /**
5233
- * Azure Tenant ID
3304
+ * Insecure windows command to execute in an imported k8s cluster.
5234
3305
  */
5235
- tenantId?: pulumi.Input<string>;
3306
+ insecureWindowsNodeCommand?: pulumi.Input<string>;
5236
3307
  /**
5237
- * Update domain count to use for availability set
3308
+ * Labels for the Cluster.
5238
3309
  */
5239
- updateDomainCount?: pulumi.Input<string>;
3310
+ labels?: pulumi.Input<{
3311
+ [key: string]: pulumi.Input<string>;
3312
+ }>;
5240
3313
  /**
5241
- * Use private IP address of the machine to connect
3314
+ * K8s manifest url to execute with `kubectl` to import an existing k8s cluster.
5242
3315
  */
5243
- usePrivateIp?: pulumi.Input<boolean>;
3316
+ manifestUrl?: pulumi.Input<string>;
5244
3317
  /**
5245
- * Use the standard SKU when creating a Public IP for the Azure VM instance
3318
+ * The name of the cluster.
5246
3319
  */
5247
- usePublicIpStandardSku?: pulumi.Input<boolean>;
3320
+ name?: pulumi.Input<string>;
5248
3321
  /**
5249
- * Azure Virtual Network name to connect the virtual machine (in [resourcegroup:]name format)
3322
+ * Node command to execute in Linux nodes for custom k8s cluster.
5250
3323
  */
5251
- vnet?: pulumi.Input<string>;
5252
- }
5253
- export interface MachineConfigV2DigitaloceanConfig {
3324
+ nodeCommand?: pulumi.Input<string>;
5254
3325
  /**
5255
- * Digital Ocean access token
3326
+ * Token for cluster registration token object.
5256
3327
  */
5257
- accessToken?: pulumi.Input<string>;
3328
+ token?: pulumi.Input<string>;
5258
3329
  /**
5259
- * Enable backups for droplet
3330
+ * Node command to execute in Windows nodes for custom k8s cluster.
5260
3331
  */
5261
- backups?: pulumi.Input<boolean>;
3332
+ windowsNodeCommand?: pulumi.Input<string>;
3333
+ }
3334
+ export interface ClusterV2FleetAgentDeploymentCustomization {
5262
3335
  /**
5263
- * Digital Ocean Image
3336
+ * User defined tolerations to append to agent
5264
3337
  */
5265
- image?: pulumi.Input<string>;
3338
+ appendTolerations?: pulumi.Input<pulumi.Input<inputs.ClusterV2FleetAgentDeploymentCustomizationAppendToleration>[]>;
5266
3339
  /**
5267
- * Enable ipv6 for droplet
3340
+ * User defined affinity to override default agent affinity
5268
3341
  */
5269
- ipv6?: pulumi.Input<boolean>;
3342
+ overrideAffinity?: pulumi.Input<string>;
5270
3343
  /**
5271
- * Enable monitoring for droplet
3344
+ * User defined resource requirements to set on the agent
5272
3345
  */
5273
- monitoring?: pulumi.Input<boolean>;
3346
+ overrideResourceRequirements?: pulumi.Input<pulumi.Input<inputs.ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement>[]>;
3347
+ }
3348
+ export interface ClusterV2FleetAgentDeploymentCustomizationAppendToleration {
5274
3349
  /**
5275
- * Enable private networking for droplet
3350
+ * The taint effect. Default: `\"NoExecute\"`.
5276
3351
  */
5277
- privateNetworking?: pulumi.Input<boolean>;
3352
+ effect?: pulumi.Input<string>;
5278
3353
  /**
5279
- * Digital Ocean region
3354
+ * Key is the name of the key of the item to retrieve.
5280
3355
  */
5281
- region?: pulumi.Input<string>;
3356
+ key: pulumi.Input<string>;
5282
3357
  /**
5283
- * Digital Ocean size
3358
+ * Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
5284
3359
  */
5285
- size?: pulumi.Input<string>;
3360
+ operator?: pulumi.Input<string>;
5286
3361
  /**
5287
- * SSH private key contents
3362
+ * The number of seconds a pod will stay bound to a node with a matching taint.
5288
3363
  */
5289
- sshKeyContents?: pulumi.Input<string>;
3364
+ seconds?: pulumi.Input<number>;
5290
3365
  /**
5291
- * SSH key fingerprint
3366
+ * The taint value.
5292
3367
  */
5293
- sshKeyFingerprint?: pulumi.Input<string>;
3368
+ value?: pulumi.Input<string>;
3369
+ }
3370
+ export interface ClusterV2FleetAgentDeploymentCustomizationOverrideResourceRequirement {
5294
3371
  /**
5295
- * SSH port
3372
+ * The maximum CPU limit for agent
5296
3373
  */
5297
- sshPort?: pulumi.Input<string>;
3374
+ cpuLimit?: pulumi.Input<string>;
5298
3375
  /**
5299
- * SSH username
3376
+ * The minimum CPU required for agent
5300
3377
  */
5301
- sshUser?: pulumi.Input<string>;
3378
+ cpuRequest?: pulumi.Input<string>;
5302
3379
  /**
5303
- * Comma-separated list of tags to apply to the Droplet
3380
+ * The maximum memory limit for agent
5304
3381
  */
5305
- tags?: pulumi.Input<string>;
3382
+ memoryLimit?: pulumi.Input<string>;
5306
3383
  /**
5307
- * Path to file with cloud-init user-data
3384
+ * The minimum memory required for agent
5308
3385
  */
5309
- userdata?: pulumi.Input<string>;
3386
+ memoryRequest?: pulumi.Input<string>;
5310
3387
  }
5311
- export interface MachineConfigV2GoogleConfig {
3388
+ export interface ClusterV2LocalAuthEndpoint {
5312
3389
  /**
5313
- * GCE Instance External IP
3390
+ * CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.
5314
3391
  */
5315
- address?: pulumi.Input<string>;
3392
+ caCerts?: pulumi.Input<string>;
5316
3393
  /**
5317
- * GCE service account auth json file path
3394
+ * If `enabled` is set to true, nodes will be drained before upgrade.
5318
3395
  */
5319
- authEncodedJson?: pulumi.Input<string>;
3396
+ enabled?: pulumi.Input<boolean>;
5320
3397
  /**
5321
- * GCE Instance Disk Size (in GB)
3398
+ * FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.
5322
3399
  */
5323
- diskSize: pulumi.Input<string>;
3400
+ fqdn?: pulumi.Input<string>;
3401
+ }
3402
+ export interface ClusterV2RkeConfig {
5324
3403
  /**
5325
- * GCE Instance Disk Type
3404
+ * Cluster V2 additional manifest
5326
3405
  */
5327
- diskType: pulumi.Input<string>;
3406
+ additionalManifest?: pulumi.Input<string>;
5328
3407
  /**
5329
- * A prefix to be added to firewall rules created when exposing ports publicly. Required if exposing ports publicly.
3408
+ * Cluster V2 chart values. It should be in YAML format
5330
3409
  */
5331
- externalFirewallRulePrefix?: pulumi.Input<string>;
3410
+ chartValues?: pulumi.Input<string>;
5332
3411
  /**
5333
- * A prefix to be added to an internal firewall rule created to ensure virtual machines can communicate with one another.
3412
+ * Cluster V2 data directories
5334
3413
  */
5335
- internalFirewallRulePrefix?: pulumi.Input<string>;
3414
+ dataDirectories?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigDataDirectory>[]>;
5336
3415
  /**
5337
- * GCE instance image absolute URL
3416
+ * Cluster V2 etcd
5338
3417
  */
5339
- machineImage: pulumi.Input<string>;
3418
+ etcd?: pulumi.Input<inputs.ClusterV2RkeConfigEtcd>;
5340
3419
  /**
5341
- * GCE instance type
3420
+ * Cluster V2 etcd snapshot create
5342
3421
  */
5343
- machineType: pulumi.Input<string>;
3422
+ etcdSnapshotCreate?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdSnapshotCreate>;
5344
3423
  /**
5345
- * The network to provision virtual machines within
3424
+ * Cluster V2 etcd snapshot restore
5346
3425
  */
5347
- network: pulumi.Input<string>;
3426
+ etcdSnapshotRestore?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdSnapshotRestore>;
5348
3427
  /**
5349
- * A list of ports to be opened publicly. 'external_firewall_rule_prefix' must also be set
3428
+ * Local auth endpoint configures the Authorized Cluster Endpoint (ACE) which can be used to directly access the Kubernetes API server, without requiring communication through Rancher. For more information, please refer to [Rancher Documentation](https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/register-existing-clusters#authorized-cluster-endpoint-support-for-rke2-and-k3s-clusters).
3429
+ *
3430
+ * @deprecated Use rancher2_cluster_v2.local_auth_endpoint instead
5350
3431
  */
5351
- openPorts?: pulumi.Input<pulumi.Input<string>[]>;
3432
+ localAuthEndpoint?: pulumi.Input<inputs.ClusterV2RkeConfigLocalAuthEndpoint>;
5352
3433
  /**
5353
- * Indicates if the virtual machine can be preempted
3434
+ * Cluster V2 machine global config
5354
3435
  */
5355
- preemptable?: pulumi.Input<boolean>;
3436
+ machineGlobalConfig?: pulumi.Input<string>;
5356
3437
  /**
5357
- * The GCP project to create virtual machines within
3438
+ * Default values for machine pool configurations if unset
5358
3439
  */
5359
- project: pulumi.Input<string>;
3440
+ machinePoolDefaults?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolDefault>[]>;
5360
3441
  /**
5361
- * Access scopes to be set on the virtual machine
3442
+ * Cluster V2 machine pools
5362
3443
  */
5363
- scopes?: pulumi.Input<string>;
3444
+ machinePools?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePool>[]>;
5364
3445
  /**
5365
- * The subnetwork to provision virtual machines within
3446
+ * Cluster V2 machine selector config
5366
3447
  */
5367
- subNetwork?: pulumi.Input<string>;
3448
+ machineSelectorConfigs?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfig>[]>;
5368
3449
  /**
5369
- * A set of network tags to be added to each VM, in the format of 'tag1,tag2'
3450
+ * Cluster V2 machine selector files
5370
3451
  */
5371
- tags?: pulumi.Input<string>;
3452
+ machineSelectorFiles?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFile>[]>;
5372
3453
  /**
5373
- * Indicates if an existing VM should be used. This is not currently support in Rancher.
3454
+ * Cluster V2 networking
5374
3455
  */
5375
- useExisting?: pulumi.Input<boolean>;
3456
+ networking?: pulumi.Input<inputs.ClusterV2RkeConfigNetworking>;
5376
3457
  /**
5377
- * Indicates if the virtual machines should use an internal IP
3458
+ * Cluster V2 registries
5378
3459
  */
5379
- useInternalIp?: pulumi.Input<boolean>;
3460
+ registries?: pulumi.Input<inputs.ClusterV2RkeConfigRegistries>;
5380
3461
  /**
5381
- * Indicates if the virtual machines should use an internal IP only and not be assigned a public IP
3462
+ * Cluster V2 certificate rotation
5382
3463
  */
5383
- useInternalIpOnly?: pulumi.Input<boolean>;
3464
+ rotateCertificates?: pulumi.Input<inputs.ClusterV2RkeConfigRotateCertificates>;
5384
3465
  /**
5385
- * GCE user-data file path
3466
+ * Cluster V2 upgrade strategy
5386
3467
  */
5387
- userData?: pulumi.Input<string>;
3468
+ upgradeStrategy?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategy>;
3469
+ }
3470
+ export interface ClusterV2RkeConfigDataDirectory {
5388
3471
  /**
5389
- * The username to be set when logging into the virtual machines
3472
+ * Desired k8s distro data directory.
5390
3473
  */
5391
- username?: pulumi.Input<string>;
3474
+ k8sDistro?: pulumi.Input<string>;
5392
3475
  /**
5393
- * A set of labels to be added to each VM, in the format of 'key1,value1,key2,value2'
3476
+ * Desired provisioning data directory.
5394
3477
  */
5395
- vmLabels?: pulumi.Input<string>;
3478
+ provisioning?: pulumi.Input<string>;
5396
3479
  /**
5397
- * The region and zone to create virtual machines within (e.g. us-east1-b)
3480
+ * Desired System Agent data directory.
5398
3481
  */
5399
- zone: pulumi.Input<string>;
3482
+ systemAgent?: pulumi.Input<string>;
5400
3483
  }
5401
- export interface MachineConfigV2HarvesterConfig {
3484
+ export interface ClusterV2RkeConfigEtcd {
5402
3485
  /**
5403
- * CPU count
3486
+ * Disable ETCD snapshots
5404
3487
  */
5405
- cpuCount?: pulumi.Input<string>;
3488
+ disableSnapshots?: pulumi.Input<boolean>;
5406
3489
  /**
5407
- * Disk bus
5408
- *
5409
- * @deprecated Use diskInfo instead
3490
+ * ETCD snapshot S3 config
5410
3491
  */
5411
- diskBus?: pulumi.Input<string>;
3492
+ s3Config?: pulumi.Input<inputs.ClusterV2RkeConfigEtcdS3Config>;
5412
3493
  /**
5413
- * A JSON string specifying info for the disks e.g. `{"disks":[{"imageName":"harvester-public/image-57hzg","bootOrder":1,"size":40},{"storageClassName":"node-driver-test","bootOrder":2,"size":1}]}`
3494
+ * ETCD snapshot retention
5414
3495
  */
5415
- diskInfo?: pulumi.Input<string>;
3496
+ snapshotRetention?: pulumi.Input<number>;
5416
3497
  /**
5417
- * Disk size (in GiB)
5418
- *
5419
- * @deprecated Use diskInfo instead
3498
+ * ETCD snapshot schedule cron (e.g `"0 *&#47;5 * * *"`)
5420
3499
  */
5421
- diskSize?: pulumi.Input<string>;
3500
+ snapshotScheduleCron?: pulumi.Input<string>;
3501
+ }
3502
+ export interface ClusterV2RkeConfigEtcdS3Config {
5422
3503
  /**
5423
- * Image name
5424
- *
5425
- * @deprecated Use diskInfo instead
3504
+ * ETCD snapshot S3 bucket
5426
3505
  */
5427
- imageName?: pulumi.Input<string>;
3506
+ bucket: pulumi.Input<string>;
5428
3507
  /**
5429
- * Memory size (in GiB)
3508
+ * ETCD snapshot S3 cloud credential name
5430
3509
  */
5431
- memorySize?: pulumi.Input<string>;
3510
+ cloudCredentialName?: pulumi.Input<string>;
5432
3511
  /**
5433
- * NetworkData content of cloud-init, base64 is supported
3512
+ * ETCD snapshot S3 endpoint
5434
3513
  */
5435
- networkData?: pulumi.Input<string>;
3514
+ endpoint: pulumi.Input<string>;
5436
3515
  /**
5437
- * A JSON string specifying info for the networks e.g. `{"interfaces":[{"networkName":"harvester-public/vlan1"},{"networkName":"harvester-public/vlan2"}]}`
3516
+ * ETCD snapshot S3 endpoint CA
5438
3517
  */
5439
- networkInfo?: pulumi.Input<string>;
3518
+ endpointCa?: pulumi.Input<string>;
5440
3519
  /**
5441
- * Network model
5442
- *
5443
- * @deprecated Use networkInfo instead
3520
+ * ETCD snapshot S3 folder
5444
3521
  */
5445
- networkModel?: pulumi.Input<string>;
3522
+ folder?: pulumi.Input<string>;
5446
3523
  /**
5447
- * Network name
5448
- *
5449
- * @deprecated Use networkInfo instead
3524
+ * ETCD snapshot S3 region
5450
3525
  */
5451
- networkName?: pulumi.Input<string>;
3526
+ region?: pulumi.Input<string>;
5452
3527
  /**
5453
- * SSH password
3528
+ * Disable ETCD skip ssl verify
5454
3529
  */
5455
- sshPassword?: pulumi.Input<string>;
3530
+ skipSslVerify?: pulumi.Input<boolean>;
3531
+ }
3532
+ export interface ClusterV2RkeConfigEtcdSnapshotCreate {
5456
3533
  /**
5457
- * SSH username
3534
+ * ETCD generation to initiate a snapshot
5458
3535
  */
5459
- sshUser: pulumi.Input<string>;
3536
+ generation: pulumi.Input<number>;
3537
+ }
3538
+ export interface ClusterV2RkeConfigEtcdSnapshotRestore {
5460
3539
  /**
5461
- * UserData content of cloud-init, base64 is supported. If the image does not contain the qemu-guest-agent package, you must install and start qemu-guest-agent using userdata
3540
+ * ETCD snapshot desired generation
5462
3541
  */
5463
- userData?: pulumi.Input<string>;
3542
+ generation: pulumi.Input<number>;
5464
3543
  /**
5465
- * VM affinity, base64 is supported
3544
+ * The name of the cluster.
5466
3545
  */
5467
- vmAffinity?: pulumi.Input<string>;
3546
+ name: pulumi.Input<string>;
5468
3547
  /**
5469
- * Virtual machine namespace
3548
+ * ETCD restore RKE config (set to none, all, or kubernetesVersion)
5470
3549
  */
5471
- vmNamespace: pulumi.Input<string>;
3550
+ restoreRkeConfig?: pulumi.Input<string>;
5472
3551
  }
5473
- export interface MachineConfigV2LinodeConfig {
3552
+ export interface ClusterV2RkeConfigLocalAuthEndpoint {
5474
3553
  /**
5475
- * Linode user accounts (seperated by commas) whose Linode SSH keys will be permitted root access to the created node
3554
+ * CA certs for the authorized cluster endpoint. It is only needed if there is a load balancer in front of the downstream cluster that is using an untrusted certificate. If you have a valid certificate, then nothing needs to be added to the CA Certificates field.
5476
3555
  */
5477
- authorizedUsers?: pulumi.Input<string>;
3556
+ caCerts?: pulumi.Input<string>;
5478
3557
  /**
5479
- * Create private IP for the instance
3558
+ * If `enabled` is set to true, nodes will be drained before upgrade.
5480
3559
  */
5481
- createPrivateIp?: pulumi.Input<boolean>;
3560
+ enabled?: pulumi.Input<boolean>;
5482
3561
  /**
5483
- * Docker Port
3562
+ * FQDN for the authorized cluster endpoint. If one is entered, it should point to the downstream cluster.
5484
3563
  */
5485
- dockerPort?: pulumi.Input<string>;
3564
+ fqdn?: pulumi.Input<string>;
3565
+ }
3566
+ export interface ClusterV2RkeConfigMachinePool {
5486
3567
  /**
5487
- * Specifies the Linode Instance image which determines the OS distribution and base files
3568
+ * Annotations for the Cluster.
5488
3569
  */
5489
- image?: pulumi.Input<string>;
3570
+ annotations?: pulumi.Input<{
3571
+ [key: string]: pulumi.Input<string>;
3572
+ }>;
5490
3573
  /**
5491
- * Specifies the Linode Instance type which determines CPU, memory, disk size, etc.
3574
+ * Cloud credential secret name is the secret to be used when a cloud credential secret name is not specified at the machine pool level.
5492
3575
  */
5493
- instanceType?: pulumi.Input<string>;
3576
+ cloudCredentialSecretName?: pulumi.Input<string>;
5494
3577
  /**
5495
- * Linode Instance Label
3578
+ * Machine pool control plane role
5496
3579
  */
5497
- label?: pulumi.Input<string>;
3580
+ controlPlaneRole?: pulumi.Input<boolean>;
5498
3581
  /**
5499
- * Specifies the region (location) of the Linode instance
3582
+ * Machine pool drain before delete
5500
3583
  */
5501
- region?: pulumi.Input<string>;
3584
+ drainBeforeDelete?: pulumi.Input<boolean>;
5502
3585
  /**
5503
- * Root Password
3586
+ * Machine pool etcd role
5504
3587
  */
5505
- rootPass?: pulumi.Input<string>;
3588
+ etcdRole?: pulumi.Input<boolean>;
5506
3589
  /**
5507
- * Linode Instance SSH Port
3590
+ * maximum length for autogenerated hostname
5508
3591
  */
5509
- sshPort?: pulumi.Input<string>;
3592
+ hostnameLengthLimit?: pulumi.Input<number>;
5510
3593
  /**
5511
- * Specifies the user as which docker-machine should log in to the Linode instance to install Docker.
3594
+ * Labels for the Cluster.
5512
3595
  */
5513
- sshUser?: pulumi.Input<string>;
3596
+ labels?: pulumi.Input<{
3597
+ [key: string]: pulumi.Input<string>;
3598
+ }>;
5514
3599
  /**
5515
- * Specifies the Linode StackScript to use to create the instance
3600
+ * Machine config data
5516
3601
  */
5517
- stackscript?: pulumi.Input<string>;
3602
+ machineConfig: pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolMachineConfig>;
5518
3603
  /**
5519
- * A JSON string specifying data for the selected StackScript
3604
+ * Labels for the machine pool nodes
5520
3605
  */
5521
- stackscriptData?: pulumi.Input<string>;
3606
+ machineLabels?: pulumi.Input<{
3607
+ [key: string]: pulumi.Input<string>;
3608
+ }>;
5522
3609
  /**
5523
- * Linode Instance Swap Size (MB)
3610
+ * OS Type in machine pool
5524
3611
  */
5525
- swapSize?: pulumi.Input<string>;
3612
+ machineOs?: pulumi.Input<string>;
5526
3613
  /**
5527
- * A comma separated list of tags to apply to the the Linode resource
3614
+ * max unhealthy nodes for automated replacement to be allowed
5528
3615
  */
5529
- tags?: pulumi.Input<string>;
3616
+ maxUnhealthy?: pulumi.Input<string>;
5530
3617
  /**
5531
- * Linode API Token
3618
+ * The name of the cluster.
5532
3619
  */
5533
- token?: pulumi.Input<string>;
3620
+ name: pulumi.Input<string>;
5534
3621
  /**
5535
- * Prefix the User-Agent in Linode API calls with some 'product/version'
3622
+ * seconds to wait for machine pool drain to complete before machine deletion
5536
3623
  */
5537
- uaPrefix?: pulumi.Input<string>;
5538
- }
5539
- export interface MachineConfigV2OpenstackConfig {
3624
+ nodeDrainTimeout?: pulumi.Input<number>;
5540
3625
  /**
5541
- * OpenStack active timeout Default `200` (string)
3626
+ * seconds a new node has to become active before it is replaced
5542
3627
  */
5543
- activeTimeout?: pulumi.Input<string>;
3628
+ nodeStartupTimeoutSeconds?: pulumi.Input<number>;
5544
3629
  /**
5545
- * OpenStack application credential id. Conflicts with `applicationCredentialName` (string)
3630
+ * Machine pool paused
5546
3631
  */
5547
- applicationCredentialId?: pulumi.Input<string>;
3632
+ paused?: pulumi.Input<boolean>;
5548
3633
  /**
5549
- * OpenStack application credential name. Conflicts with `applicationCredentialId` (string)
3634
+ * Machine pool quantity
5550
3635
  */
5551
- applicationCredentialName?: pulumi.Input<string>;
3636
+ quantity?: pulumi.Input<number>;
5552
3637
  /**
5553
- * OpenStack application credential secret (string)
3638
+ * Machine pool rolling update
5554
3639
  */
5555
- applicationCredentialSecret?: pulumi.Input<string>;
3640
+ rollingUpdate?: pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolRollingUpdate>;
5556
3641
  /**
5557
- * OpenStack authentication URL (string)
3642
+ * Machine pool taints
5558
3643
  */
5559
- authUrl: pulumi.Input<string>;
3644
+ taints?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachinePoolTaint>[]>;
5560
3645
  /**
5561
- * OpenStack availability zone (string)
3646
+ * seconds an unhealthy node has to become active before it is replaced
5562
3647
  */
5563
- availabilityZone: pulumi.Input<string>;
3648
+ unhealthyNodeTimeoutSeconds?: pulumi.Input<number>;
5564
3649
  /**
5565
- * Enable booting from volume. Default is `false` (bool)
3650
+ * range of unhealthy nodes for automated replacement to be allowed
5566
3651
  */
5567
- bootFromVolume?: pulumi.Input<boolean>;
3652
+ unhealthyRange?: pulumi.Input<string>;
5568
3653
  /**
5569
- * CA certificate bundle to verify against (string)
3654
+ * Machine pool worker role
5570
3655
  */
5571
- cacert?: pulumi.Input<string>;
3656
+ workerRole?: pulumi.Input<boolean>;
3657
+ }
3658
+ export interface ClusterV2RkeConfigMachinePoolDefault {
5572
3659
  /**
5573
- * Enables the OpenStack config drive for the instance. Default `false` (bool)
3660
+ * maximum length for autogenerated hostname
5574
3661
  */
5575
- configDrive?: pulumi.Input<boolean>;
3662
+ hostnameLengthLimit?: pulumi.Input<number>;
3663
+ }
3664
+ export interface ClusterV2RkeConfigMachinePoolMachineConfig {
5576
3665
  /**
5577
- * OpenStack domain ID. Identity v3 only. Conflicts with `domainName` (string)
3666
+ * Machine config API version
5578
3667
  */
5579
- domainId?: pulumi.Input<string>;
3668
+ apiVersion?: pulumi.Input<string>;
5580
3669
  /**
5581
- * OpenStack domain name. Identity v3 only. Conflicts with `domainId` (string)
3670
+ * Machine config kind
5582
3671
  */
5583
- domainName?: pulumi.Input<string>;
3672
+ kind: pulumi.Input<string>;
5584
3673
  /**
5585
- * OpenStack endpoint type. adminURL, internalURL or publicURL (string)
3674
+ * The name of the cluster.
5586
3675
  */
5587
- endpointType?: pulumi.Input<string>;
3676
+ name: pulumi.Input<string>;
3677
+ }
3678
+ export interface ClusterV2RkeConfigMachinePoolRollingUpdate {
5588
3679
  /**
5589
- * OpenStack flavor id to use for the instance. Conflicts with `flavorName` (string)
3680
+ * Rolling update max surge
5590
3681
  */
5591
- flavorId?: pulumi.Input<string>;
3682
+ maxSurge?: pulumi.Input<string>;
5592
3683
  /**
5593
- * OpenStack flavor name to use for the instance. Conflicts with `flavorId` (string)
3684
+ * Rolling update max unavailable
3685
+ */
3686
+ maxUnavailable?: pulumi.Input<string>;
3687
+ }
3688
+ export interface ClusterV2RkeConfigMachinePoolTaint {
3689
+ /**
3690
+ * The taint effect. Default: `\"NoExecute\"`.
3691
+ */
3692
+ effect?: pulumi.Input<string>;
3693
+ /**
3694
+ * Key is the name of the key of the item to retrieve.
5594
3695
  */
5595
- flavorName?: pulumi.Input<string>;
3696
+ key: pulumi.Input<string>;
5596
3697
  /**
5597
- * OpenStack floating IP pool to get an IP from to assign to the instance (string)
3698
+ * The taint value.
5598
3699
  */
5599
- floatingIpPool?: pulumi.Input<string>;
3700
+ value: pulumi.Input<string>;
3701
+ }
3702
+ export interface ClusterV2RkeConfigMachineSelectorConfig {
5600
3703
  /**
5601
- * OpenStack image id to use for the instance. Conflicts with `imageName` (string)
3704
+ * Machine selector config
5602
3705
  */
5603
- imageId?: pulumi.Input<string>;
3706
+ config?: pulumi.Input<string>;
5604
3707
  /**
5605
- * OpenStack image name to use for the instance. Conflicts with `imageId` (string)
3708
+ * Machine label selector
5606
3709
  */
5607
- imageName?: pulumi.Input<string>;
3710
+ machineLabelSelector?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector>;
3711
+ }
3712
+ export interface ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelector {
5608
3713
  /**
5609
- * Disable TLS credential checking. Default `false` (bool)
3714
+ * Label selector match expressions
5610
3715
  */
5611
- insecure?: pulumi.Input<boolean>;
3716
+ matchExpressions?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression>[]>;
5612
3717
  /**
5613
- * OpenStack version of IP address assigned for the machine Default `4` (string)
3718
+ * Label selector match labels
5614
3719
  */
5615
- ipVersion?: pulumi.Input<string>;
3720
+ matchLabels?: pulumi.Input<{
3721
+ [key: string]: pulumi.Input<string>;
3722
+ }>;
3723
+ }
3724
+ export interface ClusterV2RkeConfigMachineSelectorConfigMachineLabelSelectorMatchExpression {
5616
3725
  /**
5617
- * OpenStack keypair to use to SSH to the instance (string)
3726
+ * Label selector requirement key
5618
3727
  */
5619
- keypairName?: pulumi.Input<string>;
3728
+ key?: pulumi.Input<string>;
5620
3729
  /**
5621
- * OpenStack network id the machine will be connected on. Conflicts with `netName` (string)
3730
+ * Label selector operator
5622
3731
  */
5623
- netId?: pulumi.Input<string>;
3732
+ operator?: pulumi.Input<string>;
5624
3733
  /**
5625
- * OpenStack network name the machine will be connected on. Conflicts with `netId` (string)
3734
+ * Label selector requirement values
5626
3735
  */
5627
- netName?: pulumi.Input<string>;
3736
+ values?: pulumi.Input<pulumi.Input<string>[]>;
3737
+ }
3738
+ export interface ClusterV2RkeConfigMachineSelectorFile {
5628
3739
  /**
5629
- * Use the nova networking services instead of neutron (string)
3740
+ * File sources
5630
3741
  */
5631
- novaNetwork?: pulumi.Input<boolean>;
3742
+ fileSources?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSource>[]>;
5632
3743
  /**
5633
- * OpenStack password. Mandatory on Rancher v2.0.x and v2.1.x. Use `rancher2.CloudCredential` from Rancher v2.2.x (string)
3744
+ * Machine label selector
5634
3745
  */
5635
- password?: pulumi.Input<string>;
3746
+ machineLabelSelector?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector>;
3747
+ }
3748
+ export interface ClusterV2RkeConfigMachineSelectorFileFileSource {
5636
3749
  /**
5637
- * Private key content to use for SSH (string)
3750
+ * The configmap which is the source of files
5638
3751
  */
5639
- privateKeyFile?: pulumi.Input<string>;
3752
+ configmap?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap>;
5640
3753
  /**
5641
- * OpenStack region name (string)
3754
+ * The secret which is the source of files
5642
3755
  */
5643
- region: pulumi.Input<string>;
3756
+ secret?: pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceSecret>;
3757
+ }
3758
+ export interface ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmap {
5644
3759
  /**
5645
- * OpenStack comma separated security groups for the machine (string)
3760
+ * The default permissions to be applied when they are not set at the item level
5646
3761
  */
5647
- secGroups?: pulumi.Input<string>;
3762
+ defaultPermissions?: pulumi.Input<string>;
5648
3763
  /**
5649
- * If using a non-B2D image you can specify the ssh port. Default `22` (string)
3764
+ * Items(files) to retrieve from the K8s object
5650
3765
  */
5651
- sshPort?: pulumi.Input<string>;
3766
+ items?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem>[]>;
5652
3767
  /**
5653
- * If using a non-B2D image you can specify the ssh user. Default `docker`. (string)
3768
+ * The name of the cluster.
5654
3769
  */
5655
- sshUser?: pulumi.Input<string>;
3770
+ name: pulumi.Input<string>;
3771
+ }
3772
+ export interface ClusterV2RkeConfigMachineSelectorFileFileSourceConfigmapItem {
5656
3773
  /**
5657
- * OpenStack tenant domain id. Conflicts with `tenantDomainName` (string)
3774
+ * If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).
5658
3775
  */
5659
- tenantDomainId?: pulumi.Input<string>;
3776
+ dynamic?: pulumi.Input<boolean>;
5660
3777
  /**
5661
- * OpenStack tenant domain name. Conflicts with `tenantDomainId` (string)
3778
+ * The base64 encoded value of the SHA256 checksum of the file's content
5662
3779
  */
5663
- tenantDomainName?: pulumi.Input<string>;
3780
+ hash?: pulumi.Input<string>;
5664
3781
  /**
5665
- * OpenStack tenant id. Conflicts with `tenantName` (string)
3782
+ * The key of the item(file) to retrieve
5666
3783
  */
5667
- tenantId?: pulumi.Input<string>;
3784
+ key: pulumi.Input<string>;
5668
3785
  /**
5669
- * OpenStack tenant name. Conflicts with `tenantId` (string)
3786
+ * The path to put the file in the target node
5670
3787
  */
5671
- tenantName?: pulumi.Input<string>;
3788
+ path: pulumi.Input<string>;
5672
3789
  /**
5673
- * File containing an openstack userdata script (string)
3790
+ * The numeric representation of the file permissions
5674
3791
  */
5675
- userDataFile?: pulumi.Input<string>;
3792
+ permissions?: pulumi.Input<string>;
3793
+ }
3794
+ export interface ClusterV2RkeConfigMachineSelectorFileFileSourceSecret {
5676
3795
  /**
5677
- * OpenStack user domain id. Conflicts with `userDomainName` (string)
3796
+ * The default permissions to be applied when they are not set at the item level
5678
3797
  */
5679
- userDomainId?: pulumi.Input<string>;
3798
+ defaultPermissions?: pulumi.Input<string>;
5680
3799
  /**
5681
- * OpenStack user domain name. Conflicts with `userDomainId` (string)
3800
+ * Items(files) to retrieve from the K8s object
5682
3801
  */
5683
- userDomainName?: pulumi.Input<string>;
3802
+ items?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem>[]>;
5684
3803
  /**
5685
- * The username to be set when logging into the virtual machines (string)
3804
+ * The name of the cluster.
5686
3805
  */
5687
- username?: pulumi.Input<string>;
3806
+ name: pulumi.Input<string>;
3807
+ }
3808
+ export interface ClusterV2RkeConfigMachineSelectorFileFileSourceSecretItem {
5688
3809
  /**
5689
- * OpenStack volume device path (attaching). Applicable only when `bootFromVolume` is `true`. Omit for auto `/dev/vdb`. (string)
5690
- * > **Note:**: `Required+` denotes that either the _name or _id is required but you cannot use both.
5691
- * > **Note:**: `Required++` denotes that either the _name or _id is required unless `applicationCredentialId` is defined.
5692
- * > **Note for OpenStack users:**: `keypairName` is required to be in the schema even if there are no references in rancher itself
3810
+ * If ture, the file is ignored when determining whether the node should be drained before updating the node plan (default: true).
5693
3811
  */
5694
- volumeDevicePath?: pulumi.Input<string>;
3812
+ dynamic?: pulumi.Input<boolean>;
5695
3813
  /**
5696
- * OpenStack volume id of existing volume. Applicable only when `bootFromVolume` is `true` (string)
3814
+ * The base64 encoded value of the SHA256 checksum of the file's content
5697
3815
  */
5698
- volumeId?: pulumi.Input<string>;
3816
+ hash?: pulumi.Input<string>;
5699
3817
  /**
5700
- * OpenStack volume name of existing volume. Applicable only when `bootFromVolume` is `true` (string)
3818
+ * The key of the item(file) to retrieve
5701
3819
  */
5702
- volumeName?: pulumi.Input<string>;
3820
+ key: pulumi.Input<string>;
5703
3821
  /**
5704
- * OpenStack volume size (GiB). Required when `bootFromVolume` is `true` (string)
3822
+ * The path to put the file in the target node
5705
3823
  */
5706
- volumeSize?: pulumi.Input<string>;
3824
+ path: pulumi.Input<string>;
5707
3825
  /**
5708
- * OpenStack volume type. Required when `bootFromVolume` is `true` and openstack cloud does not have a default volume type (string)
3826
+ * The numeric representation of the file permissions
5709
3827
  */
5710
- volumeType?: pulumi.Input<string>;
3828
+ permissions?: pulumi.Input<string>;
5711
3829
  }
5712
- export interface MachineConfigV2VsphereConfig {
3830
+ export interface ClusterV2RkeConfigMachineSelectorFileMachineLabelSelector {
5713
3831
  /**
5714
- * vSphere URL for boot2docker image
3832
+ * Label selector match expressions
5715
3833
  */
5716
- boot2dockerUrl?: pulumi.Input<string>;
3834
+ matchExpressions?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression>[]>;
5717
3835
  /**
5718
- * vSphere vm configuration parameters (used for guestinfo)
3836
+ * Label selector match labels
5719
3837
  */
5720
- cfgparams?: pulumi.Input<pulumi.Input<string>[]>;
3838
+ matchLabels?: pulumi.Input<{
3839
+ [key: string]: pulumi.Input<string>;
3840
+ }>;
3841
+ }
3842
+ export interface ClusterV2RkeConfigMachineSelectorFileMachineLabelSelectorMatchExpression {
5721
3843
  /**
5722
- * If you choose creation type clone a name of what you want to clone is required
3844
+ * Label selector requirement key
5723
3845
  */
5724
- cloneFrom?: pulumi.Input<string>;
3846
+ key?: pulumi.Input<string>;
5725
3847
  /**
5726
- * Filepath to a cloud-config yaml file to put into the ISO user-data
3848
+ * Label selector operator
5727
3849
  */
5728
- cloudConfig?: pulumi.Input<string>;
3850
+ operator?: pulumi.Input<string>;
5729
3851
  /**
5730
- * vSphere cloud-init filepath or url to add to guestinfo
3852
+ * Label selector requirement values
5731
3853
  */
5732
- cloudinit?: pulumi.Input<string>;
3854
+ values?: pulumi.Input<pulumi.Input<string>[]>;
3855
+ }
3856
+ export interface ClusterV2RkeConfigNetworking {
5733
3857
  /**
5734
- * If you choose to clone from a content library template specify the name of the library
3858
+ * Specify the networking stack used by the cluster. The selected value configures the address used for health and readiness probes of calico, etcd, kube-apiserver, kube-scheduler, kube-controller-manager, and kubelet. It also defines the server URL in the authentication-token-webhook-config-file for the Authorized Cluster Endpoint and the advertise-client-urls for etcd during snapshot restore. When set to dual, the cluster uses localhost; when set to ipv6, it uses [::1]; when set to ipv4, it uses 127.0.0.1
5735
3859
  */
5736
- contentLibrary?: pulumi.Input<string>;
3860
+ stackPreference?: pulumi.Input<string>;
3861
+ }
3862
+ export interface ClusterV2RkeConfigRegistries {
5737
3863
  /**
5738
- * vSphere CPU number for docker VM
3864
+ * Registry config
5739
3865
  */
5740
- cpuCount?: pulumi.Input<string>;
3866
+ configs?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigRegistriesConfig>[]>;
5741
3867
  /**
5742
- * Creation type when creating a new virtual machine. Supported values: vm, template, library, legacy
3868
+ * Registry mirrors
5743
3869
  */
5744
- creationType?: pulumi.Input<string>;
3870
+ mirrors?: pulumi.Input<pulumi.Input<inputs.ClusterV2RkeConfigRegistriesMirror>[]>;
3871
+ }
3872
+ export interface ClusterV2RkeConfigRegistriesConfig {
5745
3873
  /**
5746
- * vSphere custom attributes, format key/value e.g. '200=my custom value'
3874
+ * Registry auth config secret name
5747
3875
  */
5748
- customAttributes?: pulumi.Input<pulumi.Input<string>[]>;
3876
+ authConfigSecretName?: pulumi.Input<string>;
5749
3877
  /**
5750
- * vSphere datacenter for virtual machine
3878
+ * Registry CA bundle
5751
3879
  */
5752
- datacenter?: pulumi.Input<string>;
3880
+ caBundle?: pulumi.Input<string>;
5753
3881
  /**
5754
- * vSphere datastore for virtual machine
3882
+ * Registry hostname
5755
3883
  */
5756
- datastore?: pulumi.Input<string>;
3884
+ hostname: pulumi.Input<string>;
5757
3885
  /**
5758
- * vSphere datastore cluster for virtual machine
3886
+ * Registry insecure connectivity
5759
3887
  */
5760
- datastoreCluster?: pulumi.Input<string>;
3888
+ insecure?: pulumi.Input<boolean>;
5761
3889
  /**
5762
- * vSphere size of disk for docker VM (in MB)
3890
+ * Registry TLS secret name. TLS is a pair of Cert/Key
5763
3891
  */
5764
- diskSize?: pulumi.Input<string>;
3892
+ tlsSecretName?: pulumi.Input<string>;
3893
+ }
3894
+ export interface ClusterV2RkeConfigRegistriesMirror {
5765
3895
  /**
5766
- * vSphere folder for the docker VM. This folder must already exist in the datacenter
3896
+ * Registry mirror endpoints
5767
3897
  */
5768
- folder?: pulumi.Input<string>;
3898
+ endpoints?: pulumi.Input<pulumi.Input<string>[]>;
5769
3899
  /**
5770
- * Duration in seconds before the graceful shutdown of the VM times out and the VM is destroyed. A force destroy will be performed when the value is zero
3900
+ * Registry hostname
5771
3901
  */
5772
- gracefulShutdownTimeout?: pulumi.Input<string>;
3902
+ hostname: pulumi.Input<string>;
5773
3903
  /**
5774
- * vSphere compute resource where the docker VM will be instantiated. This can be omitted if using a cluster with DRS
3904
+ * Registry mirror rewrites
5775
3905
  */
5776
- hostsystem?: pulumi.Input<string>;
3906
+ rewrites?: pulumi.Input<{
3907
+ [key: string]: pulumi.Input<string>;
3908
+ }>;
3909
+ }
3910
+ export interface ClusterV2RkeConfigRotateCertificates {
5777
3911
  /**
5778
- * vSphere size of memory for docker VM (in MB)
3912
+ * Desired certificate rotation generation.
5779
3913
  */
5780
- memorySize?: pulumi.Input<string>;
3914
+ generation: pulumi.Input<number>;
5781
3915
  /**
5782
- * vSphere network where the virtual machine will be attached
3916
+ * Service certificates to rotate with this generation.
5783
3917
  */
5784
- networks?: pulumi.Input<pulumi.Input<string>[]>;
3918
+ services?: pulumi.Input<pulumi.Input<string>[]>;
3919
+ }
3920
+ export interface ClusterV2RkeConfigUpgradeStrategy {
5785
3921
  /**
5786
- * Type of virtual machine OS in vSphere
3922
+ * How many controlplane nodes should be upgrade at time, 0 is infinite. Percentages are also accepted
5787
3923
  */
5788
- os?: pulumi.Input<string>;
3924
+ controlPlaneConcurrency?: pulumi.Input<string>;
5789
3925
  /**
5790
- * vSphere password
3926
+ * Controlplane nodes drain options
5791
3927
  */
5792
- password?: pulumi.Input<string>;
3928
+ controlPlaneDrainOptions?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions>;
5793
3929
  /**
5794
- * vSphere resource pool for docker VM
3930
+ * How many worker nodes should be upgrade at time
5795
3931
  */
5796
- pool?: pulumi.Input<string>;
3932
+ workerConcurrency?: pulumi.Input<string>;
5797
3933
  /**
5798
- * If using a non-B2D image you can specify the ssh password
3934
+ * Worker nodes drain options
5799
3935
  */
5800
- sshPassword?: pulumi.Input<string>;
3936
+ workerDrainOptions?: pulumi.Input<inputs.ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions>;
3937
+ }
3938
+ export interface ClusterV2RkeConfigUpgradeStrategyControlPlaneDrainOptions {
5801
3939
  /**
5802
- * If using a non-B2D image you can specify the ssh port
3940
+ * Drain options delete empty dir data
5803
3941
  */
5804
- sshPort?: pulumi.Input<string>;
3942
+ deleteEmptyDirData?: pulumi.Input<boolean>;
5805
3943
  /**
5806
- * If using a non-B2D image you can specify the ssh user
3944
+ * Drain options disable eviction
5807
3945
  */
5808
- sshUser?: pulumi.Input<string>;
3946
+ disableEviction?: pulumi.Input<boolean>;
5809
3947
  /**
5810
- * If using a non-B2D image the uploaded keys will need chown'ed, defaults to staff e.g. docker:staff
3948
+ * Drain options enabled?
5811
3949
  */
5812
- sshUserGroup?: pulumi.Input<string>;
3950
+ enabled?: pulumi.Input<boolean>;
5813
3951
  /**
5814
- * vSphere tags id e.g. urn:xxx
3952
+ * Drain options force
5815
3953
  */
5816
- tags?: pulumi.Input<pulumi.Input<string>[]>;
3954
+ force?: pulumi.Input<boolean>;
5817
3955
  /**
5818
- * vSphere username
3956
+ * Drain options grace period
5819
3957
  */
5820
- username?: pulumi.Input<string>;
3958
+ gracePeriod?: pulumi.Input<number>;
5821
3959
  /**
5822
- * vSphere vApp IP allocation policy. Supported values are: dhcp, fixed, transient and fixedAllocated
3960
+ * Drain options ignore daemon sets
5823
3961
  */
5824
- vappIpAllocationPolicy?: pulumi.Input<string>;
3962
+ ignoreDaemonSets?: pulumi.Input<boolean>;
5825
3963
  /**
5826
- * vSphere vApp IP protocol for this deployment. Supported values are: IPv4 and IPv6
3964
+ * Drain options ignore errors
5827
3965
  */
5828
- vappIpProtocol?: pulumi.Input<string>;
3966
+ ignoreErrors?: pulumi.Input<boolean>;
5829
3967
  /**
5830
- * vSphere vApp properties
3968
+ * Drain options skip wait for delete timeout seconds
5831
3969
  */
5832
- vappProperties?: pulumi.Input<pulumi.Input<string>[]>;
3970
+ skipWaitForDeleteTimeoutSeconds?: pulumi.Input<number>;
5833
3971
  /**
5834
- * vSphere OVF environment transports to use for properties. Supported values are: iso and com.vmware.guestInfo
3972
+ * Drain options timeout
5835
3973
  */
5836
- vappTransport?: pulumi.Input<string>;
3974
+ timeout?: pulumi.Input<number>;
3975
+ }
3976
+ export interface ClusterV2RkeConfigUpgradeStrategyWorkerDrainOptions {
5837
3977
  /**
5838
- * vSphere IP/hostname for vCenter
3978
+ * Drain options delete empty dir data
5839
3979
  */
5840
- vcenter?: pulumi.Input<string>;
3980
+ deleteEmptyDirData?: pulumi.Input<boolean>;
5841
3981
  /**
5842
- * vSphere Port for vCenter
3982
+ * Drain options disable eviction
5843
3983
  */
5844
- vcenterPort?: pulumi.Input<string>;
5845
- }
5846
- export interface NamespaceContainerResourceLimit {
3984
+ disableEviction?: pulumi.Input<boolean>;
5847
3985
  /**
5848
- * Limit for limits cpu in namespace (string)
3986
+ * Drain options enabled?
5849
3987
  */
5850
- limitsCpu?: pulumi.Input<string>;
3988
+ enabled?: pulumi.Input<boolean>;
5851
3989
  /**
5852
- * Limit for limits memory in namespace (string)
3990
+ * Drain options force
5853
3991
  */
5854
- limitsMemory?: pulumi.Input<string>;
3992
+ force?: pulumi.Input<boolean>;
5855
3993
  /**
5856
- * Limit for requests cpu in namespace (string)
3994
+ * Drain options grace period
5857
3995
  */
5858
- requestsCpu?: pulumi.Input<string>;
3996
+ gracePeriod?: pulumi.Input<number>;
5859
3997
  /**
5860
- * Limit for requests memory in namespace (string)
3998
+ * Drain options ignore daemon sets
5861
3999
  */
5862
- requestsMemory?: pulumi.Input<string>;
5863
- }
5864
- export interface NamespaceResourceQuota {
4000
+ ignoreDaemonSets?: pulumi.Input<boolean>;
5865
4001
  /**
5866
- * Resource quota limit for namespace (list maxitems:1)
4002
+ * Drain options ignore errors
5867
4003
  */
5868
- limit: pulumi.Input<inputs.NamespaceResourceQuotaLimit>;
5869
- }
5870
- export interface NamespaceResourceQuotaLimit {
4004
+ ignoreErrors?: pulumi.Input<boolean>;
5871
4005
  /**
5872
- * Limit for config maps in namespace (string)
4006
+ * Drain options skip wait for delete timeout seconds
5873
4007
  */
5874
- configMaps?: pulumi.Input<string>;
4008
+ skipWaitForDeleteTimeoutSeconds?: pulumi.Input<number>;
5875
4009
  /**
5876
- * Limit for limits cpu in namespace (string)
4010
+ * Drain options timeout
5877
4011
  */
5878
- limitsCpu?: pulumi.Input<string>;
4012
+ timeout?: pulumi.Input<number>;
4013
+ }
4014
+ export interface GetRoleTemplateExternalRule {
5879
4015
  /**
5880
- * Limit for limits memory in namespace (string)
4016
+ * Policy rule api groups
5881
4017
  */
5882
- limitsMemory?: pulumi.Input<string>;
4018
+ apiGroups?: string[];
5883
4019
  /**
5884
- * Limit for persistent volume claims in namespace (string)
4020
+ * Policy rule non resource urls
5885
4021
  */
5886
- persistentVolumeClaims?: pulumi.Input<string>;
4022
+ nonResourceUrls?: string[];
5887
4023
  /**
5888
- * Limit for pods in namespace (string)
4024
+ * Policy rule resource names
5889
4025
  */
5890
- pods?: pulumi.Input<string>;
4026
+ resourceNames?: string[];
5891
4027
  /**
5892
- * Limit for replication controllers in namespace (string)
4028
+ * Policy rule resources
5893
4029
  */
5894
- replicationControllers?: pulumi.Input<string>;
4030
+ resources?: string[];
5895
4031
  /**
5896
- * Limit for requests cpu in namespace (string)
4032
+ * Policy rule verbs
5897
4033
  */
5898
- requestsCpu?: pulumi.Input<string>;
4034
+ verbs?: string[];
4035
+ }
4036
+ export interface GetRoleTemplateExternalRuleArgs {
5899
4037
  /**
5900
- * Limit for requests memory in namespace (string)
4038
+ * Policy rule api groups
5901
4039
  */
5902
- requestsMemory?: pulumi.Input<string>;
4040
+ apiGroups?: pulumi.Input<pulumi.Input<string>[]>;
5903
4041
  /**
5904
- * Limit for requests storage in namespace (string)
4042
+ * Policy rule non resource urls
5905
4043
  */
5906
- requestsStorage?: pulumi.Input<string>;
4044
+ nonResourceUrls?: pulumi.Input<pulumi.Input<string>[]>;
5907
4045
  /**
5908
- * Limit for secrets in namespace (string)
4046
+ * Policy rule resource names
5909
4047
  */
5910
- secrets?: pulumi.Input<string>;
5911
- services?: pulumi.Input<string>;
4048
+ resourceNames?: pulumi.Input<pulumi.Input<string>[]>;
5912
4049
  /**
5913
- * Limit for services load balancers in namespace (string)
4050
+ * Policy rule resources
5914
4051
  */
5915
- servicesLoadBalancers?: pulumi.Input<string>;
4052
+ resources?: pulumi.Input<pulumi.Input<string>[]>;
5916
4053
  /**
5917
- * Limit for services node ports in namespace (string)
5918
- *
5919
- * More info at [resource-quotas](https://rancher.com/docs/rancher/v2.x/en/k8s-in-rancher/projects-and-namespaces/resource-quotas/)
4054
+ * Policy rule verbs
5920
4055
  */
5921
- servicesNodePorts?: pulumi.Input<string>;
4056
+ verbs?: pulumi.Input<pulumi.Input<string>[]>;
5922
4057
  }
5923
- export interface NodePoolNodeTaint {
4058
+ export interface GlobalRoleRule {
5924
4059
  /**
5925
- * Taint effect. Supported values : `"NoExecute" | "NoSchedule" | "PreferNoSchedule"` (string)
4060
+ * Policy rule api groups
5926
4061
  */
5927
- effect?: pulumi.Input<string>;
4062
+ apiGroups?: pulumi.Input<pulumi.Input<string>[]>;
5928
4063
  /**
5929
- * Taint key (string)
4064
+ * Policy rule non resource urls
5930
4065
  */
5931
- key: pulumi.Input<string>;
4066
+ nonResourceUrls?: pulumi.Input<pulumi.Input<string>[]>;
5932
4067
  /**
5933
- * Taint time added (string)
4068
+ * Policy rule resource names
5934
4069
  */
5935
- timeAdded?: pulumi.Input<string>;
4070
+ resourceNames?: pulumi.Input<pulumi.Input<string>[]>;
5936
4071
  /**
5937
- * Taint value (string)
4072
+ * Policy rule resources
5938
4073
  */
5939
- value: pulumi.Input<string>;
4074
+ resources?: pulumi.Input<pulumi.Input<string>[]>;
4075
+ /**
4076
+ * Policy rule verbs
4077
+ */
4078
+ verbs?: pulumi.Input<pulumi.Input<string>[]>;
5940
4079
  }
5941
- export interface NodeTemplateAmazonec2Config {
4080
+ export interface MachineConfigV2Amazonec2Config {
5942
4081
  /**
5943
4082
  * AWS Access Key
5944
4083
  */
@@ -5955,6 +4094,10 @@ export interface NodeTemplateAmazonec2Config {
5955
4094
  * AWS root device name
5956
4095
  */
5957
4096
  deviceName?: pulumi.Input<string>;
4097
+ /**
4098
+ * Indicates whether the first IPv6 address assigned to the instance should be marked as the primary IPv6 address. Enable this option if the instance requires a stable, non-changing IPv6 address. This option does not affect whether IPv6 addresses are assigned to the instance.
4099
+ */
4100
+ enablePrimaryIpv6?: pulumi.Input<boolean>;
5958
4101
  /**
5959
4102
  * Encrypt EBS volume
5960
4103
  */
@@ -5967,6 +4110,10 @@ export interface NodeTemplateAmazonec2Config {
5967
4110
  * Enables or disables the HTTP metadata endpoint on your instances
5968
4111
  */
5969
4112
  httpEndpoint?: pulumi.Input<string>;
4113
+ /**
4114
+ * Enables or disables the IPv6 endpoint for the instance metadata service. Options: enabled, disabled
4115
+ */
4116
+ httpProtocolIpv6?: pulumi.Input<string>;
5970
4117
  /**
5971
4118
  * The state of token usage for your instance metadata requests
5972
4119
  */
@@ -5983,6 +4130,14 @@ export interface NodeTemplateAmazonec2Config {
5983
4130
  * AWS instance type
5984
4131
  */
5985
4132
  instanceType?: pulumi.Input<string>;
4133
+ /**
4134
+ * The number of IPv6 addresses to assign to the network interface (default: 0). Must be greater than zero when ipv6AddressOnly is true.
4135
+ */
4136
+ ipv6AddressCount?: pulumi.Input<string>;
4137
+ /**
4138
+ * Indicates whether the instance has only IPv6 address. Useful when the VPC or subnet is configured as IPv6-only. When set to true, the instance will have IPv6 as its sole address. When set to true, ipv6AddressCount must be greater than zero.
4139
+ */
4140
+ ipv6AddressOnly?: pulumi.Input<boolean>;
5986
4141
  /**
5987
4142
  * Custom KMS key ID using the AWS Managed CMK
5988
4143
  */
@@ -6036,9 +4191,9 @@ export interface NodeTemplateAmazonec2Config {
6036
4191
  */
6037
4192
  spotPrice?: pulumi.Input<string>;
6038
4193
  /**
6039
- * SSH Key for Instance
4194
+ * SSH Key file contents for sshKeyContents
6040
4195
  */
6041
- sshKeypath?: pulumi.Input<string>;
4196
+ sshKeyContents?: pulumi.Input<string>;
6042
4197
  /**
6043
4198
  * Set the name of the ssh user
6044
4199
  */
@@ -6076,9 +4231,9 @@ export interface NodeTemplateAmazonec2Config {
6076
4231
  */
6077
4232
  zone: pulumi.Input<string>;
6078
4233
  }
6079
- export interface NodeTemplateAzureConfig {
4234
+ export interface MachineConfigV2AzureConfig {
6080
4235
  /**
6081
- * Enable Accelerated Networking when creating an Azure Network Interface
4236
+ * Use Accelerated Networking when creating a network interface for the Azure VM
6082
4237
  */
6083
4238
  acceleratedNetworking?: pulumi.Input<boolean>;
6084
4239
  /**
@@ -6086,7 +4241,7 @@ export interface NodeTemplateAzureConfig {
6086
4241
  */
6087
4242
  availabilitySet?: pulumi.Input<string>;
6088
4243
  /**
6089
- * The Azure Availability Zone the VM should be created in
4244
+ * The Availability Zone that the Azure VM should be created in
6090
4245
  */
6091
4246
  availabilityZone?: pulumi.Input<string>;
6092
4247
  /**
@@ -6146,9 +4301,9 @@ export interface NodeTemplateAzureConfig {
6146
4301
  */
6147
4302
  openPorts?: pulumi.Input<pulumi.Input<string>[]>;
6148
4303
  /**
6149
- * Purchase plan for Azure Virtual Machine (in <publisher>:<product>:<plan> format)
4304
+ * Only use a private IP address
6150
4305
  */
6151
- plan?: pulumi.Input<string>;
4306
+ privateAddressOnly?: pulumi.Input<boolean>;
6152
4307
  /**
6153
4308
  * Specify a static private IP address for the machine
6154
4309
  */
@@ -6189,6 +4344,10 @@ export interface NodeTemplateAzureConfig {
6189
4344
  * Tags to be applied to the Azure VM instance (e.g. key1,value1,key2,value2)
6190
4345
  */
6191
4346
  tags?: pulumi.Input<string>;
4347
+ /**
4348
+ * Azure Tenant ID
4349
+ */
4350
+ tenantId?: pulumi.Input<string>;
6192
4351
  /**
6193
4352
  * Update domain count to use for availability set
6194
4353
  */
@@ -6198,7 +4357,7 @@ export interface NodeTemplateAzureConfig {
6198
4357
  */
6199
4358
  usePrivateIp?: pulumi.Input<boolean>;
6200
4359
  /**
6201
- * Use the Standard SKU when creating a public IP for an Azure VM
4360
+ * Use the standard SKU when creating a Public IP for the Azure VM instance
6202
4361
  */
6203
4362
  usePublicIpStandardSku?: pulumi.Input<boolean>;
6204
4363
  /**
@@ -6206,7 +4365,7 @@ export interface NodeTemplateAzureConfig {
6206
4365
  */
6207
4366
  vnet?: pulumi.Input<string>;
6208
4367
  }
6209
- export interface NodeTemplateDigitaloceanConfig {
4368
+ export interface MachineConfigV2DigitaloceanConfig {
6210
4369
  /**
6211
4370
  * Digital Ocean access token
6212
4371
  */
@@ -6240,13 +4399,13 @@ export interface NodeTemplateDigitaloceanConfig {
6240
4399
  */
6241
4400
  size?: pulumi.Input<string>;
6242
4401
  /**
6243
- * SSH key fingerprint
4402
+ * SSH private key contents
6244
4403
  */
6245
- sshKeyFingerprint?: pulumi.Input<string>;
4404
+ sshKeyContents?: pulumi.Input<string>;
6246
4405
  /**
6247
- * SSH private key path
4406
+ * SSH key fingerprint
6248
4407
  */
6249
- sshKeyPath?: pulumi.Input<string>;
4408
+ sshKeyFingerprint?: pulumi.Input<string>;
6250
4409
  /**
6251
4410
  * SSH port
6252
4411
  */
@@ -6256,15 +4415,105 @@ export interface NodeTemplateDigitaloceanConfig {
6256
4415
  */
6257
4416
  sshUser?: pulumi.Input<string>;
6258
4417
  /**
6259
- * Comma-separated list of tags to apply to the Droplet
4418
+ * Comma-separated list of tags to apply to the Droplet
4419
+ */
4420
+ tags?: pulumi.Input<string>;
4421
+ /**
4422
+ * Path to file with cloud-init user-data
4423
+ */
4424
+ userdata?: pulumi.Input<string>;
4425
+ }
4426
+ export interface MachineConfigV2GoogleConfig {
4427
+ /**
4428
+ * GCE Instance External IP
4429
+ */
4430
+ address?: pulumi.Input<string>;
4431
+ /**
4432
+ * GCE service account auth json file path
4433
+ */
4434
+ authEncodedJson?: pulumi.Input<string>;
4435
+ /**
4436
+ * GCE Instance Disk Size (in GB)
4437
+ */
4438
+ diskSize: pulumi.Input<string>;
4439
+ /**
4440
+ * GCE Instance Disk Type
4441
+ */
4442
+ diskType: pulumi.Input<string>;
4443
+ /**
4444
+ * A prefix to be added to firewall rules created when exposing ports publicly. Required if exposing ports publicly.
4445
+ */
4446
+ externalFirewallRulePrefix?: pulumi.Input<string>;
4447
+ /**
4448
+ * A prefix to be added to an internal firewall rule created to ensure virtual machines can communicate with one another.
4449
+ */
4450
+ internalFirewallRulePrefix?: pulumi.Input<string>;
4451
+ /**
4452
+ * GCE instance image absolute URL
4453
+ */
4454
+ machineImage: pulumi.Input<string>;
4455
+ /**
4456
+ * GCE instance type
4457
+ */
4458
+ machineType: pulumi.Input<string>;
4459
+ /**
4460
+ * The network to provision virtual machines within
4461
+ */
4462
+ network: pulumi.Input<string>;
4463
+ /**
4464
+ * A list of ports to be opened publicly. 'external_firewall_rule_prefix' must also be set
4465
+ */
4466
+ openPorts?: pulumi.Input<pulumi.Input<string>[]>;
4467
+ /**
4468
+ * Indicates if the virtual machine can be preempted
4469
+ */
4470
+ preemptable?: pulumi.Input<boolean>;
4471
+ /**
4472
+ * The GCP project to create virtual machines within
4473
+ */
4474
+ project: pulumi.Input<string>;
4475
+ /**
4476
+ * Access scopes to be set on the virtual machine
4477
+ */
4478
+ scopes?: pulumi.Input<string>;
4479
+ /**
4480
+ * The subnetwork to provision virtual machines within
4481
+ */
4482
+ subNetwork?: pulumi.Input<string>;
4483
+ /**
4484
+ * A set of network tags to be added to each VM, in the format of 'tag1,tag2'
4485
+ */
4486
+ tags?: pulumi.Input<string>;
4487
+ /**
4488
+ * Indicates if an existing VM should be used. This is not currently support in Rancher.
4489
+ */
4490
+ useExisting?: pulumi.Input<boolean>;
4491
+ /**
4492
+ * Indicates if the virtual machines should use an internal IP
4493
+ */
4494
+ useInternalIp?: pulumi.Input<boolean>;
4495
+ /**
4496
+ * Indicates if the virtual machines should use an internal IP only and not be assigned a public IP
4497
+ */
4498
+ useInternalIpOnly?: pulumi.Input<boolean>;
4499
+ /**
4500
+ * GCE user-data file path
4501
+ */
4502
+ userData?: pulumi.Input<string>;
4503
+ /**
4504
+ * The username to be set when logging into the virtual machines
4505
+ */
4506
+ username?: pulumi.Input<string>;
4507
+ /**
4508
+ * A set of labels to be added to each VM, in the format of 'key1,value1,key2,value2'
6260
4509
  */
6261
- tags?: pulumi.Input<string>;
4510
+ vmLabels?: pulumi.Input<string>;
6262
4511
  /**
6263
- * Path to file with cloud-init user-data
4512
+ * The region and zone to create virtual machines within (e.g. us-east1-b)
6264
4513
  */
6265
- userdata?: pulumi.Input<string>;
4514
+ zone: pulumi.Input<string>;
6266
4515
  }
6267
- export interface NodeTemplateHarvesterConfig {
4516
+ export interface MachineConfigV2HarvesterConfig {
6268
4517
  /**
6269
4518
  * CPU count
6270
4519
  */
@@ -6315,6 +4564,10 @@ export interface NodeTemplateHarvesterConfig {
6315
4564
  * @deprecated Use networkInfo instead
6316
4565
  */
6317
4566
  networkName?: pulumi.Input<string>;
4567
+ /**
4568
+ * Reserved memory size (in MiB)
4569
+ */
4570
+ reservedMemorySize?: pulumi.Input<string>;
6318
4571
  /**
6319
4572
  * SSH password
6320
4573
  */
@@ -6336,47 +4589,7 @@ export interface NodeTemplateHarvesterConfig {
6336
4589
  */
6337
4590
  vmNamespace: pulumi.Input<string>;
6338
4591
  }
6339
- export interface NodeTemplateHetznerConfig {
6340
- /**
6341
- * Hetzner Cloud project API token
6342
- */
6343
- apiToken: pulumi.Input<string>;
6344
- /**
6345
- * Hetzner Cloud server image
6346
- */
6347
- image?: pulumi.Input<string>;
6348
- /**
6349
- * Comma-separated list of network IDs or names which should be attached to the server private network interface
6350
- */
6351
- networks?: pulumi.Input<string>;
6352
- /**
6353
- * Map of the labels which will be assigned to the server
6354
- */
6355
- serverLabels?: pulumi.Input<{
6356
- [key: string]: pulumi.Input<string>;
6357
- }>;
6358
- /**
6359
- * Hetzner Cloud datacenter
6360
- */
6361
- serverLocation?: pulumi.Input<string>;
6362
- /**
6363
- * Hetzner Cloud server type
6364
- */
6365
- serverType?: pulumi.Input<string>;
6366
- /**
6367
- * Use private network
6368
- */
6369
- usePrivateNetwork?: pulumi.Input<boolean>;
6370
- /**
6371
- * Path to file with cloud-init user-data
6372
- */
6373
- userdata?: pulumi.Input<string>;
6374
- /**
6375
- * Comma-separated list of volume IDs or names which should be attached to the server
6376
- */
6377
- volumes?: pulumi.Input<string>;
6378
- }
6379
- export interface NodeTemplateLinodeConfig {
4592
+ export interface MachineConfigV2LinodeConfig {
6380
4593
  /**
6381
4594
  * Linode user accounts (seperated by commas) whose Linode SSH keys will be permitted root access to the created node
6382
4595
  */
@@ -6442,105 +4655,7 @@ export interface NodeTemplateLinodeConfig {
6442
4655
  */
6443
4656
  uaPrefix?: pulumi.Input<string>;
6444
4657
  }
6445
- export interface NodeTemplateNodeTaint {
6446
- /**
6447
- * Taint effect. Supported values : `"NoExecute" | "NoSchedule" | "PreferNoSchedule"` (string)
6448
- */
6449
- effect?: pulumi.Input<string>;
6450
- /**
6451
- * Taint key (string)
6452
- */
6453
- key: pulumi.Input<string>;
6454
- /**
6455
- * Taint time added (string)
6456
- */
6457
- timeAdded?: pulumi.Input<string>;
6458
- /**
6459
- * Taint value (string)
6460
- */
6461
- value: pulumi.Input<string>;
6462
- }
6463
- export interface NodeTemplateOpennebulaConfig {
6464
- /**
6465
- * Size of the Volatile disk in MB - only for b2d (string)
6466
- */
6467
- b2dSize?: pulumi.Input<string>;
6468
- /**
6469
- * CPU value for the VM (string)
6470
- */
6471
- cpu?: pulumi.Input<string>;
6472
- /**
6473
- * Dev prefix to use for the images. E.g.: 'vd', 'sd', 'hd' (string)
6474
- */
6475
- devPrefix?: pulumi.Input<string>;
6476
- /**
6477
- * VNC is enabled by default. Disable it with this flag (bool)
6478
- */
6479
- disableVnc?: pulumi.Input<boolean>;
6480
- /**
6481
- * Size of the disk for the VM in MB (string)
6482
- */
6483
- diskResize?: pulumi.Input<string>;
6484
- /**
6485
- * OpenStack image id to use for the instance. Conflicts with `imageName` (string)
6486
- */
6487
- imageId?: pulumi.Input<string>;
6488
- /**
6489
- * OpenStack image name to use for the instance. Conflicts with `imageId` (string)
6490
- */
6491
- imageName?: pulumi.Input<string>;
6492
- /**
6493
- * Owner of the image to use as the VM OS (string)
6494
- */
6495
- imageOwner?: pulumi.Input<string>;
6496
- /**
6497
- * Size of the memory for the VM in MB (string)
6498
- */
6499
- memory?: pulumi.Input<string>;
6500
- /**
6501
- * Opennebula network ID to connect the machine to. Conflicts with `networkName` (string)
6502
- */
6503
- networkId?: pulumi.Input<string>;
6504
- /**
6505
- * Opennebula network to connect the machine to. Conflicts with `networkId` (string)
6506
- */
6507
- networkName?: pulumi.Input<string>;
6508
- /**
6509
- * Opennebula user ID of the Network to connect the machine to (string)
6510
- */
6511
- networkOwner?: pulumi.Input<string>;
6512
- /**
6513
- * vSphere password. Mandatory on Rancher v2.0.x and v2.1.x. Use `rancher2.CloudCredential` from Rancher v2.2.x (string)
6514
- */
6515
- password: pulumi.Input<string>;
6516
- /**
6517
- * If using a non-B2D image you can specify the ssh user. Default `docker`. From Rancher v2.3.3 (string)
6518
- */
6519
- sshUser?: pulumi.Input<string>;
6520
- /**
6521
- * Opennebula template ID to use. Conflicts with `templateName` (string)
6522
- */
6523
- templateId?: pulumi.Input<string>;
6524
- /**
6525
- * Name of the Opennbula template to use. Conflicts with `templateId` (string)
6526
- */
6527
- templateName?: pulumi.Input<string>;
6528
- /**
6529
- * Set the user for the XML-RPC API authentication (string)
6530
- */
6531
- user: pulumi.Input<string>;
6532
- /**
6533
- * VCPUs for the VM (string)
6534
- *
6535
- * > **Note:**: `Required*` denotes that one of imageName / imageId or templateName / templateId is required but you cannot combine them.
6536
- */
6537
- vcpu?: pulumi.Input<string>;
6538
- /**
6539
- * Set the url for the Opennebula XML-RPC API (string)
6540
- */
6541
- xmlRpcUrl: pulumi.Input<string>;
6542
- }
6543
- export interface NodeTemplateOpenstackConfig {
4658
+ export interface MachineConfigV2OpenstackConfig {
6544
4659
  /**
6545
4660
  * OpenStack active timeout Default `200` (string)
6546
4661
  */
@@ -6634,7 +4749,7 @@ export interface NodeTemplateOpenstackConfig {
6634
4749
  */
6635
4750
  novaNetwork?: pulumi.Input<boolean>;
6636
4751
  /**
6637
- * vSphere password. Mandatory on Rancher v2.0.x and v2.1.x. Use `rancher2.CloudCredential` from Rancher v2.2.x (string)
4752
+ * OpenStack password. Mandatory on Rancher v2.0.x and v2.1.x. Use `rancher2.CloudCredential` from Rancher v2.2.x (string)
6638
4753
  */
6639
4754
  password?: pulumi.Input<string>;
6640
4755
  /**
@@ -6642,7 +4757,7 @@ export interface NodeTemplateOpenstackConfig {
6642
4757
  */
6643
4758
  privateKeyFile?: pulumi.Input<string>;
6644
4759
  /**
6645
- * AWS region. Default `eu-west-2` (string)
4760
+ * OpenStack region name (string)
6646
4761
  */
6647
4762
  region: pulumi.Input<string>;
6648
4763
  /**
@@ -6650,13 +4765,21 @@ export interface NodeTemplateOpenstackConfig {
6650
4765
  */
6651
4766
  secGroups?: pulumi.Input<string>;
6652
4767
  /**
6653
- * If using a non-B2D image you can specify the ssh port. Default `22`. From Rancher v2.3.3 (string)
4768
+ * If using a non-B2D image you can specify the ssh port. Default `22` (string)
6654
4769
  */
6655
4770
  sshPort?: pulumi.Input<string>;
6656
4771
  /**
6657
- * If using a non-B2D image you can specify the ssh user. Default `docker`. From Rancher v2.3.3 (string)
4772
+ * If using a non-B2D image you can specify the ssh user. Default `docker`. (string)
6658
4773
  */
6659
4774
  sshUser?: pulumi.Input<string>;
4775
+ /**
4776
+ * OpenStack tenant domain id. Conflicts with `tenantDomainName` (string)
4777
+ */
4778
+ tenantDomainId?: pulumi.Input<string>;
4779
+ /**
4780
+ * OpenStack tenant domain name. Conflicts with `tenantDomainId` (string)
4781
+ */
4782
+ tenantDomainName?: pulumi.Input<string>;
6660
4783
  /**
6661
4784
  * OpenStack tenant id. Conflicts with `tenantName` (string)
6662
4785
  */
@@ -6670,16 +4793,21 @@ export interface NodeTemplateOpenstackConfig {
6670
4793
  */
6671
4794
  userDataFile?: pulumi.Input<string>;
6672
4795
  /**
6673
- * vSphere username. Mandatory on Rancher v2.0.x and v2.1.x. Use `rancher2.CloudCredential` from Rancher v2.2.x (string)
4796
+ * OpenStack user domain id. Conflicts with `userDomainName` (string)
4797
+ */
4798
+ userDomainId?: pulumi.Input<string>;
4799
+ /**
4800
+ * OpenStack user domain name. Conflicts with `userDomainId` (string)
4801
+ */
4802
+ userDomainName?: pulumi.Input<string>;
4803
+ /**
4804
+ * The username to be set when logging into the virtual machines (string)
6674
4805
  */
6675
4806
  username?: pulumi.Input<string>;
6676
4807
  /**
6677
4808
  * OpenStack volume device path (attaching). Applicable only when `bootFromVolume` is `true`. Omit for auto `/dev/vdb`. (string)
6678
- *
6679
- * > **Note:**: `Required*` denotes that either the _name or _id is required but you cannot use both.
6680
- *
6681
- * > **Note:**: `Required**` denotes that either the _name or _id is required unless `applicationCredentialId` is defined.
6682
- *
4809
+ * > **Note:**: `Required+` denotes that either the _name or _id is required but you cannot use both.
4810
+ * > **Note:**: `Required++` denotes that either the _name or _id is required unless `applicationCredentialId` is defined.
6683
4811
  * > **Note for OpenStack users:**: `keypairName` is required to be in the schema even if there are no references in rancher itself
6684
4812
  */
6685
4813
  volumeDevicePath?: pulumi.Input<string>;
@@ -6700,53 +4828,7 @@ export interface NodeTemplateOpenstackConfig {
6700
4828
  */
6701
4829
  volumeType?: pulumi.Input<string>;
6702
4830
  }
6703
- export interface NodeTemplateOutscaleConfig {
6704
- /**
6705
- * Outscale Access Key
6706
- */
6707
- accessKey: pulumi.Input<string>;
6708
- /**
6709
- * Extra tags for all created resources (e.g. key1=value1,key2=value2)
6710
- */
6711
- extraTagsAlls?: pulumi.Input<pulumi.Input<string>[]>;
6712
- /**
6713
- * Extra tags only for instances (e.g. key1=value1,key2=value2)
6714
- */
6715
- extraTagsInstances?: pulumi.Input<pulumi.Input<string>[]>;
6716
- /**
6717
- * Outscale VM type
6718
- */
6719
- instanceType?: pulumi.Input<string>;
6720
- /**
6721
- * Outscale Region
6722
- */
6723
- region?: pulumi.Input<string>;
6724
- /**
6725
- * Iops for io1 Root Disk. From 1 to 13000.
6726
- */
6727
- rootDiskIops?: pulumi.Input<number>;
6728
- /**
6729
- * Size of the Root Disk (in GB). From 1 to 14901.
6730
- */
6731
- rootDiskSize?: pulumi.Input<number>;
6732
- /**
6733
- * Type of the Root Disk. Possible values are :'standard', 'gp2' or 'io1'.
6734
- */
6735
- rootDiskType?: pulumi.Input<string>;
6736
- /**
6737
- * Outscale Secret Key
6738
- */
6739
- secretKey: pulumi.Input<string>;
6740
- /**
6741
- * Ids of user defined Security Groups to add to the machine
6742
- */
6743
- securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
6744
- /**
6745
- * Outscale Machine Image to use as bootstrap for the VM
6746
- */
6747
- sourceOmi?: pulumi.Input<string>;
6748
- }
6749
- export interface NodeTemplateVsphereConfig {
4831
+ export interface MachineConfigV2VsphereConfig {
6750
4832
  /**
6751
4833
  * vSphere URL for boot2docker image
6752
4834
  */
@@ -6819,6 +4901,10 @@ export interface NodeTemplateVsphereConfig {
6819
4901
  * vSphere network where the virtual machine will be attached
6820
4902
  */
6821
4903
  networks?: pulumi.Input<pulumi.Input<string>[]>;
4904
+ /**
4905
+ * Type of virtual machine OS in vSphere
4906
+ */
4907
+ os?: pulumi.Input<string>;
6822
4908
  /**
6823
4909
  * vSphere password
6824
4910
  */
@@ -6876,6 +4962,101 @@ export interface NodeTemplateVsphereConfig {
6876
4962
  */
6877
4963
  vcenterPort?: pulumi.Input<string>;
6878
4964
  }
4965
+ export interface NamespaceContainerResourceLimit {
4966
+ /**
4967
+ * Limit for limits cpu in namespace (string)
4968
+ */
4969
+ limitsCpu?: pulumi.Input<string>;
4970
+ /**
4971
+ * Limit for limits memory in namespace (string)
4972
+ */
4973
+ limitsMemory?: pulumi.Input<string>;
4974
+ /**
4975
+ * Limit for requests cpu in namespace (string)
4976
+ */
4977
+ requestsCpu?: pulumi.Input<string>;
4978
+ /**
4979
+ * Limit for requests memory in namespace (string)
4980
+ */
4981
+ requestsMemory?: pulumi.Input<string>;
4982
+ }
4983
+ export interface NamespaceResourceQuota {
4984
+ /**
4985
+ * Resource quota limit for namespace (list maxitems:1)
4986
+ */
4987
+ limit: pulumi.Input<inputs.NamespaceResourceQuotaLimit>;
4988
+ }
4989
+ export interface NamespaceResourceQuotaLimit {
4990
+ /**
4991
+ * Limit for config maps in namespace (string)
4992
+ */
4993
+ configMaps?: pulumi.Input<string>;
4994
+ /**
4995
+ * Limit for limits cpu in namespace (string)
4996
+ */
4997
+ limitsCpu?: pulumi.Input<string>;
4998
+ /**
4999
+ * Limit for limits memory in namespace (string)
5000
+ */
5001
+ limitsMemory?: pulumi.Input<string>;
5002
+ /**
5003
+ * Limit for persistent volume claims in namespace (string)
5004
+ */
5005
+ persistentVolumeClaims?: pulumi.Input<string>;
5006
+ /**
5007
+ * Limit for pods in namespace (string)
5008
+ */
5009
+ pods?: pulumi.Input<string>;
5010
+ /**
5011
+ * Limit for replication controllers in namespace (string)
5012
+ */
5013
+ replicationControllers?: pulumi.Input<string>;
5014
+ /**
5015
+ * Limit for requests cpu in namespace (string)
5016
+ */
5017
+ requestsCpu?: pulumi.Input<string>;
5018
+ /**
5019
+ * Limit for requests memory in namespace (string)
5020
+ */
5021
+ requestsMemory?: pulumi.Input<string>;
5022
+ /**
5023
+ * Limit for requests storage in namespace (string)
5024
+ */
5025
+ requestsStorage?: pulumi.Input<string>;
5026
+ /**
5027
+ * Limit for secrets in namespace (string)
5028
+ */
5029
+ secrets?: pulumi.Input<string>;
5030
+ services?: pulumi.Input<string>;
5031
+ /**
5032
+ * Limit for services load balancers in namespace (string)
5033
+ */
5034
+ servicesLoadBalancers?: pulumi.Input<string>;
5035
+ /**
5036
+ * Limit for services node ports in namespace (string)
5037
+ *
5038
+ * More info at [resource-quotas](https://rancher.com/docs/rancher/v2.x/en/k8s-in-rancher/projects-and-namespaces/resource-quotas/)
5039
+ */
5040
+ servicesNodePorts?: pulumi.Input<string>;
5041
+ }
5042
+ export interface NodePoolNodeTaint {
5043
+ /**
5044
+ * Taint effect. Supported values : `"NoExecute" | "NoSchedule" | "PreferNoSchedule"` (string)
5045
+ */
5046
+ effect?: pulumi.Input<string>;
5047
+ /**
5048
+ * Taint key (string)
5049
+ */
5050
+ key: pulumi.Input<string>;
5051
+ /**
5052
+ * Taint time added (string)
5053
+ */
5054
+ timeAdded?: pulumi.Input<string>;
5055
+ /**
5056
+ * Taint value (string)
5057
+ */
5058
+ value: pulumi.Input<string>;
5059
+ }
6879
5060
  export interface PodSecurityAdmissionConfigurationTemplateDefaults {
6880
5061
  /**
6881
5062
  * Pod Security Admission Configuration audit. This audits a pod in violation of privileged, baseline, or restricted policy (default: privileged)