kube-dsl 0.1.0 → 0.2.0

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 (87) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/lib/kube-dsl/builder.rb +1 -1
  4. data/lib/kube-dsl/dsl/admissionregistration/v1/mutating_webhook.rb +2 -3
  5. data/lib/kube-dsl/dsl/admissionregistration/v1/rule_with_operations.rb +2 -6
  6. data/lib/kube-dsl/dsl/admissionregistration/v1/validating_webhook.rb +2 -3
  7. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/mutating_webhook.rb +2 -3
  8. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/rule_with_operations.rb +2 -6
  9. data/lib/kube-dsl/dsl/admissionregistration/v1beta1/validating_webhook.rb +2 -3
  10. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_names.rb +3 -5
  11. data/lib/kube-dsl/dsl/apiextensions/v1/custom_resource_definition_status.rb +2 -2
  12. data/lib/kube-dsl/dsl/apiextensions/v1/json_schema_props.rb +3 -5
  13. data/lib/kube-dsl/dsl/apiextensions/v1/webhook_conversion.rb +1 -1
  14. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_conversion.rb +2 -3
  15. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_names.rb +3 -5
  16. data/lib/kube-dsl/dsl/apiextensions/v1beta1/custom_resource_definition_status.rb +2 -2
  17. data/lib/kube-dsl/dsl/apiextensions/v1beta1/json_schema_props.rb +3 -5
  18. data/lib/kube-dsl/dsl/auditregistration/v1alpha1/policy.rb +1 -2
  19. data/lib/kube-dsl/dsl/authentication/v1/token_request_spec.rb +2 -3
  20. data/lib/kube-dsl/dsl/authentication/v1/token_review_spec.rb +2 -3
  21. data/lib/kube-dsl/dsl/authentication/v1/token_review_status.rb +2 -3
  22. data/lib/kube-dsl/dsl/authentication/v1/user_info.rb +2 -3
  23. data/lib/kube-dsl/dsl/authentication/v1beta1/token_review_spec.rb +2 -3
  24. data/lib/kube-dsl/dsl/authentication/v1beta1/token_review_status.rb +2 -3
  25. data/lib/kube-dsl/dsl/authentication/v1beta1/user_info.rb +2 -3
  26. data/lib/kube-dsl/dsl/authorization/v1/non_resource_rule.rb +2 -3
  27. data/lib/kube-dsl/dsl/authorization/v1/resource_rule.rb +1 -4
  28. data/lib/kube-dsl/dsl/authorization/v1/subject_access_review_spec.rb +2 -3
  29. data/lib/kube-dsl/dsl/authorization/v1beta1/non_resource_rule.rb +2 -3
  30. data/lib/kube-dsl/dsl/authorization/v1beta1/resource_rule.rb +1 -4
  31. data/lib/kube-dsl/dsl/authorization/v1beta1/subject_access_review_spec.rb +2 -3
  32. data/lib/kube-dsl/dsl/certificates/v1beta1/certificate_signing_request_spec.rb +3 -5
  33. data/lib/kube-dsl/dsl/discovery/v1beta1/endpoint.rb +2 -3
  34. data/lib/kube-dsl/dsl/extensions/v1beta1/ingress_tls.rb +2 -3
  35. data/lib/kube-dsl/dsl/extensions/v1beta1/ip_block.rb +2 -3
  36. data/lib/kube-dsl/dsl/extensions/v1beta1/network_policy_spec.rb +2 -2
  37. data/lib/kube-dsl/dsl/extensions/v1beta1/pod_security_policy_spec.rb +8 -15
  38. data/lib/kube-dsl/dsl/extensions/v1beta1/runtime_class_strategy_options.rb +2 -3
  39. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/non_resource_policy_rule.rb +2 -3
  40. data/lib/kube-dsl/dsl/flowcontrol/v1alpha1/resource_policy_rule.rb +2 -6
  41. data/lib/kube-dsl/dsl/meta/v1/api_resource.rb +4 -7
  42. data/lib/kube-dsl/dsl/meta/v1/api_versions.rb +2 -2
  43. data/lib/kube-dsl/dsl/meta/v1/delete_options.rb +2 -3
  44. data/lib/kube-dsl/dsl/meta/v1/label_selector_requirement.rb +1 -2
  45. data/lib/kube-dsl/dsl/meta/v1/object_meta.rb +2 -3
  46. data/lib/kube-dsl/dsl/networking/v1/ip_block.rb +2 -3
  47. data/lib/kube-dsl/dsl/networking/v1/network_policy_spec.rb +2 -2
  48. data/lib/kube-dsl/dsl/networking/v1beta1/ingress_tls.rb +2 -3
  49. data/lib/kube-dsl/dsl/policy/v1beta1/pod_security_policy_spec.rb +8 -15
  50. data/lib/kube-dsl/dsl/policy/v1beta1/runtime_class_strategy_options.rb +2 -3
  51. data/lib/kube-dsl/dsl/rbac/v1/policy_rule.rb +2 -6
  52. data/lib/kube-dsl/dsl/rbac/v1alpha1/policy_rule.rb +2 -6
  53. data/lib/kube-dsl/dsl/rbac/v1beta1/policy_rule.rb +2 -6
  54. data/lib/kube-dsl/dsl/storage/v1/csi_node_driver.rb +1 -2
  55. data/lib/kube-dsl/dsl/storage/v1/storage_class.rb +2 -3
  56. data/lib/kube-dsl/dsl/storage/v1beta1/csi_driver_spec.rb +1 -2
  57. data/lib/kube-dsl/dsl/storage/v1beta1/csi_node_driver.rb +1 -2
  58. data/lib/kube-dsl/dsl/storage/v1beta1/storage_class.rb +2 -3
  59. data/lib/kube-dsl/dsl/v1/capabilities.rb +3 -4
  60. data/lib/kube-dsl/dsl/v1/ceph_fs_persistent_volume_source.rb +2 -3
  61. data/lib/kube-dsl/dsl/v1/ceph_fs_volume_source.rb +2 -3
  62. data/lib/kube-dsl/dsl/v1/container.rb +3 -5
  63. data/lib/kube-dsl/dsl/v1/container_image.rb +2 -3
  64. data/lib/kube-dsl/dsl/v1/ephemeral_container.rb +3 -5
  65. data/lib/kube-dsl/dsl/v1/exec_action.rb +2 -2
  66. data/lib/kube-dsl/dsl/v1/fc_volume_source.rb +2 -4
  67. data/lib/kube-dsl/dsl/v1/host_alias.rb +2 -3
  68. data/lib/kube-dsl/dsl/v1/iscsi_persistent_volume_source.rb +2 -3
  69. data/lib/kube-dsl/dsl/v1/iscsi_volume_source.rb +2 -3
  70. data/lib/kube-dsl/dsl/v1/namespace_spec.rb +1 -1
  71. data/lib/kube-dsl/dsl/v1/node_selector_requirement.rb +1 -2
  72. data/lib/kube-dsl/dsl/v1/node_spec.rb +2 -3
  73. data/lib/kube-dsl/dsl/v1/node_status.rb +2 -3
  74. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_spec.rb +2 -3
  75. data/lib/kube-dsl/dsl/v1/persistent_volume_claim_status.rb +2 -3
  76. data/lib/kube-dsl/dsl/v1/persistent_volume_spec.rb +3 -5
  77. data/lib/kube-dsl/dsl/v1/pod_affinity_term.rb +2 -3
  78. data/lib/kube-dsl/dsl/v1/pod_dns_config.rb +2 -3
  79. data/lib/kube-dsl/dsl/v1/pod_security_context.rb +1 -2
  80. data/lib/kube-dsl/dsl/v1/rbd_persistent_volume_source.rb +2 -3
  81. data/lib/kube-dsl/dsl/v1/rbd_volume_source.rb +2 -3
  82. data/lib/kube-dsl/dsl/v1/resource_quota_spec.rb +1 -1
  83. data/lib/kube-dsl/dsl/v1/scoped_resource_selector_requirement.rb +1 -2
  84. data/lib/kube-dsl/dsl/v1/service_spec.rb +4 -7
  85. data/lib/kube-dsl/dsl/v1/topology_selector_label_requirement.rb +1 -2
  86. data/lib/kube-dsl/version.rb +1 -1
  87. metadata +2 -2
