diff --git a/README.md b/README.md index 55f3ca8..96143bf 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ In the following example, we: -- examples/deploymentSimple.dhall let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let deployment = kubernetes.Deployment::{ @@ -152,7 +152,7 @@ let map = Prelude.List.map let kv = Prelude.JSON.keyText let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let Service = { name : Text, host : Text, version : Text } diff --git a/defaults.dhall b/defaults.dhall index 1d81cde..11e70d5 100644 --- a/defaults.dhall +++ b/defaults.dhall @@ -735,31 +735,31 @@ , CustomResourceConversion = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion.dhall sha256:bdffed4de47429d51c58edc4bcaf4c65a02a942c5a91d2c10b04bb00f8829b0b , CustomResourceDefinition = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:336b72958ef16de1522a4df63369ed958cd0dce56ef5d30e58647fa450943a7a + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:2a51ba49b6bb3a550cb786e6b2ee2366866bad889601cdba3af3addecb10a332 , CustomResourceDefinitionCondition = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition.dhall sha256:fef63958bc998f900417bd68974df7936535249af83edf1183721637fa3e7257 , CustomResourceDefinitionList = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:652d515d9b0ff855301f78e4f647c23de73c3e5e695fd3bddc102ebba7a7929d + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:452a8886d9c8e40d5de75c4c80d121ff79d6cf831be8daeaff63ecfc24a849f5 , CustomResourceDefinitionNames = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames.dhall sha256:73f1528045b5541c009f74e02026661616223dc23bc0df9c0d640fd0184eef0a , CustomResourceDefinitionSpec = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:19e995d543bcba13a88b7aea1de4c4d3bad4c620ee437fc3fc47f713ab9ab8a5 + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:b7c84df71059878b76d75f2a23316169f4854ec3d26341c8d8e2ddde0a7e52fa , CustomResourceDefinitionStatus = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus.dhall sha256:318553c0327930257e05495251cafe571a94670e29285b7aa6b834cea63ac849 , CustomResourceDefinitionVersion = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:2db28c6f5c40ad9e27c1f0c039a9afb3bdd8587c609be0ecfeff93b513a7bc79 + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:0902dcee8c4fbcf739bf02e5aec3380f79c5ab51cc1ac2b75e8c075835be411c , CustomResourceSubresourceScale = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale.dhall sha256:265a09b4bd7a8452253edec4c5a15e1d9f8c4805350ac7b19fac74eca23b266e , CustomResourceSubresources = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources.dhall sha256:9ae05caacec1bcc4f030d8eef9b82d5416b9f22134b108c7db6b56c859d86ba3 , CustomResourceValidation = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:3038e3161e96beabd1d70e9d0ebfda501fe8a7cce778df7f7964fad87f5b4537 + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:a442aa0bd3be3cf8dbdda4f209af4732b12e8ab8c263535bc55e92f075db922b , ExternalDocumentation = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall sha256:ef72045716c5bc714c4a81aa7218ade9eec702588c9a2650fe5b7d6331445032 , JSON = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall sha256:9bb9dcb5bf6f795291686f59383bcd01c8e79b87fc3fb63351d46dea100ac51b , JSONSchemaProps = - ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:63d200dfe11f927576fa3a694fc9d8e6fd9ba317d5a8c65ace4c4117c804b65e + ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:7f257b567eed8ba4d53b2553413c48b5aec2f18479b1924b873fc150ce0c86c9 , JSONSchemaPropsOrArray = ./defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall sha256:9bb9dcb5bf6f795291686f59383bcd01c8e79b87fc3fb63351d46dea100ac51b , JSONSchemaPropsOrBool = diff --git a/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall b/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall index 6671bc0..7d91424 100644 --- a/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall +++ b/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall @@ -1,8 +1,4 @@ -{ additionalItems = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool.dhall -, additionalProperties = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool.dhall -, default = +{ default = ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall , definitions = [] : List { mapKey : Text, mapValue : Text } , dependencies = [] : List { mapKey : Text, mapValue : Text } @@ -13,8 +9,6 @@ ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall , externalDocs = ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall -, items = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall , patternProperties = [] : List { mapKey : Text, mapValue : Text } , properties = [] : List { mapKey : Text, mapValue : Text } , required = [] : List Text diff --git a/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall b/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall index 97fe348..2035f7a 100644 --- a/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall +++ b/defaults/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall @@ -1,8 +1,4 @@ -{ additionalItems = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool.dhall -, additionalProperties = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool.dhall -, default = +{ default = ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON.dhall , definitions = [] : List { mapKey : Text, mapValue : Text } , dependencies = [] : List { mapKey : Text, mapValue : Text } @@ -13,8 +9,6 @@ ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON.dhall , externalDocs = ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation.dhall -, items = - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray.dhall , patternProperties = [] : List { mapKey : Text, mapValue : Text } , properties = [] : List { mapKey : Text, mapValue : Text } , required = [] : List Text diff --git a/dhall-kubernetes-generator/src/Dhall/Kubernetes/Convert.hs b/dhall-kubernetes-generator/src/Dhall/Kubernetes/Convert.hs index feaf98c..1c09c98 100644 --- a/dhall-kubernetes-generator/src/Dhall/Kubernetes/Convert.hs +++ b/dhall-kubernetes-generator/src/Dhall/Kubernetes/Convert.hs @@ -296,6 +296,7 @@ getImportsMap prefixMap duplicateNameHandler objectNames folder toInclude namespaced = case filter filterFn namespacedNames of [name] -> Just name + [] -> Nothing names -> duplicateNameHandler (kind, names) stripPrefix :: (Generic a, GFromJSON Zero (Rep a)) => Int -> Value -> Parser a diff --git a/dhall-kubernetes-generator/src/Dhall/Kubernetes/Data.hs b/dhall-kubernetes-generator/src/Dhall/Kubernetes/Data.hs index 8fef025..ff8961e 100644 --- a/dhall-kubernetes-generator/src/Dhall/Kubernetes/Data.hs +++ b/dhall-kubernetes-generator/src/Dhall/Kubernetes/Data.hs @@ -11,4 +11,15 @@ patchCyclicImports :: Definition -> Definition patchCyclicImports Definition{ properties = oldProps, .. } = Definition{..} where properties = fmap (\propsMap -> Data.Map.withoutKeys propsMap toRemove) oldProps - toRemove = Set.fromList $ ModelName <$> [ "allOf", "anyOf", "not", "oneOf" ] + toRemove = + Set.fromList $ + ( ModelName + <$> [ "allOf" + , "anyOf" + , "not" + , "oneOf" + , "additionalItems" + , "additionalProperties" + , "items" + ] + ) diff --git a/dhall-kubernetes-generator/src/Main.hs b/dhall-kubernetes-generator/src/Main.hs index 7252b8e..628babc 100644 --- a/dhall-kubernetes-generator/src/Main.hs +++ b/dhall-kubernetes-generator/src/Main.hs @@ -126,11 +126,11 @@ parseVersion = Megaparsec.try parseSuffix <|> parsePrefix parseVersion -getVersion :: ModelName -> Version +getVersion :: ModelName -> Maybe Version getVersion ModelName{..} = case Megaparsec.parse parseVersion "" unModelName of - Left errors -> error (show errors) - Right version -> version + Left errors -> Nothing + Right version -> Just version preferStableResource :: DuplicateHandler preferStableResource (_, names) = diff --git a/examples/aws-iam-authenticator-chart.dhall b/examples/aws-iam-authenticator-chart.dhall index f05d89f..0c9595e 100644 --- a/examples/aws-iam-authenticator-chart.dhall +++ b/examples/aws-iam-authenticator-chart.dhall @@ -1,5 +1,5 @@ let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let release = "wintering-rodent" diff --git a/examples/deployment.dhall b/examples/deployment.dhall index 086cbfd..b23e983 100644 --- a/examples/deployment.dhall +++ b/examples/deployment.dhall @@ -2,7 +2,7 @@ let Prelude = ../Prelude.dhall sha256:771c7131fc87e13eb18f770a27c59f9418879f7e230ba2a50e46f4461f43ec69 let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let kv = Prelude.JSON.keyText diff --git a/examples/deploymentSimple.dhall b/examples/deploymentSimple.dhall index 8cb7390..2f36aee 100644 --- a/examples/deploymentSimple.dhall +++ b/examples/deploymentSimple.dhall @@ -1,5 +1,5 @@ let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let deployment = kubernetes.Deployment::{ diff --git a/examples/ingress.dhall b/examples/ingress.dhall index e9c1bfb..a8c9173 100644 --- a/examples/ingress.dhall +++ b/examples/ingress.dhall @@ -6,7 +6,7 @@ let map = Prelude.List.map let kv = Prelude.JSON.keyText let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let Service = { name : Text, host : Text, version : Text } diff --git a/examples/service.dhall b/examples/service.dhall index eb7270d..001b9ac 100644 --- a/examples/service.dhall +++ b/examples/service.dhall @@ -2,7 +2,7 @@ let Prelude = ../Prelude.dhall sha256:771c7131fc87e13eb18f770a27c59f9418879f7e230ba2a50e46f4461f43ec69 let kubernetes = - ../package.dhall sha256:63eb2e2bb9a50632801b673e67e666740c09c89deb0a0d0592d165178b5eba53 + ../package.dhall sha256:ab1c971ddeb178c1cfc5e749b211b4fe6fdb6fa1b68b10de62aeb543efcd60b3 let kv = Prelude.JSON.keyText diff --git a/nix/dhall-kubernetes.nix b/nix/dhall-kubernetes.nix index 6bdc293..f682046 100644 --- a/nix/dhall-kubernetes.nix +++ b/nix/dhall-kubernetes.nix @@ -1,85 +1,42 @@ -{ coreutils -, dhall -, dhall-json -, dhallPackages -, glibcLocales -, haskellPackages -, kubernetes-openapi-spec -, lib -, python3 -, stdenv -}: +{ fetchurl, make-dhall-kubernetes, lib, stdenv }: -version: +let + kubernetesDirectory = ./kubernetes; -let - # Ignore generated files - ignoreOutputs = - name: type: - !(lib.elem name - (map toString - [ ../README.md - ../types - ../defaults - ../schemas - ../defaults.dhall - ../types.dhall - ../typesUnion.dhall - ../schemas.dhall - ] - ) - ); + kubernetesPaths = builtins.readDir kubernetesDirectory; + + toKeyValue = + file: _: + let + version = builtins.replaceStrings [ ".txt" ] [ "" ] file; + + in + { name = version; + + value = + let + spec = + stdenv.mkDerivation { + name = "kubernetes-openapi-spec-${version}"; + + src = + fetchurl { + url = "https://github.com/kubernetes/kubernetes/archive/release-${version}.tar.gz"; + + sha256 = + builtins.replaceStrings [ "\n" ] [ "" ] + (builtins.readFile (kubernetesDirectory + "/${file}")); + }; + + phases = [ "unpackPhase" "installPhase" ]; + + installPhase = '' + cp api/openapi-spec/swagger.json $out + ''; + }; + in + make-dhall-kubernetes spec; + }; in - stdenv.mkDerivation { - name = "dhall-kubernetes"; - - DHALL_PRELUDE = "${dhallPackages.prelude}/package.dhall"; - - XDG_CACHE_HOME = "."; - - buildInputs = - [ dhall - dhall-json - python3 - glibcLocales - ]; - - buildPhase = '' - patchShebangs ./scripts/build-readme.sh - - ./scripts/build-readme.sh - - ${coreutils}/bin/mkdir -p types defaults - - ${haskellPackages.dhall-kubernetes-generator}/bin/dhall-kubernetes-generator '${kubernetes-openapi-spec."${version}"}' - - for file in ./types.dhall ./typesUnion.dhall ./defaults.dhall ./schemas.dhall ./package.dhall ./examples/*.dhall; do - echo "Freezing file '$file'" - - ${dhall}/bin/dhall freeze --all --inplace "$file" - done - ''; - - checkPhase = '' - patchShebangs ./scripts/build-examples.py - - patchShebangs ./scripts/check-source.py - - LC_ALL=en_US.UTF-8 ./scripts/check-source.py - - mkdir -p tmp - - LC_ALL=en_US.UTF-8 ./scripts/build-examples.py tmp - ''; - - installPhase = '' - ${coreutils}/bin/mkdir --parents "$out" - - cp -r types defaults schemas examples types.dhall defaults.dhall typesUnion.dhall schemas.dhall package.dhall README.md "$out" - ''; - - src = - lib.cleanSourceWith - { filter = ignoreOutputs; src = lib.cleanSource ./..; }; -} + lib.mapAttrs' toKeyValue kubernetesPaths diff --git a/nix/kubernetes-openapi-spec.nix b/nix/kubernetes-openapi-spec.nix deleted file mode 100644 index ad9013a..0000000 --- a/nix/kubernetes-openapi-spec.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib, stdenv }: - -let - kubernetesDirectory = ./kubernetes; - - kubernetesPaths = builtins.readDir kubernetesDirectory; - - toKeySpec = - file: _: - let - version = builtins.replaceStrings [ ".txt" ] [ "" ] file; - - in - { name = version; - - value = - stdenv.mkDerivation { - name = "kubernetes-openapi-spec-${version}"; - src = - builtins.fetchTarball { - url = "https://github.com/kubernetes/kubernetes/archive/release-${version}.tar.gz"; - - sha256 = - builtins.replaceStrings [ "\n" ] [ "" ] - (builtins.readFile (kubernetesDirectory + "/${file}")); - }; - - phases = [ "unpackPhase" "installPhase" ]; - - installPhase = '' - cp api/openapi-spec/swagger.json $out - ''; - }; - }; - -in - lib.mapAttrs' toKeySpec kubernetesPaths diff --git a/nix/kubernetes/0.10.txt b/nix/kubernetes/0.10.txt deleted file mode 100644 index 839bbc3..0000000 --- a/nix/kubernetes/0.10.txt +++ /dev/null @@ -1 +0,0 @@ -1wx9xfqd5a0srkfj15vgbhc5pxy43g76xxjm0i8lygyb2869vwb7 diff --git a/nix/kubernetes/0.12.txt b/nix/kubernetes/0.12.txt deleted file mode 100644 index 8636912..0000000 --- a/nix/kubernetes/0.12.txt +++ /dev/null @@ -1 +0,0 @@ -0lq8zl9v2966sa32i1kkvz9szqjdy95bdaax96fzf6wyx6gw8zjd diff --git a/nix/kubernetes/0.13.txt b/nix/kubernetes/0.13.txt deleted file mode 100644 index 2b8aa1a..0000000 --- a/nix/kubernetes/0.13.txt +++ /dev/null @@ -1 +0,0 @@ -0dirl056vaj8xxj54gyfi96952983a1iwjisjz464ry9s4bamzp3 diff --git a/nix/kubernetes/0.14.txt b/nix/kubernetes/0.14.txt deleted file mode 100644 index 161749f..0000000 --- a/nix/kubernetes/0.14.txt +++ /dev/null @@ -1 +0,0 @@ -16p2mqafpl7sw191slx9dwg44sv8nvjh20maj7j4h269xnd3pj8y diff --git a/nix/kubernetes/0.15.txt b/nix/kubernetes/0.15.txt deleted file mode 100644 index 68d8a53..0000000 --- a/nix/kubernetes/0.15.txt +++ /dev/null @@ -1 +0,0 @@ -0wxcdqj42ls0sdg1l2fkyka98rlr34ifakwq56f2xg2jamp3a2wm diff --git a/nix/kubernetes/0.16.txt b/nix/kubernetes/0.16.txt deleted file mode 100644 index c1d9140..0000000 --- a/nix/kubernetes/0.16.txt +++ /dev/null @@ -1 +0,0 @@ -1jmghxhjklypgcqr06m0yhcjwkvsa8jgc77zznq03jawy5v9jb88 diff --git a/nix/kubernetes/0.17.txt b/nix/kubernetes/0.17.txt deleted file mode 100644 index e957923..0000000 --- a/nix/kubernetes/0.17.txt +++ /dev/null @@ -1 +0,0 @@ -1bbfly9k5iw0yxd2ayhl1l9ha2h5ysmak8l3dh8mkzwv7c763p7g diff --git a/nix/kubernetes/0.18.txt b/nix/kubernetes/0.18.txt deleted file mode 100644 index ab8995b..0000000 --- a/nix/kubernetes/0.18.txt +++ /dev/null @@ -1 +0,0 @@ -06phj5k1pjbwn8mjmlbw8k7fz60p0n1qczq0sixzxwk9n6ysfb27 diff --git a/nix/kubernetes/0.19.txt b/nix/kubernetes/0.19.txt deleted file mode 100644 index 2845da2..0000000 --- a/nix/kubernetes/0.19.txt +++ /dev/null @@ -1 +0,0 @@ -0yk3pilr599aisi67lwcdall9jgssxv0m9iz5af26myywgqx88qw diff --git a/nix/kubernetes/0.20.txt b/nix/kubernetes/0.20.txt deleted file mode 100644 index b801c87..0000000 --- a/nix/kubernetes/0.20.txt +++ /dev/null @@ -1 +0,0 @@ -14ijvyhnl1gjdnqy81msf065iv75ywwvys8hkypn6zam8vni3jk6 diff --git a/nix/kubernetes/0.21.txt b/nix/kubernetes/0.21.txt deleted file mode 100644 index a4b3d3d..0000000 --- a/nix/kubernetes/0.21.txt +++ /dev/null @@ -1 +0,0 @@ -060dmbkqlcrsfwxwc20dx8nc5hni416x4sk29yfnpncgx9nzfb47 diff --git a/nix/kubernetes/0.4.txt b/nix/kubernetes/0.4.txt deleted file mode 100644 index 6b13e0c..0000000 --- a/nix/kubernetes/0.4.txt +++ /dev/null @@ -1 +0,0 @@ -0rig5chq70knkxnbf21majpjb8dpfsywnpzwpj3abqldwh82nkz3 diff --git a/nix/kubernetes/0.5.txt b/nix/kubernetes/0.5.txt deleted file mode 100644 index eba8c05..0000000 --- a/nix/kubernetes/0.5.txt +++ /dev/null @@ -1 +0,0 @@ -1jsdcwi1rzjs7snngdcwia5a0kadllwdx848ipnfvzr8lm3901x9 diff --git a/nix/kubernetes/0.6.txt b/nix/kubernetes/0.6.txt deleted file mode 100644 index 49618a3..0000000 --- a/nix/kubernetes/0.6.txt +++ /dev/null @@ -1 +0,0 @@ -1hpq72zqwl8djg83jvi1ql14g003s8kb1c2jir7ch57d9ya5c4sl diff --git a/nix/kubernetes/0.7.txt b/nix/kubernetes/0.7.txt deleted file mode 100644 index 02e996f..0000000 --- a/nix/kubernetes/0.7.txt +++ /dev/null @@ -1 +0,0 @@ -02sk0csbsnf6nkhxjx5gdh0p98kfirgg4bfzvzr0ancs2vjdc6yd diff --git a/nix/kubernetes/0.8.txt b/nix/kubernetes/0.8.txt deleted file mode 100644 index 664c17e..0000000 --- a/nix/kubernetes/0.8.txt +++ /dev/null @@ -1 +0,0 @@ -16gg51j4yk7m6zzvi7nhlfb2nmhhp3hbq8l99hdpaj01ahbsn8f9 diff --git a/nix/kubernetes/0.9.txt b/nix/kubernetes/0.9.txt deleted file mode 100644 index 69e4287..0000000 --- a/nix/kubernetes/0.9.txt +++ /dev/null @@ -1 +0,0 @@ -05xjwgk1gq6r3kqypbq67hrqzv8fpav4wm17xm6cals2s2xzcci2 diff --git a/nix/kubernetes/1.0.txt b/nix/kubernetes/1.0.txt deleted file mode 100644 index 4205c1d..0000000 --- a/nix/kubernetes/1.0.txt +++ /dev/null @@ -1 +0,0 @@ -188yr7x13gmi8fv77jxpx4nwz1kpr78da8xqlwpp2fd0ak3xy9x0 diff --git a/nix/kubernetes/1.1.txt b/nix/kubernetes/1.1.txt deleted file mode 100644 index c157122..0000000 --- a/nix/kubernetes/1.1.txt +++ /dev/null @@ -1 +0,0 @@ -01x8sa1z10prwml4j8ybrxpdan94hh9qnkbczz7q3yrrlj8ywz7b diff --git a/nix/kubernetes/1.10.txt b/nix/kubernetes/1.10.txt index aeacacd..02086fe 100644 --- a/nix/kubernetes/1.10.txt +++ b/nix/kubernetes/1.10.txt @@ -1 +1 @@ -16zv5hcxhp65lryxv96dlg37ckzyjha5d70pa3yhlb19hap89hh8 +0p6djqdz296r18n0kf2lfq96yynngd3b5qc6d5pcqh2dfs2v9ydm diff --git a/nix/kubernetes/1.11.txt b/nix/kubernetes/1.11.txt index fbd695b..a2b960f 100644 --- a/nix/kubernetes/1.11.txt +++ b/nix/kubernetes/1.11.txt @@ -1 +1 @@ -1zifl2f4k4icgijyss25krm4ccc1a4zd5pdz2l0bc6g769dbnxgc +1hcry5rsa2ngi1wdg8cnwh4s53l9xggl5ynfa8jwdnjq0nhsiryd diff --git a/nix/kubernetes/1.12.txt b/nix/kubernetes/1.12.txt index eea0b0c..a279e8d 100644 --- a/nix/kubernetes/1.12.txt +++ b/nix/kubernetes/1.12.txt @@ -1 +1 @@ -0g07k5zf9nh49b11yxikp8f7mv3a32fqx47qkbnkmnznxih0rg7f +18kixk3i9c2vgl5yrnvi7ybchskyvfpzs9cgc8jk9w921ryvwavg diff --git a/nix/kubernetes/1.13.txt b/nix/kubernetes/1.13.txt index cdbea5c..ca7bf15 100644 --- a/nix/kubernetes/1.13.txt +++ b/nix/kubernetes/1.13.txt @@ -1 +1 @@ -1bhnhx3mzf3l311cpwfy586n9z4s08k1kqf2lvyjp10zlich6rbh +0bp716qd67dc96ibwxjn03njq7g4p0ix82dnm8a264l15rzj8v01 diff --git a/nix/kubernetes/1.14.txt b/nix/kubernetes/1.14.txt index 8ccbc25..7187f6b 100644 --- a/nix/kubernetes/1.14.txt +++ b/nix/kubernetes/1.14.txt @@ -1 +1 @@ -10h6asa6hj3a9mgf4ld7smli6fiv4grkwhd0cnbc22zwa2x69706 +0z2chn8dqinc6cpyl9w1f3rn77qfxbbgzmrcvzal18a8pzd5rkcy diff --git a/nix/kubernetes/1.15.txt b/nix/kubernetes/1.15.txt index 7ba845c..24f6889 100644 --- a/nix/kubernetes/1.15.txt +++ b/nix/kubernetes/1.15.txt @@ -1 +1 @@ -1dmjdc0l1k4mgl1bdpvgjrkksq3j5nyiqlj7nlkfgjhqh9s6ynya +1gwvlflf0yha1qsv6lp1skqpbm22qiyc5bicp6s1w8rxz8wlcv91 diff --git a/nix/kubernetes/1.16.txt b/nix/kubernetes/1.16.txt index 910deac..6025262 100644 --- a/nix/kubernetes/1.16.txt +++ b/nix/kubernetes/1.16.txt @@ -1 +1 @@ -1awapdsvp5qnaaxr20zd9lvfzrk5a2wzxpqnbyh4jhpyv22li16g +01m3pcymbfg7vzdx9z08iilqlfn8w5myw6rlf4mjny76x380d94x diff --git a/nix/kubernetes/1.17.txt b/nix/kubernetes/1.17.txt index 08d02c2..ddab67b 100644 --- a/nix/kubernetes/1.17.txt +++ b/nix/kubernetes/1.17.txt @@ -1 +1 @@ -1fy2c2j5f61zx7vcj4pnzfpcyifm6kqxl9g9w30jq1w96r769k3i +0q84xf16dl15s30awirsg73y9fbd9n6sr6163xvyjq5x8vf9axgj diff --git a/nix/kubernetes/1.2.txt b/nix/kubernetes/1.2.txt deleted file mode 100644 index 09f7e16..0000000 --- a/nix/kubernetes/1.2.txt +++ /dev/null @@ -1 +0,0 @@ -1d92nykr6s9ngdnsbnbfi4zrc08f7h8d5v1pr09hyqbl9r430xnc diff --git a/nix/kubernetes/1.3.txt b/nix/kubernetes/1.3.txt deleted file mode 100644 index de9012b..0000000 --- a/nix/kubernetes/1.3.txt +++ /dev/null @@ -1 +0,0 @@ -0ha2izcfvcyg1l8qrjs8c32afm9mlwvy5d33aqcfjpvy40nszzpg diff --git a/nix/kubernetes/1.4.txt b/nix/kubernetes/1.4.txt deleted file mode 100644 index 57214d4..0000000 --- a/nix/kubernetes/1.4.txt +++ /dev/null @@ -1 +0,0 @@ -1383iiy3n1l4vzk5wrv7dd7vl3q3mw2x4wq2k799zgxdvwp1wmbp diff --git a/nix/kubernetes/1.5.txt b/nix/kubernetes/1.5.txt index ffc45bb..059fe93 100644 --- a/nix/kubernetes/1.5.txt +++ b/nix/kubernetes/1.5.txt @@ -1 +1 @@ -0kdycfxvmanah9cpvkxs9blhhqgpxwf49bcf1hcy2fhkibgr33v4 +1838jrzk7xn2m92xj9wl47rrg4ac46qrpcc99c3l06y9hlhhjfg5 diff --git a/nix/kubernetes/1.6.3.txt b/nix/kubernetes/1.6.3.txt index 3d39c19..18bc6da 100644 --- a/nix/kubernetes/1.6.3.txt +++ b/nix/kubernetes/1.6.3.txt @@ -1 +1 @@ -1waxkr4ycrd23w8pi83gyf6jmawi1nhfzixp70fcwwka5h7p2y91 +08yzbcigmy35qi7xbpcm3sxbfw2bhvna2m6rqqnzfh64bl13c219 diff --git a/nix/kubernetes/1.6.txt b/nix/kubernetes/1.6.txt index 05c70ff..572df10 100644 --- a/nix/kubernetes/1.6.txt +++ b/nix/kubernetes/1.6.txt @@ -1 +1 @@ -0qgcxa9ra20zk7yldg5dhqmdxngm6va5x664rasda22sb4sc7x3y +0szzcn0w8gsar2v0fm360abfbpjhakdnqhdxjpvddfwcbyz5f3c7 diff --git a/nix/kubernetes/1.7.txt b/nix/kubernetes/1.7.txt index 9ed60e2..14346ea 100644 --- a/nix/kubernetes/1.7.txt +++ b/nix/kubernetes/1.7.txt @@ -1 +1 @@ -0vrxjb6rkrmxby108h2d4vw4mxwg8q9yqx7ic0khc86adpa2x7wy +1icgc4b4jhf2zxvjczmmycn4kbg3k878jvpxzbw5kxbcql431754 diff --git a/nix/kubernetes/1.8.txt b/nix/kubernetes/1.8.txt index 1626f94..6bcdad2 100644 --- a/nix/kubernetes/1.8.txt +++ b/nix/kubernetes/1.8.txt @@ -1 +1 @@ -1jicbyy1lpah1wvqpgn0gy5m65xbm75psd951x8alfpannlk6plw +02rdcly2vymakc94ivpy7wmmhwmm1j2wb7zk5jd5mynk5jighmij diff --git a/nix/kubernetes/1.9.txt b/nix/kubernetes/1.9.txt index 259b871..f974ddb 100644 --- a/nix/kubernetes/1.9.txt +++ b/nix/kubernetes/1.9.txt @@ -1 +1 @@ -1ij0v3b8brkir9z45i7599zznrggds0w836p3rhp5n8rk5n1k0dj +1k01ww4qc8rsfk919gpyygmhmd31rjkzj20ng4mp5caii8fm821b diff --git a/nix/make-dhall-kubernetes.nix b/nix/make-dhall-kubernetes.nix new file mode 100644 index 0000000..4e707a5 --- /dev/null +++ b/nix/make-dhall-kubernetes.nix @@ -0,0 +1,84 @@ +{ coreutils +, dhall +, dhall-json +, dhallPackages +, glibcLocales +, haskellPackages +, lib +, python3 +, stdenv +}: + +spec: + +let + # Ignore generated files + ignoreOutputs = + name: type: + !(lib.elem name + (map toString + [ ../README.md + ../types + ../defaults + ../schemas + ../defaults.dhall + ../types.dhall + ../typesUnion.dhall + ../schemas.dhall + ] + ) + ); + +in + stdenv.mkDerivation { + name = "dhall-kubernetes"; + + DHALL_PRELUDE = "${dhallPackages.prelude}/package.dhall"; + + XDG_CACHE_HOME = "."; + + buildInputs = + [ dhall + dhall-json + python3 + glibcLocales + ]; + + buildPhase = '' + patchShebangs ./scripts/build-readme.sh + + ./scripts/build-readme.sh + + ${coreutils}/bin/mkdir -p types defaults + + ${haskellPackages.dhall-kubernetes-generator}/bin/dhall-kubernetes-generator '${spec}' + + for file in ./types.dhall ./typesUnion.dhall ./defaults.dhall ./schemas.dhall ./package.dhall ./examples/*.dhall; do + echo "Freezing file '$file'" + + ${dhall}/bin/dhall freeze --all --inplace "$file" + done + ''; + + checkPhase = '' + patchShebangs ./scripts/build-examples.py + + patchShebangs ./scripts/check-source.py + + LC_ALL=en_US.UTF-8 ./scripts/check-source.py + + mkdir -p tmp + + LC_ALL=en_US.UTF-8 ./scripts/build-examples.py tmp + ''; + + installPhase = '' + ${coreutils}/bin/mkdir --parents "$out" + + cp -r types defaults schemas examples types.dhall defaults.dhall typesUnion.dhall schemas.dhall package.dhall README.md "$out" + ''; + + src = + lib.cleanSourceWith + { filter = ignoreOutputs; src = lib.cleanSource ./..; }; +} diff --git a/nix/nixpkgs.nix b/nix/nixpkgs.nix index 8959b4a..966e819 100644 --- a/nix/nixpkgs.nix +++ b/nix/nixpkgs.nix @@ -8,19 +8,9 @@ let config = { packageOverrides = pkgs: rec { - make-dhall-kubernetes = pkgs.callPackage ./dhall-kubernetes.nix {}; + make-dhall-kubernetes = pkgs.callPackage ./make-dhall-kubernetes.nix {}; - dhall-kubernetes = - let - latestKubernetesRelease = - builtins.replaceStrings [ "\n" ] [ "" ] - (builtins.readFile ./preferred.txt); - - in - make-dhall-kubernetes latestKubernetesRelease; - - kubernetes-openapi-spec = - pkgs.callPackage ./kubernetes-openapi-spec.nix {}; + dhall-kubernetes = pkgs.callPackage ./dhall-kubernetes.nix {}; haskellPackages = pkgs.haskellPackages.override (old: { overrides = diff --git a/package.dhall b/package.dhall index 43485fc..be64dbc 100644 --- a/package.dhall +++ b/package.dhall @@ -1,7 +1,7 @@ - ./schemas.dhall sha256:bd5cfc1abae136959fc13c483d6ebe7ffef906dc23cdd5153cc57da9f6aa6fce + ./schemas.dhall sha256:f6943c82da5de5d5734d519795a9a0a07fbb88b848e7cbb66fd3b9244b8eee1e ∧ { IntOrString = - ( ./types.dhall sha256:59cfe76addc3e3be9c80a82f47e08aaee3b4ce8df11f57bf1800917ce709babe + ( ./types.dhall sha256:e62539f41a3b4bf302318f95da6fdea5d28aae856405f7e280627040887a4039 ).IntOrString , Resource = - ./typesUnion.dhall sha256:c861da8dcaa0d1b0f542fa8bb97536a746d3cc4d3d2e1284012be0596bc08c15 + ./typesUnion.dhall sha256:ba8ebd9c402a007aea9db8c5faf0f5f4f9d9f8d8acc415485f55302462c2f555 } diff --git a/release.nix b/release.nix index cde36c1..8640898 100644 --- a/release.nix +++ b/release.nix @@ -2,17 +2,24 @@ , src ? { rev = ""; } , ... }: -rec { - inherit (pkgs) dhall-kubernetes; - inherit (pkgs.haskellPackages) dhall-kubernetes-generator; - # Derivation that trivially depends on the input source code revision. - # As this is included in the "dhall-lang" aggregate, it forces every - # commit to have a corresponding GitHub status check, even if the - # commit doesn't make any changes (which can happen when merging - # master in). - rev = pkgs.runCommand "rev" {} ''echo "${src.rev}" > $out''; + +let + products = { + inherit (pkgs.haskellPackages) dhall-kubernetes-generator; + + # Derivation that trivially depends on the input source code revision. + # As this is included in the "dhall-lang" aggregate, it forces every + # commit to have a corresponding GitHub status check, even if the + # commit doesn't make any changes (which can happen when merging + # master in). + rev = pkgs.runCommand "rev" {} ''echo "${src.rev}" > $out''; + } // builtins.removeAttrs pkgs.dhall-kubernetes + [ "override" "overrideDerivation" ]; + aggregate = pkgs.releaseTools.aggregate { - name = "dhall-kubernetes-agggregate"; - constituents = [ dhall-kubernetes dhall-kubernetes-generator rev ]; + name = "dhall-kubernetes-aggregate"; + constituents = pkgs.lib.mapAttrsToList (_: v: v) products; }; -} + +in + products // { inherit aggregate; } diff --git a/schemas.dhall b/schemas.dhall index 7d1984e..e2c5f3d 100644 --- a/schemas.dhall +++ b/schemas.dhall @@ -735,31 +735,31 @@ , CustomResourceConversion = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion.dhall sha256:84389e86c876d527da8d0a915cd4036f6666ae94486cc2fb58173ce06b23333f , CustomResourceDefinition = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:8a1979bbfef150e1e1504d19f844c4b839e1216243e97879d66d507d1060704c + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:a84ce984f7f33f0c9d8967b854f55c05e42cb7854491377a5103fcfc027140b8 , CustomResourceDefinitionCondition = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition.dhall sha256:47ec59edf7c6f9429301ee78bfdfc84bbfdbf494fe3b461db05ae03de8c6817d , CustomResourceDefinitionList = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:3e833717414b5d3a47dfd5b89d79cf7509e0fcafb3e249796322f8be2f601a75 + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:991bc92cd163f2c2d86bad3fdf92f2dd167da5ea276b37eb71e264a73c016e57 , CustomResourceDefinitionNames = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames.dhall sha256:e1397c76ee13f2ef8d1c3a4a39d42a3541e26751940d9a92b2dac3443f4b2ef3 , CustomResourceDefinitionSpec = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:477749de30bad77861bbffe5271ccc4abd239926a91430b10fe131843b2c5de8 + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:2a3a7c3f6df1b8d519c8158601b2c9b9ef0b9707ddbff69aa89a8c4b18199bc7 , CustomResourceDefinitionStatus = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus.dhall sha256:4df5a2b66e0f4c0ea728989c7873b634c912b9598296da2c7272a0425b5f351e , CustomResourceDefinitionVersion = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:f835db9d839f378ac790bc1f9153a6dc8fb6a2143d4ba7fb08bb663a3592f223 + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:5b85808062cc90aed738f2230313b9b4a96a2ca7a5fea5a22dd998bb31957ed2 , CustomResourceSubresourceScale = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale.dhall sha256:f88ea71fc0f62e1bdbf5dfa141837e4be12f302248528b61d20c0adf0b5cff63 , CustomResourceSubresources = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources.dhall sha256:1d0db47454d301f02169fb4d472b3bd1f9331750a00d7d108f67074367ebb483 , CustomResourceValidation = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:17b2ff74aa50cd9cb3f0771edf42bc76199da03bd84dc51ac712538f180ad2f8 + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:0400fd741482ff4882b6ed717dd950da84f9bcac78756222a7d7a1a965d7b6a2 , ExternalDocumentation = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall sha256:d028dfb12958fddb9658597805976d8e72509c0b058970e7f9be3519c91f37d0 , JSON = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall sha256:81a1bf11fb9dc588941bd83400ed571298585a700a53e858456806f7ea3b8ce2 , JSONSchemaProps = - ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:c362693ae3241b29db963ce04ea41e42c89a8b6f353fbf4a63dfc1f9bfa8d598 + ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:92ef0421a9c4cb27b778cfdee336120304cce4dd4920b9dbda844d269c662160 , JSONSchemaPropsOrArray = ./schemas/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall sha256:81a1bf11fb9dc588941bd83400ed571298585a700a53e858456806f7ea3b8ce2 , JSONSchemaPropsOrBool = diff --git a/scripts/add-kubernetes-release.sh b/scripts/add-kubernetes-release.sh index eb24c85..72e186e 100755 --- a/scripts/add-kubernetes-release.sh +++ b/scripts/add-kubernetes-release.sh @@ -4,4 +4,4 @@ set -eu VERSION="$1" -nix-prefetch-url --unpack "https://github.com/kubernetes/kubernetes/archive/release-${VERSION}.tar.gz" > "nix/kubernetes/${VERSION}.txt" +nix-prefetch-url "https://github.com/kubernetes/kubernetes/archive/release-${VERSION}.tar.gz" > "nix/kubernetes/${VERSION}.txt" diff --git a/scripts/generate.sh b/scripts/generate.sh index e3fb928..4a1200c 100755 --- a/scripts/generate.sh +++ b/scripts/generate.sh @@ -1,5 +1,5 @@ #!/bin/sh -if dir=$(nix-build release.nix --attr dhall-kubernetes --no-out-link); then +if dir=$(nix-build release.nix --attr "\"$(< ./nix/preferred.txt)\"" --no-out-link); then rm -rf ./defaults ./types cp -r "$dir"/defaults . chmod u+w ./defaults diff --git a/types.dhall b/types.dhall index 782810a..580c3b4 100644 --- a/types.dhall +++ b/types.dhall @@ -735,19 +735,19 @@ , CustomResourceConversion = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion.dhall sha256:52f61f62579efc9b87e5fed9951acc40fddbdd8eecca922f6cc551a5588b3712 , CustomResourceDefinition = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:3bc3280d014370cc259768bf853fb0257db91ab9072de8d87967983970d35758 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:cb1a053f9fc10c6f52a5f83c97e64a82352e2f3d7d2b2f73b6a3ec548801eb0e , CustomResourceDefinitionCondition = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition.dhall sha256:10de5e5aed3f6e1721f79bd8e2f9ffcecb92658fbe7442e6eaf74c6780b4779d , CustomResourceDefinitionList = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:ac73aa4ab0fb2e9968aeea4d1aa8255d0971c63873a103aadd3bfeef860e0cf1 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:adfbed123664ac31d68dda0880a503436d784565958671a4b3e0c27a711aceaa , CustomResourceDefinitionNames = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames.dhall sha256:0278161a6b3294f036a73cd3c4dc3d0b304f683ba9de276a119c634ff73e9fb1 , CustomResourceDefinitionSpec = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:64f5e17c0be23ef0cc9cebde90d887a4ed50ea724a866596fe5f205269682aa7 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:58465ddaeee8ef1d1ffc5105671dd69d5ab6001968627bdc6fce124fd8bc0535 , CustomResourceDefinitionStatus = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus.dhall sha256:9760548a849877dfd2a7411930d68a4974da897b83937d1e5c4c0e9bdf82d50f , CustomResourceDefinitionVersion = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:4397e19113e06dff2dff0aa43dd97d87fc9305611e0e46bde9d2dbc44267ccd0 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:0dff46037720814fafe44d019b8b16abf3195e2d7d6c27c89ba4a74f8b819d60 , CustomResourceSubresourceScale = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale.dhall sha256:6733049a96431ae2b72e7d6b17a24204a0ef148aef08725e02f8da00339525a6 , CustomResourceSubresourceStatus = @@ -755,13 +755,13 @@ , CustomResourceSubresources = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources.dhall sha256:0581868225988fcffb65edf1f9e9c9edd9bb509b8821ffd6941728d00f976640 , CustomResourceValidation = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:44ae4096d58f78fae63b89981954e142788fd7968be4738070b4fbdb8a7767dc + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:a7144e84a9a050ebd8768596da8c24b2f69dd30cc2374827025be2508b775136 , ExternalDocumentation = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall sha256:75a79c871f43a432b402f8a5d52f277bb827f5170ecfed101ed356a91ccbce91 , JSON = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall sha256:0912602a19e01dcff30f351958d2d9b69519c9be61b57b1b32a2a569bf8bf5f9 , JSONSchemaProps = - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:32b8c3a4615735cbf9f5d9fe3f99b47a28e9ce4c6d2e11bbeaf1a925c7bdf3b4 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:712211f2527ee07ca2a1f1dbbfdf7d1822d9844107aa170c37d67b4103d264cd , JSONSchemaPropsOrArray = ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall sha256:0912602a19e01dcff30f351958d2d9b69519c9be61b57b1b32a2a569bf8bf5f9 , JSONSchemaPropsOrBool = diff --git a/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall b/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall index 7ecb617..b4500e7 100644 --- a/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall +++ b/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall @@ -1,8 +1,4 @@ -{ additionalItems : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool.dhall -, additionalProperties : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrBool.dhall -, default : +{ default : ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall , definitions : List { mapKey : Text, mapValue : Text } , dependencies : List { mapKey : Text, mapValue : Text } @@ -12,8 +8,6 @@ ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall , externalDocs : ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall -, items : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall , patternProperties : List { mapKey : Text, mapValue : Text } , properties : List { mapKey : Text, mapValue : Text } , required : List Text diff --git a/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall b/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall index 91b2240..a5d74bf 100644 --- a/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall +++ b/types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaProps.dhall @@ -1,8 +1,4 @@ -{ additionalItems : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool.dhall -, additionalProperties : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrBool.dhall -, default : +{ default : ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON.dhall , definitions : List { mapKey : Text, mapValue : Text } , dependencies : List { mapKey : Text, mapValue : Text } @@ -13,8 +9,6 @@ ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSON.dhall , externalDocs : ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.ExternalDocumentation.dhall -, items : - ./io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1beta1.JSONSchemaPropsOrArray.dhall , patternProperties : List { mapKey : Text, mapValue : Text } , properties : List { mapKey : Text, mapValue : Text } , required : List Text diff --git a/typesUnion.dhall b/typesUnion.dhall index cc4e4bc..a20bbc5 100644 --- a/typesUnion.dhall +++ b/typesUnion.dhall @@ -735,19 +735,19 @@ | CustomResourceConversion : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceConversion.dhall sha256:52f61f62579efc9b87e5fed9951acc40fddbdd8eecca922f6cc551a5588b3712 | CustomResourceDefinition : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:3bc3280d014370cc259768bf853fb0257db91ab9072de8d87967983970d35758 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition.dhall sha256:cb1a053f9fc10c6f52a5f83c97e64a82352e2f3d7d2b2f73b6a3ec548801eb0e | CustomResourceDefinitionCondition : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionCondition.dhall sha256:10de5e5aed3f6e1721f79bd8e2f9ffcecb92658fbe7442e6eaf74c6780b4779d | CustomResourceDefinitionList : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:ac73aa4ab0fb2e9968aeea4d1aa8255d0971c63873a103aadd3bfeef860e0cf1 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionList.dhall sha256:adfbed123664ac31d68dda0880a503436d784565958671a4b3e0c27a711aceaa | CustomResourceDefinitionNames : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionNames.dhall sha256:0278161a6b3294f036a73cd3c4dc3d0b304f683ba9de276a119c634ff73e9fb1 | CustomResourceDefinitionSpec : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:64f5e17c0be23ef0cc9cebde90d887a4ed50ea724a866596fe5f205269682aa7 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionSpec.dhall sha256:58465ddaeee8ef1d1ffc5105671dd69d5ab6001968627bdc6fce124fd8bc0535 | CustomResourceDefinitionStatus : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionStatus.dhall sha256:9760548a849877dfd2a7411930d68a4974da897b83937d1e5c4c0e9bdf82d50f | CustomResourceDefinitionVersion : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:4397e19113e06dff2dff0aa43dd97d87fc9305611e0e46bde9d2dbc44267ccd0 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinitionVersion.dhall sha256:0dff46037720814fafe44d019b8b16abf3195e2d7d6c27c89ba4a74f8b819d60 | CustomResourceSubresourceScale : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresourceScale.dhall sha256:6733049a96431ae2b72e7d6b17a24204a0ef148aef08725e02f8da00339525a6 | CustomResourceSubresourceStatus : @@ -755,13 +755,13 @@ | CustomResourceSubresources : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceSubresources.dhall sha256:0581868225988fcffb65edf1f9e9c9edd9bb509b8821ffd6941728d00f976640 | CustomResourceValidation : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:44ae4096d58f78fae63b89981954e142788fd7968be4738070b4fbdb8a7767dc + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceValidation.dhall sha256:a7144e84a9a050ebd8768596da8c24b2f69dd30cc2374827025be2508b775136 | ExternalDocumentation : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.ExternalDocumentation.dhall sha256:75a79c871f43a432b402f8a5d52f277bb827f5170ecfed101ed356a91ccbce91 | JSON : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSON.dhall sha256:0912602a19e01dcff30f351958d2d9b69519c9be61b57b1b32a2a569bf8bf5f9 | JSONSchemaProps : - ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:32b8c3a4615735cbf9f5d9fe3f99b47a28e9ce4c6d2e11bbeaf1a925c7bdf3b4 + ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaProps.dhall sha256:712211f2527ee07ca2a1f1dbbfdf7d1822d9844107aa170c37d67b4103d264cd | JSONSchemaPropsOrArray : ./types/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.JSONSchemaPropsOrArray.dhall sha256:0912602a19e01dcff30f351958d2d9b69519c9be61b57b1b32a2a569bf8bf5f9 | JSONSchemaPropsOrBool :