@@ -1,11 +1,10 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class NodeStatus < ::KubeDSL::DSLObject
3
- value_fields :phase
3
+ value_fields :phase, :volumes_in_use
4
4
  array_field(:address) { KubeDSL::DSL::V1::NodeAddress.new }
5
5
  array_field(:condition) { KubeDSL::DSL::V1::NodeCondition.new }
6
6
  array_field(:image) { KubeDSL::DSL::V1::ContainerImage.new }
7
7
  array_field(:volumes_attached) { KubeDSL::DSL::V1::AttachedVolume.new }
8
- array_field :volumes_in_use
9
8
  object_field(:config) { KubeDSL::DSL::V1::NodeConfigStatus.new }
10
9
  object_field(:daemon_endpoints) { KubeDSL::DSL::V1::NodeDaemonEndpoints.new }
11
10
  object_field(:node_info) { KubeDSL::DSL::V1::NodeSystemInfo.new }
@@ -15,11 +14,11 @@ module KubeDSL::DSL::V1
15
14
  def serialize
16
15
  {}.tap do |result|
17
16
  result[:phase] = phase
17
+ result[:volumesInUse] = volumes_in_use
18
18
  result[:addresses] = addresses.map(&:serialize)
19
19
  result[:conditions] = conditions.map(&:serialize)
20
20
  result[:images] = images.map(&:serialize)
21
21
  result[:volumesAttached] = volumes_attacheds.map(&:serialize)
22
- result[:volumesInUse] = volumes_in_uses
23
22
  result[:config] = config.serialize
24
23
  result[:daemonEndpoints] = daemon_endpoints.serialize
25
24
  result[:nodeInfo] = node_info.serialize
@@ -1,17 +1,16 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PersistentVolumeClaimSpec < ::KubeDSL::DSLObject
3
- value_fields :storage_class_name, :volume_mode, :volume_name
4
- array_field :access_mode
3
+ value_fields :access_modes, :storage_class_name, :volume_mode, :volume_name
5
4
  object_field(:data_source) { KubeDSL::DSL::V1::TypedLocalObjectReference.new }
6
5
  object_field(:resources) { KubeDSL::DSL::V1::ResourceRequirements.new }
7
6
  object_field(:selector) { KubeDSL::DSL::Meta::V1::LabelSelector.new }
8
7
 
9
8
  def serialize
10
9
  {}.tap do |result|
10
+ result[:accessModes] = access_modes
11
11
  result[:storageClassName] = storage_class_name
12
12
  result[:volumeMode] = volume_mode
13
13
  result[:volumeName] = volume_name
14
- result[:accessModes] = access_modes
15
14
  result[:dataSource] = data_source.serialize
16
15
  result[:resources] = resources.serialize
17
16
  result[:selector] = selector.serialize
@@ -1,14 +1,13 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PersistentVolumeClaimStatus < ::KubeDSL::DSLObject
3
- value_fields :phase
4
- array_field :access_mode
3
+ value_fields :access_modes, :phase
5
4
  array_field(:condition) { KubeDSL::DSL::V1::PersistentVolumeClaimCondition.new }
6
5
  object_field(:capacity) { ::KubeDSL::KeyValueFields.new(format: :string) }
7
6
 
8
7
  def serialize
9
8
  {}.tap do |result|
10
- result[:phase] = phase
11
9
  result[:accessModes] = access_modes
10
+ result[:phase] = phase
12
11
  result[:conditions] = conditions.map(&:serialize)
13
12
  result[:capacity] = capacity.serialize
14
13
  end
@@ -1,8 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PersistentVolumeSpec < ::KubeDSL::DSLObject
3
- value_fields :persistent_volume_reclaim_policy, :storage_class_name, :volume_mode
4
- array_field :access_mode
5
- array_field :mount_option
3
+ value_fields :access_modes, :mount_options, :persistent_volume_reclaim_policy, :storage_class_name, :volume_mode
6
4
  object_field(:aws_elastic_block_store) { KubeDSL::DSL::V1::AWSElasticBlockStoreVolumeSource.new }
7
5
  object_field(:azure_disk) { KubeDSL::DSL::V1::AzureDiskVolumeSource.new }
8
6
  object_field(:azure_file) { KubeDSL::DSL::V1::AzureFilePersistentVolumeSource.new }
@@ -31,11 +29,11 @@ module KubeDSL::DSL::V1
31
29
 
32
30
  def serialize
33
31
  {}.tap do |result|
32
+ result[:accessModes] = access_modes
33
+ result[:mountOptions] = mount_options
34
34
  result[:persistentVolumeReclaimPolicy] = persistent_volume_reclaim_policy
35
35
  result[:storageClassName] = storage_class_name
36
36
  result[:volumeMode] = volume_mode
37
- result[:accessModes] = access_modes
38
- result[:mountOptions] = mount_options
39
37
  result[:awsElasticBlockStore] = aws_elastic_block_store.serialize
40
38
  result[:azureDisk] = azure_disk.serialize
41
39
  result[:azureFile] = azure_file.serialize
@@ -1,13 +1,12 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PodAffinityTerm < ::KubeDSL::DSLObject
3
- value_fields :topology_key
4
- array_field :namespace
3
+ value_fields :namespaces, :topology_key
5
4
  object_field(:label_selector) { KubeDSL::DSL::Meta::V1::LabelSelector.new }
6
5
 
7
6
  def serialize
8
7
  {}.tap do |result|
9
- result[:topologyKey] = topology_key
10
8
  result[:namespaces] = namespaces
9
+ result[:topologyKey] = topology_key
11
10
  result[:labelSelector] = label_selector.serialize
12
11
  end
13
12
  end
@@ -1,14 +1,13 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PodDNSConfig < ::KubeDSL::DSLObject
3
- array_field :nameserver
3
+ value_fields :nameservers, :searches
4
4
  array_field(:option) { KubeDSL::DSL::V1::PodDNSConfigOption.new }
5
- array_field :search
6
5
 
7
6
  def serialize
8
7
  {}.tap do |result|
9
8
  result[:nameservers] = nameservers
10
- result[:options] = options.map(&:serialize)
11
9
  result[:searches] = searches
10
+ result[:options] = options.map(&:serialize)
12
11
  end
13
12
  end
14
13
 
@@ -1,7 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class PodSecurityContext < ::KubeDSL::DSLObject
3
- value_fields :fs_group, :run_as_group, :run_as_non_root, :run_as_user
4
- array_field :supplemental_group
3
+ value_fields :fs_group, :run_as_group, :run_as_non_root, :run_as_user, :supplemental_groups
5
4
  array_field(:sysctls) { KubeDSL::DSL::V1::Sysctl.new }
6
5
  object_field(:se_linux_options) { KubeDSL::DSL::V1::SELinuxOptions.new }
7
6
  object_field(:windows_options) { KubeDSL::DSL::V1::WindowsSecurityContextOptions.new }
@@ -1,7 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class RBDPersistentVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :fs_type, :image, :keyring, :pool, :read_only, :user
4
- array_field :monitor
3
+ value_fields :fs_type, :image, :keyring, :monitors, :pool, :read_only, :user
5
4
  object_field(:secret_ref) { KubeDSL::DSL::V1::SecretReference.new }
6
5
 
7
6
  def serialize
@@ -9,10 +8,10 @@ module KubeDSL::DSL::V1
9
8
  result[:fsType] = fs_type
10
9
  result[:image] = image
11
10
  result[:keyring] = keyring
11
+ result[:monitors] = monitors
12
12
  result[:pool] = pool
13
13
  result[:readOnly] = read_only
14
14
  result[:user] = user
15
- result[:monitors] = monitors
16
15
  result[:secretRef] = secret_ref.serialize
17
16
  end
18
17
  end
@@ -1,7 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class RBDVolumeSource < ::KubeDSL::DSLObject
3
- value_fields :fs_type, :image, :keyring, :pool, :read_only, :user
4
- array_field :monitor
3
+ value_fields :fs_type, :image, :keyring, :monitors, :pool, :read_only, :user
5
4
  object_field(:secret_ref) { KubeDSL::DSL::V1::LocalObjectReference.new }
6
5
 
7
6
  def serialize
@@ -9,10 +8,10 @@ module KubeDSL::DSL::V1
9
8
  result[:fsType] = fs_type
10
9
  result[:image] = image
11
10
  result[:keyring] = keyring
11
+ result[:monitors] = monitors
12
12
  result[:pool] = pool
13
13
  result[:readOnly] = read_only
14
14
  result[:user] = user
15
- result[:monitors] = monitors
16
15
  result[:secretRef] = secret_ref.serialize
17
16
  end
18
17
  end
@@ -1,6 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ResourceQuotaSpec < ::KubeDSL::DSLObject
3
- array_field :scope
3
+ value_fields :scopes
4
4
  object_field(:scope_selector) { KubeDSL::DSL::V1::ScopeSelector.new }
5
5
  object_field(:hard) { ::KubeDSL::KeyValueFields.new(format: :string) }
6
6
 
@@ -1,7 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ScopedResourceSelectorRequirement < ::KubeDSL::DSLObject
3
- value_fields :operator, :scope_name
4
- array_field :value
3
+ value_fields :operator, :scope_name, :values
5
4
 
6
5
  def serialize
7
6
  {}.tap do |result|
@@ -1,28 +1,25 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class ServiceSpec < ::KubeDSL::DSLObject
3
- value_fields :cluster_ip, :external_name, :external_traffic_policy, :health_check_node_port, :ip_family, :load_balancer_ip, :publish_not_ready_addresses, :session_affinity, :type
4
- array_field :external_ip
5
- array_field :load_balancer_source_range
3
+ value_fields :cluster_ip, :external_i_ps, :external_name, :external_traffic_policy, :health_check_node_port, :ip_family, :load_balancer_ip, :load_balancer_source_ranges, :publish_not_ready_addresses, :session_affinity, :topology_keys, :type
6
4
  array_field(:port) { KubeDSL::DSL::V1::ServicePort.new }
7
- array_field :topology_key
8
5
  object_field(:session_affinity_config) { KubeDSL::DSL::V1::SessionAffinityConfig.new }
9
6
  object_field(:selector) { ::KubeDSL::KeyValueFields.new(format: :string) }
10
7
 
11
8
  def serialize
12
9
  {}.tap do |result|
13
10
  result[:clusterIP] = cluster_ip
11
+ result[:externalIPs] = external_i_ps
14
12
  result[:externalName] = external_name
15
13
  result[:externalTrafficPolicy] = external_traffic_policy
16
14
  result[:healthCheckNodePort] = health_check_node_port
17
15
  result[:ipFamily] = ip_family
18
16
  result[:loadBalancerIP] = load_balancer_ip
17
+ result[:loadBalancerSourceRanges] = load_balancer_source_ranges
19
18
  result[:publishNotReadyAddresses] = publish_not_ready_addresses
20
19
  result[:sessionAffinity] = session_affinity
20
+ result[:topologyKeys] = topology_keys
21
21
  result[:type] = type
22
- result[:externalIPs] = external_ips
23
- result[:loadBalancerSourceRanges] = load_balancer_source_ranges
24
22
  result[:ports] = ports.map(&:serialize)
25
- result[:topologyKeys] = topology_keys
26
23
  result[:sessionAffinityConfig] = session_affinity_config.serialize
27
24
  result[:selector] = selector.serialize
28
25
  end
@@ -1,7 +1,6 @@
1
1
  module KubeDSL::DSL::V1
2
2
  class TopologySelectorLabelRequirement < ::KubeDSL::DSLObject
3
- value_fields :key
4
- array_field :value
3
+ value_fields :key, :values
5
4
 
6
5
  def serialize
7
6
  {}.tap do |result|
@@ -1,3 +1,3 @@
1
1
  module KubeDSL
2
- VERSION = '0.1.0'
2
+ VERSION = '0.2.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kube-dsl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cameron Dutro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-21 00:00:00.000000000 Z
11
+ date: 2020-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-inflector