mirror of
https://github.com/containers/podman.git
synced 2025-06-17 06:57:43 +08:00
Vendor in latest containers/buildah
This will take a significant size away from the podman-remote executables. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
This commit is contained in:
2
go.mod
2
go.mod
@ -10,7 +10,7 @@ require (
|
||||
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd // indirect
|
||||
github.com/containernetworking/cni v0.7.2-0.20200304161608-4fae32b84921
|
||||
github.com/containernetworking/plugins v0.8.6
|
||||
github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9
|
||||
github.com/containers/buildah v1.14.9-0.20200523094741-de0f541d9224
|
||||
github.com/containers/common v0.11.4
|
||||
github.com/containers/conmon v2.0.16+incompatible
|
||||
github.com/containers/image/v5 v5.4.4
|
||||
|
67
go.sum
67
go.sum
@ -8,7 +8,6 @@ github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX
|
||||
github.com/Azure/go-autorest v11.1.2+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24=
|
||||
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
|
||||
github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA=
|
||||
github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw=
|
||||
github.com/Microsoft/go-winio v0.4.15-0.20200113171025-3fe6c5262873 h1:93nQ7k53GjoMQ07HVP8g6Zj1fQZDDj7Xy2VkNNtvX8o=
|
||||
@ -20,9 +19,7 @@ github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg3
|
||||
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
|
||||
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
|
||||
github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
|
||||
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
|
||||
github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
|
||||
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
|
||||
github.com/VividCortex/ewma v1.1.1 h1:MnEK4VOv6n0RSY4vtRe3h11qjxL3+t0B8yOL8iMXdcM=
|
||||
github.com/VividCortex/ewma v1.1.1/go.mod h1:2Tkkvm3sRDVXaiyucHiACn4cqf7DpdyLvmxzcbUokwA=
|
||||
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d h1:licZJFw2RwpHMqeKTCYkitsPqHNxTmd4SNR5r94FGM8=
|
||||
@ -69,9 +66,9 @@ github.com/containernetworking/cni v0.7.2-0.20200304161608-4fae32b84921 h1:eUMd8
|
||||
github.com/containernetworking/cni v0.7.2-0.20200304161608-4fae32b84921/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY=
|
||||
github.com/containernetworking/plugins v0.8.6 h1:npZTLiMa4CRn6m5P9+1Dz4O1j0UeFbm8VYN6dlsw568=
|
||||
github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM=
|
||||
github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9 h1:EGegltin15wEzCI/5jeHcxBKfwwIHYkBUvsYC3XP060=
|
||||
github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9/go.mod h1:+2aNsVcd4pVzmVAbOfWN5X+0Lpz2rtICSGXbTSCzdBU=
|
||||
github.com/containers/common v0.10.0/go.mod h1:6A/moCuQITXLqBe5A0WKKTcCfCmEQRbknI05HcPzOL0=
|
||||
github.com/containers/buildah v1.14.9-0.20200523094741-de0f541d9224 h1:EqwBZRqyUYvU7JOmmSSPviSaAoUP1wN0cefXXDZ9ATo=
|
||||
github.com/containers/buildah v1.14.9-0.20200523094741-de0f541d9224/go.mod h1:5ZkWjOuK90yl55L5R+purJNLfUo0VUr8pstJazNtYck=
|
||||
github.com/containers/common v0.11.2/go.mod h1:2w3QE6VUmhltGYW4wV00h4okq1Crs7hNI1ZD2I0QRUY=
|
||||
github.com/containers/common v0.11.4 h1:M7lmjaVY+29g+YiaWH/UP4YeHjT/pZMxvRgmsWsQn74=
|
||||
github.com/containers/common v0.11.4/go.mod h1:AOxw4U5TJJrR/J1QPRvWbjHNdwU13wMy79rjK+7+aJE=
|
||||
github.com/containers/conmon v2.0.16+incompatible h1:QFOlb9Id4WoJ24BelCFWwDSPTquwKMp3L3g2iGmRTq4=
|
||||
@ -86,8 +83,8 @@ github.com/containers/ocicrypt v1.0.2/go.mod h1:nsOhbP19flrX6rE7ieGFvBlr7modwmNj
|
||||
github.com/containers/psgo v1.5.0 h1:uofUREsrm0Ls5K4tkEIFPqWSHKyg3Bvoqo/Q2eDmj8g=
|
||||
github.com/containers/psgo v1.5.0/go.mod h1:2ubh0SsreMZjSXW1Hif58JrEcFudQyIy9EzPUWfawVU=
|
||||
github.com/containers/storage v1.18.2/go.mod h1:WTBMf+a9ZZ/LbmEVeLHH2TX4CikWbO1Bt+/m58ZHVPg=
|
||||
github.com/containers/storage v1.19.0/go.mod h1:9Xc4rrTubn5hmtBfL+PSJH1XlfTQwR4VAG1NDUIpCts=
|
||||
github.com/containers/storage v1.19.1/go.mod h1:KbXjSwKnx17ejOsjFcCXSf78mCgZkQSLPBNTMRc3XrQ=
|
||||
github.com/containers/storage v1.19.2/go.mod h1:gYCp3jzgXkvubO0rI14QAjz5Mxm/qKJgLmHFyqayDnw=
|
||||
github.com/containers/storage v1.20.1 h1:2XE4eRIqSa6YjhAZjNwIkIKE6+Miy+5WV8l1KzY2ZKk=
|
||||
github.com/containers/storage v1.20.1/go.mod h1:RoKzO8KSDogCT6c06rEbanZTcKYxshorB33JikEGc3A=
|
||||
github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk=
|
||||
@ -111,7 +108,6 @@ github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1S
|
||||
github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s=
|
||||
github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8=
|
||||
github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I=
|
||||
github.com/davecgh/go-spew v0.0.0-20151105211317-5215b55f46b2/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
@ -142,7 +138,6 @@ github.com/elazarl/goproxy v0.0.0-20170405201442-c4fc26588b6e/go.mod h1:/Zj4wYkg
|
||||
github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153 h1:yUdfgN0XgIJw7foRItutHYUIhlcKzcSf5vDpdhQAKTc=
|
||||
github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc=
|
||||
github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
|
||||
github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
|
||||
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
|
||||
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
|
||||
github.com/etcd-io/bbolt v1.3.3/go.mod h1:ZF2nL25h33cCyBtcyWeZ2/I3HQOfTP+0PIEvHjkjCrw=
|
||||
@ -163,16 +158,9 @@ github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9
|
||||
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
|
||||
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
|
||||
github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0=
|
||||
github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg=
|
||||
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
|
||||
github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg=
|
||||
github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc=
|
||||
github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8=
|
||||
github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc=
|
||||
github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo=
|
||||
github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I=
|
||||
github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
|
||||
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
|
||||
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
|
||||
github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw=
|
||||
github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e h1:BWhy2j3IXJhjCbC68FptL43tDKIq8FladmaTs3Xs7Z8=
|
||||
@ -183,7 +171,6 @@ github.com/gofrs/flock v0.7.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14j
|
||||
github.com/gogo/protobuf v0.0.0-20171007142547-342cbe0a0415/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||
github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
|
||||
github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
|
||||
github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls=
|
||||
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
|
||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
|
||||
@ -209,7 +196,6 @@ github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw
|
||||
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
|
||||
github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4=
|
||||
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/gofuzz v0.0.0-20161122191042-44d81051d367/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
|
||||
github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g=
|
||||
@ -254,7 +240,6 @@ github.com/ishidawataru/sctp v0.0.0-20191218070446-00ab2ac2db07/go.mod h1:co9pwD
|
||||
github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA=
|
||||
github.com/jamescun/tuntap v0.0.0-20190712092105-cb1fb277045c/go.mod h1:zzwpsgcYhzzIP5WyF8g9ivCv38cY9uAV9Gu0m3lThhE=
|
||||
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
|
||||
github.com/json-iterator/go v0.0.0-20180612202835-f2b4162afba3/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v0.0.0-20180701071628-ab8a2e0c74be/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
|
||||
@ -266,7 +251,6 @@ github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvW
|
||||
github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/compress v1.10.4/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/compress v1.10.5 h1:7q6vHIqubShURwQz8cQK6yIe/xC3IF0Vm7TGfqjewrc=
|
||||
github.com/klauspost/compress v1.10.5/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/pgzip v1.2.3 h1:Ce2to9wvs/cuJ2b86/CKQoTYr9VHfpanYosZ0UBJqdw=
|
||||
@ -280,14 +264,10 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxv
|
||||
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
|
||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
||||
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
|
||||
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs=
|
||||
github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o=
|
||||
github.com/mattn/go-shellwords v1.0.10 h1:Y7Xqm8piKOO3v10Thp7Z36h4FYFjt5xB//6XvOrs2Gw=
|
||||
github.com/mattn/go-shellwords v1.0.10/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y=
|
||||
@ -302,7 +282,6 @@ github.com/moby/vpnkit v0.3.1-0.20200304131818-6bc1679a048d/go.mod h1:KyjUrL9cb6
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v0.0.0-20180320133207-05fbef0ca5da/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI=
|
||||
github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
@ -336,7 +315,7 @@ github.com/onsi/gomega v0.0.0-20190113212917-5533ce8a0da3/go.mod h1:ex+gbHU/CVuB
|
||||
github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
|
||||
github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||
github.com/onsi/gomega v1.10.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||
github.com/onsi/gomega v1.10.1 h1:o0+MgICZLuZ7xjH7Vx6zS/zcu93/BEp1VwkIW1mEXCE=
|
||||
github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
|
||||
github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
@ -364,8 +343,6 @@ github.com/opencontainers/selinux v1.3.0/go.mod h1:+BLncwf63G4dgOzykXAxcmnFlUaOl
|
||||
github.com/opencontainers/selinux v1.4.0/go.mod h1:yTcKuYAh6R95iDpefGLQaPaRwJFwyzAJufJyiTt7s0g=
|
||||
github.com/opencontainers/selinux v1.5.1 h1:jskKwSMFYqyTrHEuJgQoUlTcId0av64S6EWObrIfn5Y=
|
||||
github.com/opencontainers/selinux v1.5.1/go.mod h1:yTcKuYAh6R95iDpefGLQaPaRwJFwyzAJufJyiTt7s0g=
|
||||
github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316 h1:enQG2QUGwug4fR1yM6hL0Fjzx6Km/exZY6RbSPwMu3o=
|
||||
github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316/go.mod h1:dv+J0b/HWai0QnMVb37/H0v36klkLBi2TNpPeWDxX10=
|
||||
github.com/openshift/imagebuilder v1.1.4 h1:LUg8aTjyXMtlDx6IbtvaqofFGZ6aYqe+VIeATE735LM=
|
||||
github.com/openshift/imagebuilder v1.1.4/go.mod h1:9aJRczxCH0mvT6XQ+5STAQaPWz7OsWcU5/mRkt8IWeo=
|
||||
github.com/opentracing/opentracing-go v1.1.0 h1:pWlfV3Bxv7k65HYwkikxat0+s3pV4bsqf19k25Ur8rU=
|
||||
@ -380,7 +357,6 @@ github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV
|
||||
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pquerna/ffjson v0.0.0-20181028064349-e517b90714f7/go.mod h1:YARuvh7BUWHNhzDq2OM5tzR2RiCcN2D7sapiKyCel/M=
|
||||
@ -408,15 +384,12 @@ github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDa
|
||||
github.com/prometheus/procfs v0.0.5 h1:3+auTFlqw+ZaQYJARz6ArODtkaIwtvBTx3N2NehQlL8=
|
||||
github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ=
|
||||
github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20170806203942-52369c62f446/go.mod h1:uYEyJGbgTkfkS4+E/PavXkNJcbFIpEtjt2B0KDQ5+9M=
|
||||
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
|
||||
github.com/rootless-containers/rootlesskit v0.9.4 h1:6ogX7l3r3nlS7eTB8ePbLSQ6TZR1aVQzRjTy2SIBOzk=
|
||||
github.com/rootless-containers/rootlesskit v0.9.4/go.mod h1:fx5DhInDgnR0Upj+2cOVacKuZJYSNKV5P/bCwGa+quQ=
|
||||
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8 h1:2c1EFnZHIPCW8qKWgHMH/fX2PkSabFc5mrVzfUNdg5U=
|
||||
github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4=
|
||||
github.com/seccomp/containers-golang v0.0.0-20190312124753-8ca8945ccf5f h1:OtU/w6sBKmXYaw2KEODxjcYi3oPSyyslhgGFgIJVGAI=
|
||||
github.com/seccomp/containers-golang v0.0.0-20190312124753-8ca8945ccf5f/go.mod h1:f/98/SnvAzhAEFQJ3u836FePXvcbE8BS0YGMQNn4mhA=
|
||||
github.com/seccomp/containers-golang v0.4.1 h1:6hsmsP8Y9T6PWKJELqAkRWkc6Te60+zK64avkjInd44=
|
||||
github.com/seccomp/containers-golang v0.4.1/go.mod h1:5fP9lgyYyklJ8fg8Geq193G1QLe0ikf34z+hZKIjmnE=
|
||||
github.com/seccomp/libseccomp-golang v0.9.1 h1:NJjM5DNFOs0s3kYE1WUOr6G8V97sdt46rlXTMfXGWBo=
|
||||
@ -428,7 +401,6 @@ github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjM
|
||||
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
||||
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
|
||||
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
|
||||
github.com/sirupsen/logrus v1.5.0/go.mod h1:+F7Ogzej0PZc/94MaYx/nvG9jOFMD2osvC3s+Squfpo=
|
||||
github.com/sirupsen/logrus v1.6.0 h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I=
|
||||
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
|
||||
github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
|
||||
@ -448,8 +420,6 @@ github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An
|
||||
github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
|
||||
github.com/stretchr/testify v0.0.0-20151208002404-e3a8ff8ce365/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||
@ -509,7 +479,6 @@ golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnf
|
||||
golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||
golang.org/x/crypto v0.0.0-20181025213731-e84da0312774/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20200311171314-f7b00557c8c4/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
@ -517,13 +486,9 @@ golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPh
|
||||
golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5 h1:Q7tZBpemrlsc2I7IyODzhtallWRSm4Q0d09pL6XbQtU=
|
||||
golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190312203227-4b39c73a6495/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
|
||||
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
|
||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
|
||||
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE=
|
||||
golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
@ -539,9 +504,7 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
||||
golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
|
||||
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
||||
@ -573,7 +536,6 @@ golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||
golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190921190940-14da1ac737cc/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
@ -603,19 +565,12 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm
|
||||
golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
|
||||
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
|
||||
golang.org/x/tools v0.0.0-20190920225731-5eefd052ad72/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
gonum.org/v1/gonum v0.0.0-20190331200053-3d26580ed485/go.mod h1:2ltnJ7xHfj0zHS40VVPYEAAMTa3ZGguvHGBSJeRWqE0=
|
||||
gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw=
|
||||
gonum.org/v1/netlib v0.0.0-20190331212654-76723241ea4e/go.mod h1:kS+toOQn6AQKjmKJ7gzohV1XkqsFehRA2FbsbkopSuQ=
|
||||
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
||||
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
|
||||
google.golang.org/appengine v1.5.0 h1:KxkO13IPW4Lslp2bz+KHP2E3gtFlrIGNThxkZQ3g+4c=
|
||||
@ -670,35 +625,23 @@ gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81
|
||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
k8s.io/api v0.0.0-20190620084959-7cf5895f2711/go.mod h1:TBhBqb1AWbBQbW3XRusr7n7E4v2+5ZY8r8sAMnyFC5A=
|
||||
k8s.io/api v0.17.0/go.mod h1:npsyOePkeP0CPwyGfXDHxvypiYMJxBWAMpQxCaJ4ZxI=
|
||||
k8s.io/api v0.18.3 h1:2AJaUQdgUZLoDZHrun21PW2Nx9+ll6cUzvn3IKhSIn0=
|
||||
k8s.io/api v0.18.3/go.mod h1:UOaMwERbqJMfeeeHc8XJKawj4P9TgDRnViIqqBeH2QA=
|
||||
k8s.io/apimachinery v0.0.0-20190612205821-1799e75a0719/go.mod h1:I4A+glKBHiTgiEjQiCCQfCAIcIMFGt291SmsvcrFzJA=
|
||||
k8s.io/apimachinery v0.17.0/go.mod h1:b9qmWdKlLuU9EBh+06BtLcSf/Mu89rWL33naRxs1uZg=
|
||||
k8s.io/apimachinery v0.18.3 h1:pOGcbVAhxADgUYnjS08EFXs9QMl8qaH5U4fr5LGUrSk=
|
||||
k8s.io/apimachinery v0.18.3/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko=
|
||||
k8s.io/client-go v0.0.0-20190620085101-78d2af792bab h1:E8Fecph0qbNsAbijJJQryKu4Oi9QTp5cVpjTE+nqg6g=
|
||||
k8s.io/client-go v0.0.0-20190620085101-78d2af792bab/go.mod h1:E95RaSlHr79aHaX0aGSwcPNfygDiPKOVXdmivCIZT0k=
|
||||
k8s.io/code-generator v0.17.0/go.mod h1:DVmfPQgxQENqDIzVR2ddLXMH34qeszkKSdH/N+s+38s=
|
||||
k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
|
||||
k8s.io/gengo v0.0.0-20190822140433-26a664648505/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
|
||||
k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk=
|
||||
k8s.io/klog v0.3.1/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk=
|
||||
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
|
||||
k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
|
||||
k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30/go.mod h1:BXM9ceUBTj2QnfH2MK1odQs778ajze1RxcmP6S8RVVc=
|
||||
k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a/go.mod h1:1TqjTSzOxsLGIKfj0lK8EeCP7K1iUG65v09OM0/WG5E=
|
||||
k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E=
|
||||
k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk=
|
||||
k8s.io/utils v0.0.0-20190221042446-c2654d5206da h1:ElyM7RPonbKnQqOcw7dG2IK5uvQQn3b/WPHqD5mBvP4=
|
||||
k8s.io/utils v0.0.0-20190221042446-c2654d5206da/go.mod h1:8k8uAuAQ0rXslZKaEWd0c3oVhZz7sSzSiPnVZayjIX0=
|
||||
modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw=
|
||||
modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk=
|
||||
modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k=
|
||||
modernc.org/strutil v1.0.0/go.mod h1:lstksw84oURvj9y3tn8lGvRxyRC1S2+g5uuIzNfIOBs=
|
||||
modernc.org/xc v1.0.0/go.mod h1:mRNCo0bvLjGhHO9WsyuKVU4q0ceiDDDoEeWDJHrNx8I=
|
||||
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e h1:4Z09Hglb792X0kfOBBJUPFEyvVfQWrYT/l8h5EKA6JQ=
|
||||
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e/go.mod h1:wWxsB5ozmmv/SG7nM11ayaAW51xMvak/t1r0CSlcokI=
|
||||
sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
|
||||
sigs.k8s.io/structured-merge-diff/v3 v3.0.0 h1:dOmIZBMfhcHS09XZkMyUgkq5trg3/jRyJYFZUiaOp8E=
|
||||
sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw=
|
||||
|
23
vendor/github.com/containers/buildah/.cirrus.yml
generated
vendored
23
vendor/github.com/containers/buildah/.cirrus.yml
generated
vendored
@ -27,11 +27,13 @@ env:
|
||||
####
|
||||
# GCE project where images live
|
||||
IMAGE_PROJECT: "libpod-218412"
|
||||
# TODO: Setting up from base-images is very inefficient, use libpod's cache-images instead?
|
||||
FEDORA_CACHE_IMAGE_NAME: "fedora-cloud-base-30-1-2-1565360543"
|
||||
PRIOR_FEDORA_CACHE_IMAGE_NAME: "fedora-cloud-base-29-1-2-1565360543"
|
||||
UBUNTU_CACHE_IMAGE_NAME: "ubuntu-1904-disco-v20190724"
|
||||
PRIOR_UBUNTU_CACHE_IMAGE_NAME: "ubuntu-1804-bionic-v20190722a"
|
||||
# See https://github.com/containers/libpod/blob/master/contrib/cirrus/README.md#test_build_cache_images_task-task
|
||||
_BUILT_IMAGE_SUFFIX: "libpod-6224667180531712"
|
||||
FEDORA_CACHE_IMAGE_NAME: "fedora-32-${_BUILT_IMAGE_SUFFIX}"
|
||||
PRIOR_FEDORA_CACHE_IMAGE_NAME: "fedora-31-${_BUILT_IMAGE_SUFFIX}"
|
||||
UBUNTU_CACHE_IMAGE_NAME: "ubuntu-19-${_BUILT_IMAGE_SUFFIX}"
|
||||
PRIOR_UBUNTU_CACHE_IMAGE_NAME: "ubuntu-18-${_BUILT_IMAGE_SUFFIX}"
|
||||
|
||||
|
||||
####
|
||||
#### Command variables to help avoid duplication
|
||||
@ -153,9 +155,6 @@ gce_instance:
|
||||
- 'cirrus-ci/only_prs/gate'
|
||||
- 'cirrus-ci/only_prs/vendor'
|
||||
|
||||
container:
|
||||
image: registry.fedoraproject.org/fedora:30
|
||||
|
||||
env:
|
||||
matrix:
|
||||
CROSS_TARGET: darwin
|
||||
@ -179,10 +178,8 @@ gce_instance:
|
||||
gce_instance: # Only need to specify differences from defaults (above)
|
||||
matrix: # Duplicate this task for each matrix product.
|
||||
image_name: "${FEDORA_CACHE_IMAGE_NAME}"
|
||||
# TODO: Re-enable once prior image is F30 and above is F31
|
||||
# image_name: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
|
||||
# TODO: Re-enable when package repositories functional
|
||||
#image_name: "${UBUNTU_CACHE_IMAGE_NAME}"
|
||||
image_name: "${PRIOR_FEDORA_CACHE_IMAGE_NAME}"
|
||||
image_name: "${UBUNTU_CACHE_IMAGE_NAME}"
|
||||
image_name: "${PRIOR_UBUNTU_CACHE_IMAGE_NAME}"
|
||||
|
||||
# Separate scripts for separate outputs, makes debugging easier.
|
||||
@ -248,7 +245,7 @@ gce_instance:
|
||||
CIRRUS_CLONE_DEPTH: 1 # no code is being used by this task
|
||||
|
||||
container:
|
||||
image: "registry.fedoraproject.org/fedora-minimal:latest"
|
||||
image: "quay.io/libpod/fedora-minimal:latest"
|
||||
cpu: 1
|
||||
memory: 1
|
||||
|
||||
|
7
vendor/github.com/containers/buildah/.golangci.yml
generated
vendored
7
vendor/github.com/containers/buildah/.golangci.yml
generated
vendored
@ -4,8 +4,8 @@ run:
|
||||
- apparmor
|
||||
- seccomp
|
||||
- selinux
|
||||
concurrency: 6
|
||||
deadline: 5m
|
||||
# Don't exceed number of threads available when running under CI
|
||||
concurrency: 4
|
||||
linters:
|
||||
disable-all: true
|
||||
enable:
|
||||
@ -17,7 +17,8 @@ linters:
|
||||
- gofmt
|
||||
- goimports
|
||||
- golint
|
||||
- gosimple
|
||||
# Broken? Unpredictably dies w/o any error well before deadline/timeout expires
|
||||
# - gosimple
|
||||
- govet
|
||||
- ineffassign
|
||||
- interfacer
|
||||
|
3
vendor/github.com/containers/buildah/SECURITY.md
generated
vendored
Normal file
3
vendor/github.com/containers/buildah/SECURITY.md
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
## Security and Disclosure Information Policy for the Buildah Project
|
||||
|
||||
The Buildah Project follows the [Security and Disclosure Information Policy](https://github.com/containers/common/blob/master/SECURITY.md) for the Containers Projects.
|
4
vendor/github.com/containers/buildah/buildah.go
generated
vendored
4
vendor/github.com/containers/buildah/buildah.go
generated
vendored
@ -13,6 +13,7 @@ import (
|
||||
|
||||
"github.com/containers/buildah/docker"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
"github.com/containers/storage/pkg/ioutils"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
@ -413,6 +414,9 @@ type BuilderOptions struct {
|
||||
MaxPullRetries int
|
||||
// PullRetryDelay is how long to wait before retrying a pull attempt.
|
||||
PullRetryDelay time.Duration
|
||||
// OciDecryptConfig contains the config that can be used to decrypt an image if it is
|
||||
// encrypted if non-nil. If nil, it does not attempt to decrypt an image.
|
||||
OciDecryptConfig *encconfig.DecryptConfig
|
||||
}
|
||||
|
||||
// ImportOptions are used to initialize a Builder from an existing container
|
||||
|
35
vendor/github.com/containers/buildah/commit.go
generated
vendored
35
vendor/github.com/containers/buildah/commit.go
generated
vendored
@ -19,11 +19,11 @@ import (
|
||||
is "github.com/containers/image/v5/storage"
|
||||
"github.com/containers/image/v5/transports"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
"github.com/containers/storage/pkg/archive"
|
||||
"github.com/containers/storage/pkg/stringid"
|
||||
digest "github.com/opencontainers/go-digest"
|
||||
configv1 "github.com/openshift/api/config/v1"
|
||||
"github.com/pkg/errors"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
@ -88,6 +88,15 @@ type CommitOptions struct {
|
||||
// RetryDelay is how long to wait before retrying a commit attempt to a
|
||||
// registry.
|
||||
RetryDelay time.Duration
|
||||
// OciEncryptConfig when non-nil indicates that an image should be encrypted.
|
||||
// The encryption options is derived from the construction of EncryptConfig object.
|
||||
OciEncryptConfig *encconfig.EncryptConfig
|
||||
// OciEncryptLayers represents the list of layers to encrypt.
|
||||
// If nil, don't encrypt any layers.
|
||||
// If non-nil and len==0, denotes encrypt all layers.
|
||||
// integers in the slice represent 0-indexed layer indices, with support for negative
|
||||
// indexing. i.e. 0 is the first layer, -1 is the last (top-most) layer.
|
||||
OciEncryptLayers *[]int
|
||||
}
|
||||
|
||||
// PushOptions can be used to alter how an image is copied somewhere.
|
||||
@ -132,6 +141,15 @@ type PushOptions struct {
|
||||
MaxRetries int
|
||||
// RetryDelay is how long to wait before retrying a push attempt.
|
||||
RetryDelay time.Duration
|
||||
// OciEncryptConfig when non-nil indicates that an image should be encrypted.
|
||||
// The encryption options is derived from the construction of EncryptConfig object.
|
||||
OciEncryptConfig *encconfig.EncryptConfig
|
||||
// OciEncryptLayers represents the list of layers to encrypt.
|
||||
// If nil, don't encrypt any layers.
|
||||
// If non-nil and len==0, denotes encrypt all layers.
|
||||
// integers in the slice represent 0-indexed layer indices, with support for negative
|
||||
// indexing. i.e. 0 is the first layer, -1 is the last (top-most) layer.
|
||||
OciEncryptLayers *[]int
|
||||
}
|
||||
|
||||
var (
|
||||
@ -162,7 +180,12 @@ func checkRegistrySourcesAllows(forWhat string, dest types.ImageReference) error
|
||||
}
|
||||
|
||||
if registrySources, ok := os.LookupEnv("BUILD_REGISTRY_SOURCES"); ok && len(registrySources) > 0 {
|
||||
var sources configv1.RegistrySources
|
||||
// Use local struct instead of github.com/openshift/api/config/v1 RegistrySources
|
||||
var sources struct {
|
||||
InsecureRegistries []string `json:"insecureRegistries,omitempty"`
|
||||
BlockedRegistries []string `json:"blockedRegistries,omitempty"`
|
||||
AllowedRegistries []string `json:"allowedRegistries,omitempty"`
|
||||
}
|
||||
if err := json.Unmarshal([]byte(registrySources), &sources); err != nil {
|
||||
return errors.Wrapf(err, "error parsing $BUILD_REGISTRY_SOURCES (%q) as JSON", registrySources)
|
||||
}
|
||||
@ -270,7 +293,9 @@ func (b *Builder) Commit(ctx context.Context, dest types.ImageReference, options
|
||||
// Check if the base image is already in the destination and it's some kind of local
|
||||
// storage. If so, we can skip recompressing any layers that come from the base image.
|
||||
exportBaseLayers := true
|
||||
if transport, destIsStorage := dest.Transport().(is.StoreTransport); destIsStorage && b.FromImageID != "" {
|
||||
if transport, destIsStorage := dest.Transport().(is.StoreTransport); destIsStorage && options.OciEncryptConfig != nil {
|
||||
return imgID, nil, "", errors.New("unable to use local storage with image encryption")
|
||||
} else if destIsStorage && b.FromImageID != "" {
|
||||
if baseref, err := transport.ParseReference(b.FromImageID); baseref != nil && err == nil {
|
||||
if img, err := transport.GetImage(baseref); img != nil && err == nil {
|
||||
logrus.Debugf("base image %q is already present in local storage, no need to copy its layers", b.FromImageID)
|
||||
@ -319,7 +344,7 @@ func (b *Builder) Commit(ctx context.Context, dest types.ImageReference, options
|
||||
}
|
||||
|
||||
var manifestBytes []byte
|
||||
if manifestBytes, err = retryCopyImage(ctx, policyContext, maybeCachedDest, maybeCachedSrc, dest, "push", getCopyOptions(b.store, options.ReportWriter, nil, systemContext, "", false, options.SignBy), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
if manifestBytes, err = retryCopyImage(ctx, policyContext, maybeCachedDest, maybeCachedSrc, dest, "push", getCopyOptions(b.store, options.ReportWriter, nil, systemContext, "", false, options.SignBy, options.OciEncryptLayers, options.OciEncryptConfig, nil), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
return imgID, nil, "", errors.Wrapf(err, "error copying layers and metadata for container %q", b.ContainerID)
|
||||
}
|
||||
// If we've got more names to attach, and we know how to do that for
|
||||
@ -451,7 +476,7 @@ func Push(ctx context.Context, image string, dest types.ImageReference, options
|
||||
systemContext.DirForceCompress = true
|
||||
}
|
||||
var manifestBytes []byte
|
||||
if manifestBytes, err = retryCopyImage(ctx, policyContext, dest, maybeCachedSrc, dest, "push", getCopyOptions(options.Store, options.ReportWriter, nil, systemContext, options.ManifestType, options.RemoveSignatures, options.SignBy), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
if manifestBytes, err = retryCopyImage(ctx, policyContext, dest, maybeCachedSrc, dest, "push", getCopyOptions(options.Store, options.ReportWriter, nil, systemContext, options.ManifestType, options.RemoveSignatures, options.SignBy, options.OciEncryptLayers, options.OciEncryptConfig, nil), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
return nil, "", errors.Wrapf(err, "error copying layers and metadata from %q to %q", transports.ImageName(maybeCachedSrc), transports.ImageName(dest))
|
||||
}
|
||||
if options.ReportWriter != nil {
|
||||
|
6
vendor/github.com/containers/buildah/common.go
generated
vendored
6
vendor/github.com/containers/buildah/common.go
generated
vendored
@ -14,6 +14,7 @@ import (
|
||||
"github.com/containers/image/v5/docker"
|
||||
"github.com/containers/image/v5/signature"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
"github.com/containers/storage/pkg/unshare"
|
||||
"github.com/docker/distribution/registry/api/errcode"
|
||||
@ -30,7 +31,7 @@ const (
|
||||
DOCKER = "docker"
|
||||
)
|
||||
|
||||
func getCopyOptions(store storage.Store, reportWriter io.Writer, sourceSystemContext *types.SystemContext, destinationSystemContext *types.SystemContext, manifestType string, removeSignatures bool, addSigner string) *cp.Options {
|
||||
func getCopyOptions(store storage.Store, reportWriter io.Writer, sourceSystemContext *types.SystemContext, destinationSystemContext *types.SystemContext, manifestType string, removeSignatures bool, addSigner string, ociEncryptLayers *[]int, ociEncryptConfig *encconfig.EncryptConfig, ociDecryptConfig *encconfig.DecryptConfig) *cp.Options {
|
||||
sourceCtx := getSystemContext(store, nil, "")
|
||||
if sourceSystemContext != nil {
|
||||
*sourceCtx = *sourceSystemContext
|
||||
@ -47,6 +48,9 @@ func getCopyOptions(store storage.Store, reportWriter io.Writer, sourceSystemCon
|
||||
ForceManifestMIMEType: manifestType,
|
||||
RemoveSignatures: removeSignatures,
|
||||
SignBy: addSigner,
|
||||
OciEncryptConfig: ociEncryptConfig,
|
||||
OciDecryptConfig: ociDecryptConfig,
|
||||
OciEncryptLayers: ociEncryptLayers,
|
||||
}
|
||||
}
|
||||
|
||||
|
24
vendor/github.com/containers/buildah/go.mod
generated
vendored
24
vendor/github.com/containers/buildah/go.mod
generated
vendored
@ -4,9 +4,10 @@ go 1.12
|
||||
|
||||
require (
|
||||
github.com/containernetworking/cni v0.7.2-0.20190904153231-83439463f784
|
||||
github.com/containers/common v0.10.0
|
||||
github.com/containers/image/v5 v5.4.3
|
||||
github.com/containers/storage v1.19.0
|
||||
github.com/containers/common v0.11.2
|
||||
github.com/containers/image/v5 v5.4.4
|
||||
github.com/containers/ocicrypt v1.0.2
|
||||
github.com/containers/storage v1.19.2
|
||||
github.com/cyphar/filepath-securejoin v0.2.2
|
||||
github.com/docker/distribution v2.7.1+incompatible
|
||||
github.com/docker/go-units v0.4.0
|
||||
@ -17,27 +18,26 @@ require (
|
||||
github.com/hashicorp/go-multierror v1.0.0
|
||||
github.com/ishidawataru/sctp v0.0.0-20191218070446-00ab2ac2db07 // indirect
|
||||
github.com/mattn/go-shellwords v1.0.10
|
||||
github.com/onsi/ginkgo v1.12.0
|
||||
github.com/onsi/gomega v1.9.0
|
||||
github.com/opencontainers/go-digest v1.0.0-rc1
|
||||
github.com/onsi/ginkgo v1.12.1
|
||||
github.com/onsi/gomega v1.10.0
|
||||
github.com/opencontainers/go-digest v1.0.0
|
||||
github.com/opencontainers/image-spec v1.0.2-0.20190823105129-775207bd45b6
|
||||
github.com/opencontainers/runc v1.0.0-rc9
|
||||
github.com/opencontainers/runtime-spec v0.1.2-0.20190618234442-a950415649c7
|
||||
github.com/opencontainers/runtime-spec v1.0.3-0.20200520003142-237cc4f519e2
|
||||
github.com/opencontainers/runtime-tools v0.9.0
|
||||
github.com/opencontainers/selinux v1.5.1
|
||||
github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316
|
||||
github.com/openshift/imagebuilder v1.1.4
|
||||
github.com/pkg/errors v0.9.1
|
||||
github.com/seccomp/containers-golang v0.0.0-20190312124753-8ca8945ccf5f
|
||||
github.com/seccomp/containers-golang v0.4.1
|
||||
github.com/seccomp/libseccomp-golang v0.9.1
|
||||
github.com/sirupsen/logrus v1.5.0
|
||||
github.com/sirupsen/logrus v1.6.0
|
||||
github.com/spf13/cobra v0.0.7
|
||||
github.com/spf13/pflag v1.0.5
|
||||
github.com/stretchr/testify v1.5.1
|
||||
github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2
|
||||
github.com/vishvananda/netlink v1.1.0 // indirect
|
||||
golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59
|
||||
golang.org/x/sys v0.0.0-20200327173247-9dae0f8f5775
|
||||
golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5
|
||||
golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f
|
||||
)
|
||||
|
||||
replace github.com/sirupsen/logrus => github.com/sirupsen/logrus v1.4.2
|
||||
|
150
vendor/github.com/containers/buildah/go.sum
generated
vendored
150
vendor/github.com/containers/buildah/go.sum
generated
vendored
@ -6,18 +6,14 @@ github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 h1:w+iIsaOQNcT7O
|
||||
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8=
|
||||
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
|
||||
github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw=
|
||||
github.com/Microsoft/go-winio v0.4.15-0.20200113171025-3fe6c5262873 h1:93nQ7k53GjoMQ07HVP8g6Zj1fQZDDj7Xy2VkNNtvX8o=
|
||||
github.com/Microsoft/go-winio v0.4.15-0.20200113171025-3fe6c5262873/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw=
|
||||
github.com/Microsoft/hcsshim v0.8.7 h1:ptnOoufxGSzauVTsdE+wMYnCWA301PdoN4xg5oRdZpg=
|
||||
github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ=
|
||||
github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ=
|
||||
github.com/Microsoft/hcsshim v0.8.9 h1:VrfodqvztU8YSOvygU+DN1BGaSGxmrNfqOv5oOuX2Bk=
|
||||
github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8=
|
||||
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
|
||||
github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
|
||||
github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0=
|
||||
github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
|
||||
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE=
|
||||
github.com/VividCortex/ewma v1.1.1 h1:MnEK4VOv6n0RSY4vtRe3h11qjxL3+t0B8yOL8iMXdcM=
|
||||
github.com/VividCortex/ewma v1.1.1/go.mod h1:2Tkkvm3sRDVXaiyucHiACn4cqf7DpdyLvmxzcbUokwA=
|
||||
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d h1:licZJFw2RwpHMqeKTCYkitsPqHNxTmd4SNR5r94FGM8=
|
||||
@ -31,6 +27,8 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||
github.com/blang/semver v3.1.0+incompatible h1:7hqmJYuaEK3qwVjWubYiht3j93YI0WQBuysxHIfUriU=
|
||||
github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk=
|
||||
github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ=
|
||||
github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk=
|
||||
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
|
||||
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
|
||||
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
|
||||
@ -41,6 +39,8 @@ github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtM
|
||||
github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
|
||||
github.com/containerd/containerd v1.3.0 h1:xjvXQWABwS2uiv3TWgQt5Uth60Gu86LTGZXMJkjc7rY=
|
||||
github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
|
||||
github.com/containerd/containerd v1.3.2 h1:ForxmXkA6tPIvffbrDAcPUIB32QgXkt2XFj+F0UxetA=
|
||||
github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA=
|
||||
github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
|
||||
github.com/containerd/continuity v0.0.0-20200228182428-0f16d7a0959c h1:8ahmSVELW1wghbjerVAyuEYD5+Dio66RYvSS0iGfL1M=
|
||||
github.com/containerd/continuity v0.0.0-20200228182428-0f16d7a0959c/go.mod h1:Dq467ZllaHgAtVp4p1xUQWBrFXR9s/wyoTpG8zOJGkY=
|
||||
@ -50,17 +50,20 @@ github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDG
|
||||
github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc=
|
||||
github.com/containernetworking/cni v0.7.2-0.20190904153231-83439463f784 h1:rqUVLD8I859xRgUx/WMC3v7QAFqbLKZbs+0kqYboRJc=
|
||||
github.com/containernetworking/cni v0.7.2-0.20190904153231-83439463f784/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY=
|
||||
github.com/containers/common v0.10.0 h1:Km1foMJJBIxceA1/UCZcIuwf8sCF71sP5DwE6Oh1BEA=
|
||||
github.com/containers/common v0.10.0/go.mod h1:6A/moCuQITXLqBe5A0WKKTcCfCmEQRbknI05HcPzOL0=
|
||||
github.com/containers/image/v5 v5.4.3 h1:zn2HR7uu4hpvT5QQHgjqonOzKDuM1I1UHUEmzZT5sbs=
|
||||
github.com/containers/common v0.11.2 h1:e4477fCE3qSA+Z2vT+uUMUTn8s8CyIM++qNm3PCSl68=
|
||||
github.com/containers/common v0.11.2/go.mod h1:2w3QE6VUmhltGYW4wV00h4okq1Crs7hNI1ZD2I0QRUY=
|
||||
github.com/containers/image/v5 v5.4.3/go.mod h1:pN0tvp3YbDd7BWavK2aE0mvJUqVd2HmhPjekyWSFm0U=
|
||||
github.com/containers/image/v5 v5.4.4 h1:JSanNn3v/BMd3o0MEvO4R4OKNuoJUSzVGQAI1+0FMXE=
|
||||
github.com/containers/image/v5 v5.4.4/go.mod h1:g7cxNXitiLi6pEr9/L9n/0wfazRuhDKXU15kV86N8h8=
|
||||
github.com/containers/libtrust v0.0.0-20190913040956-14b96171aa3b h1:Q8ePgVfHDplZ7U33NwHZkrVELsZP5fYj9pM5WBZB2GE=
|
||||
github.com/containers/libtrust v0.0.0-20190913040956-14b96171aa3b/go.mod h1:9rfv8iPl1ZP7aqh9YA68wnZv2NUDbXdcdPHVz0pFbPY=
|
||||
github.com/containers/ocicrypt v1.0.2 h1:Q0/IPs8ohfbXNxEfyJ2pFVmvJu5BhqJUAmc6ES9NKbo=
|
||||
github.com/containers/ocicrypt v1.0.2/go.mod h1:nsOhbP19flrX6rE7ieGFvBlr7modwmNjsqWarIUce4M=
|
||||
github.com/containers/storage v1.18.2/go.mod h1:WTBMf+a9ZZ/LbmEVeLHH2TX4CikWbO1Bt+/m58ZHVPg=
|
||||
github.com/containers/storage v1.19.0 h1:bVIF5EglbT5PQnqcN7sE6VWqoQzlToqzjXdz+eNubQg=
|
||||
github.com/containers/storage v1.19.0/go.mod h1:9Xc4rrTubn5hmtBfL+PSJH1XlfTQwR4VAG1NDUIpCts=
|
||||
github.com/containers/storage v1.19.1 h1:YKIzOO12iaD5Ra0PKFS6emcygbHLmwmQOCQRU/19YAQ=
|
||||
github.com/containers/storage v1.19.1/go.mod h1:KbXjSwKnx17ejOsjFcCXSf78mCgZkQSLPBNTMRc3XrQ=
|
||||
github.com/containers/storage v1.19.2 h1:vhcUwEjDZiPJxaLPFsjvyavnEjFw6qQi9HAkVz1amfI=
|
||||
github.com/containers/storage v1.19.2/go.mod h1:gYCp3jzgXkvubO0rI14QAjz5Mxm/qKJgLmHFyqayDnw=
|
||||
github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk=
|
||||
github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE=
|
||||
github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
|
||||
@ -69,7 +72,6 @@ github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfc
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
|
||||
github.com/cyphar/filepath-securejoin v0.2.2 h1:jCwT2GTP+PY5nBz3c/YL5PAIbusElVrPujOBSCj8xRg=
|
||||
github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4=
|
||||
github.com/davecgh/go-spew v0.0.0-20151105211317-5215b55f46b2/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
@ -92,53 +94,32 @@ github.com/docker/libnetwork v0.8.0-dev.2.0.20190625141545-5a177b73e316 h1:moehP
|
||||
github.com/docker/libnetwork v0.8.0-dev.2.0.20190625141545-5a177b73e316/go.mod h1:93m0aTqz6z+g32wla4l4WxTrdtvBRmVzYRkYvasA5Z8=
|
||||
github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7 h1:UhxFibDNY/bfvqU5CAUmr9zpesgbU6SWc8/B4mflAE4=
|
||||
github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE=
|
||||
github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM=
|
||||
github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
|
||||
github.com/elazarl/goproxy v0.0.0-20170405201442-c4fc26588b6e/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc=
|
||||
github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
|
||||
github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs=
|
||||
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
|
||||
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
|
||||
github.com/etcd-io/bbolt v1.3.3 h1:gSJmxrs37LgTqR/oyJBWok6k6SvXEUerFTbltIhXkBM=
|
||||
github.com/etcd-io/bbolt v1.3.3/go.mod h1:ZF2nL25h33cCyBtcyWeZ2/I3HQOfTP+0PIEvHjkjCrw=
|
||||
github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk=
|
||||
github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
|
||||
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
github.com/fsouza/go-dockerclient v1.6.5 h1:vuFDnPcds3LvTWGYb9h0Rty14FLgkjHZdwLDROCdgsw=
|
||||
github.com/fsouza/go-dockerclient v1.6.5/go.mod h1:GOdftxWLWIbIWKbIMDroKFJzPdg6Iw7r+jX1DDZdVsA=
|
||||
github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa h1:RDBNVkRviHZtvDvId8XSGPu3rmpmSe+wKRcEWNgsfWU=
|
||||
github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA=
|
||||
github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
|
||||
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
|
||||
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
|
||||
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
|
||||
github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE=
|
||||
github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk=
|
||||
github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
|
||||
github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0=
|
||||
github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg=
|
||||
github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg=
|
||||
github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg=
|
||||
github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc=
|
||||
github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8=
|
||||
github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc=
|
||||
github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo=
|
||||
github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I=
|
||||
github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
|
||||
github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk=
|
||||
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
|
||||
github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4=
|
||||
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||
github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4=
|
||||
github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
|
||||
github.com/gogo/protobuf v1.3.1 h1:DqDEcV5aeaTmdFBePNpYsp3FlcVH/2ISVVM9Qf8PSls=
|
||||
github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o=
|
||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
|
||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
||||
github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
|
||||
github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
|
||||
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
||||
github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs=
|
||||
@ -148,11 +129,8 @@ github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5a
|
||||
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
|
||||
github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4=
|
||||
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/gofuzz v0.0.0-20161122191042-44d81051d367/go.mod h1:HP5RmnzzSNb993RKQDq4+1A4ia9nllfqcQFTQJedwGI=
|
||||
github.com/google/gofuzz v1.0.0 h1:A8PeW59pxE9IoFRqBp37U+mSNaQoZ46F1f0f863XSXw=
|
||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY=
|
||||
github.com/gorilla/mux v1.7.4 h1:VuZ8uybHlWmqV03+zRzdwKL4tUnIp1MAQtp1mIFE1bc=
|
||||
github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
|
||||
github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
|
||||
@ -177,20 +155,18 @@ github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANyt
|
||||
github.com/ishidawataru/sctp v0.0.0-20191218070446-00ab2ac2db07 h1:rw3IAne6CDuVFlZbPOkA7bhxlqawFh7RJJ+CejfMaxE=
|
||||
github.com/ishidawataru/sctp v0.0.0-20191218070446-00ab2ac2db07/go.mod h1:co9pwDoBCm1kGxawmb4sPq0cSIOOWNPT4KnHotMP1Zg=
|
||||
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
|
||||
github.com/json-iterator/go v0.0.0-20180612202835-f2b4162afba3/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
|
||||
github.com/json-iterator/go v1.1.8 h1:QiWkFLKq0T7mpzwOTu6BzNDbfTE8OLrYhVKYMLF46Ok=
|
||||
github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
|
||||
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
|
||||
github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q=
|
||||
github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00=
|
||||
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
|
||||
github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/compress v1.10.4 h1:jFzIFaf586tquEB5EhzQG0HwGNSlgAJpG53G6Ss11wc=
|
||||
github.com/klauspost/compress v1.10.4/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/compress v1.10.5 h1:7q6vHIqubShURwQz8cQK6yIe/xC3IF0Vm7TGfqjewrc=
|
||||
github.com/klauspost/compress v1.10.5/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
|
||||
github.com/klauspost/pgzip v1.2.3 h1:Ce2to9wvs/cuJ2b86/CKQoTYr9VHfpanYosZ0UBJqdw=
|
||||
github.com/klauspost/pgzip v1.2.3/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
|
||||
github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk=
|
||||
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
||||
github.com/konsorten/go-windows-terminal-sequences v1.0.2 h1:DB17ag19krx9CFsz4o3enTrPXyIXCl+2iCXH/aMAp9s=
|
||||
github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
|
||||
@ -198,14 +174,9 @@ github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFB
|
||||
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
|
||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA=
|
||||
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
|
||||
github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc=
|
||||
github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs=
|
||||
github.com/mattn/go-shellwords v1.0.10 h1:Y7Xqm8piKOO3v10Thp7Z36h4FYFjt5xB//6XvOrs2Gw=
|
||||
github.com/mattn/go-shellwords v1.0.10/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y=
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU=
|
||||
@ -217,7 +188,6 @@ github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v0.0.0-20180320133207-05fbef0ca5da/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI=
|
||||
github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
@ -225,23 +195,25 @@ github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A=
|
||||
github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc=
|
||||
github.com/mtrmac/gpgme v0.1.2 h1:dNOmvYmsrakgW7LcgiprD0yfRuQQe8/C8F6Z+zogO3s=
|
||||
github.com/mtrmac/gpgme v0.1.2/go.mod h1:GYYHnGSuS7HK3zVS2n3y73y0okK/BeKzwnn5jgiVFNI=
|
||||
github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
|
||||
github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
|
||||
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw=
|
||||
github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78=
|
||||
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
|
||||
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
|
||||
github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
|
||||
github.com/onsi/ginkgo v1.12.0 h1:Iw5WCbBcaAAd0fpRb1c9r5YCylv4XDoCSigm1zLevwU=
|
||||
github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg=
|
||||
github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
|
||||
github.com/onsi/ginkgo v1.12.1 h1:mFwc4LvZ0xpSvDZ3E+k8Yte0hLOMxXUlP+yXtJqkYfQ=
|
||||
github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk=
|
||||
github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
|
||||
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
|
||||
github.com/onsi/gomega v1.9.0 h1:R1uwffexN6Pr340GtYRIdZmAiN4J+iw6WG4wog1DUXg=
|
||||
github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||
github.com/onsi/gomega v1.10.0 h1:Gwkk+PTu/nfOwNMtUB/mRUv0X7ewW5dO4AERT1ThVKo=
|
||||
github.com/onsi/gomega v1.10.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA=
|
||||
github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
github.com/opencontainers/go-digest v1.0.0-rc1 h1:WzifXhOVOEOuFYOJAW6aQqW0TooG2iki3E3Ii+WN7gQ=
|
||||
github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||
github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
|
||||
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
|
||||
github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
|
||||
github.com/opencontainers/image-spec v1.0.2-0.20190823105129-775207bd45b6 h1:yN8BPXVwMBAm3Cuvh1L5XE8XpvYRMdsVLd82ILprhUU=
|
||||
github.com/opencontainers/image-spec v1.0.2-0.20190823105129-775207bd45b6/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
|
||||
@ -252,14 +224,15 @@ github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rm
|
||||
github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0=
|
||||
github.com/opencontainers/runtime-spec v0.1.2-0.20190618234442-a950415649c7 h1:Dliu5QO+4JYWu/yMshaMU7G3JN2POGpwjJN7gjy10Go=
|
||||
github.com/opencontainers/runtime-spec v0.1.2-0.20190618234442-a950415649c7/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0=
|
||||
github.com/opencontainers/runtime-spec v1.0.3-0.20200520003142-237cc4f519e2 h1:9mv9SC7GWmRWE0J/+oD8w3GsN2KYGKtg6uwLN7hfP5E=
|
||||
github.com/opencontainers/runtime-spec v1.0.3-0.20200520003142-237cc4f519e2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0=
|
||||
github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs=
|
||||
github.com/opencontainers/runtime-tools v0.9.0 h1:FYgwVsKRI/H9hU32MJ/4MLOzXWodKK5zsQavY8NPMkU=
|
||||
github.com/opencontainers/runtime-tools v0.9.0/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs=
|
||||
github.com/opencontainers/selinux v1.3.0/go.mod h1:+BLncwf63G4dgOzykXAxcmnFlUaOlkDdmw/CqsW6pjs=
|
||||
github.com/opencontainers/selinux v1.4.0/go.mod h1:yTcKuYAh6R95iDpefGLQaPaRwJFwyzAJufJyiTt7s0g=
|
||||
github.com/opencontainers/selinux v1.5.1 h1:jskKwSMFYqyTrHEuJgQoUlTcId0av64S6EWObrIfn5Y=
|
||||
github.com/opencontainers/selinux v1.5.1/go.mod h1:yTcKuYAh6R95iDpefGLQaPaRwJFwyzAJufJyiTt7s0g=
|
||||
github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316 h1:enQG2QUGwug4fR1yM6hL0Fjzx6Km/exZY6RbSPwMu3o=
|
||||
github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316/go.mod h1:dv+J0b/HWai0QnMVb37/H0v36klkLBi2TNpPeWDxX10=
|
||||
github.com/openshift/imagebuilder v1.1.4 h1:LUg8aTjyXMtlDx6IbtvaqofFGZ6aYqe+VIeATE735LM=
|
||||
github.com/openshift/imagebuilder v1.1.4/go.mod h1:9aJRczxCH0mvT6XQ+5STAQaPWz7OsWcU5/mRkt8IWeo=
|
||||
github.com/ostreedev/ostree-go v0.0.0-20190702140239-759a8c1ac913 h1:TnbXhKzrTOyuvWrjI8W6pcoI9XPbLHFXCdN2dtUw7Rw=
|
||||
@ -270,7 +243,6 @@ github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV
|
||||
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v0.0.0-20151028094244-d8ed2627bdf0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pquerna/ffjson v0.0.0-20181028064349-e517b90714f7/go.mod h1:YARuvh7BUWHNhzDq2OM5tzR2RiCcN2D7sapiKyCel/M=
|
||||
@ -290,6 +262,7 @@ github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y8
|
||||
github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
|
||||
github.com/prometheus/common v0.6.0 h1:kRhiuYSXR3+uv2IbVbZhUxK5zVD/2pp3Gd2PpvPkpEo=
|
||||
github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc=
|
||||
github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
|
||||
github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
|
||||
github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
|
||||
github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA=
|
||||
@ -297,13 +270,14 @@ github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDa
|
||||
github.com/prometheus/procfs v0.0.5 h1:3+auTFlqw+ZaQYJARz6ArODtkaIwtvBTx3N2NehQlL8=
|
||||
github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ=
|
||||
github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20170806203942-52369c62f446/go.mod h1:uYEyJGbgTkfkS4+E/PavXkNJcbFIpEtjt2B0KDQ5+9M=
|
||||
github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg=
|
||||
github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q=
|
||||
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/seccomp/containers-golang v0.0.0-20190312124753-8ca8945ccf5f h1:OtU/w6sBKmXYaw2KEODxjcYi3oPSyyslhgGFgIJVGAI=
|
||||
github.com/seccomp/containers-golang v0.0.0-20190312124753-8ca8945ccf5f/go.mod h1:f/98/SnvAzhAEFQJ3u836FePXvcbE8BS0YGMQNn4mhA=
|
||||
github.com/seccomp/containers-golang v0.4.1 h1:6hsmsP8Y9T6PWKJELqAkRWkc6Te60+zK64avkjInd44=
|
||||
github.com/seccomp/containers-golang v0.4.1/go.mod h1:5fP9lgyYyklJ8fg8Geq193G1QLe0ikf34z+hZKIjmnE=
|
||||
github.com/seccomp/libseccomp-golang v0.9.1 h1:NJjM5DNFOs0s3kYE1WUOr6G8V97sdt46rlXTMfXGWBo=
|
||||
github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo=
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo=
|
||||
github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc=
|
||||
github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4=
|
||||
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
|
||||
@ -315,7 +289,6 @@ github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKv
|
||||
github.com/spf13/cobra v0.0.7 h1:FfTH+vuMXOas8jmfb5/M7dzEYx7LpcLb7a0LPe34uOU=
|
||||
github.com/spf13/cobra v0.0.7/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE=
|
||||
github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
|
||||
github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
|
||||
github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
|
||||
github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
|
||||
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
||||
@ -323,8 +296,6 @@ github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An
|
||||
github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
|
||||
github.com/stretchr/testify v0.0.0-20151208002404-e3a8ff8ce365/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||
@ -342,8 +313,9 @@ github.com/ulikunitz/xz v0.5.7/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oW
|
||||
github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA=
|
||||
github.com/vbatts/tar-split v0.11.1 h1:0Odu65rhcZ3JZaPHxl7tCI3V/C/Q9Zf82UFravl02dE=
|
||||
github.com/vbatts/tar-split v0.11.1/go.mod h1:LEuURwDEiWjRjwu46yU3KVGuUdVv/dcnpcEPSzR8z6g=
|
||||
github.com/vbauerster/mpb/v5 v5.0.3 h1:Ldt/azOkbThTk2loi6FrBd/3fhxGFQ24MxFAS88PoNY=
|
||||
github.com/vbauerster/mpb/v5 v5.0.3/go.mod h1:h3YxU5CSr8rZP4Q3xZPVB3jJLhWPou63lHEdr9ytH4Y=
|
||||
github.com/vbauerster/mpb/v5 v5.0.4 h1:w7l/tJfHmtIOKZkU+bhbDZOUxj1kln9jy4DUOp3Tl14=
|
||||
github.com/vbauerster/mpb/v5 v5.0.4/go.mod h1:fvzasBUyuo35UyuA6sSOlVhpLoNQsp2nBdHw7OiSUU8=
|
||||
github.com/vishvananda/netlink v1.1.0 h1:1iyaYNBLmP6L0220aDnYQpo1QEV4t4hJ+xEEhhJH8j0=
|
||||
github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE=
|
||||
github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df h1:OviZH7qLw/7ZovXvuNyL3XQl8UFofeikI1NW1Gypu7k=
|
||||
@ -368,21 +340,16 @@ go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/
|
||||
go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q=
|
||||
golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20200311171314-f7b00557c8c4/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59 h1:3zb4D3T4G8jdExgVU/95+vQXfpEPiMdCaZgmGVxjNHM=
|
||||
golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5 h1:Q7tZBpemrlsc2I7IyODzhtallWRSm4Q0d09pL6XbQtU=
|
||||
golang.org/x/crypto v0.0.0-20200423211502-4bdfaf469ed5/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190312203227-4b39c73a6495/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
|
||||
golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js=
|
||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
|
||||
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE=
|
||||
golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
@ -394,9 +361,7 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
|
||||
golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
|
||||
golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e h1:3G+cUijn7XD+S4eJFddp53Pv7+slrESplyjG25HgL+k=
|
||||
golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
||||
@ -408,31 +373,29 @@ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJ
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a h1:WXEvlFVvvGxCJLG6REjsT03iWnKLEWinaScsxF2Vm2o=
|
||||
golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190921190940-14da1ac737cc/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191127021746-63cb32ae39b2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200327173247-9dae0f8f5775 h1:TC0v2RSO1u2kn1ZugjrFXkRZAEaqMN/RW+OTZkBzmLE=
|
||||
golang.org/x/sys v0.0.0-20200327173247-9dae0f8f5775/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f h1:gWF768j/LaZugp8dyS4UwsslYCYz9XgFxvlgsn0n9H8=
|
||||
golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
|
||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||
@ -441,32 +404,26 @@ golang.org/x/time v0.0.0-20191024005414-555d28b269f0 h1:/5xXl8Y5W96D+TtHSlonuFqG
|
||||
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
|
||||
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
|
||||
golang.org/x/tools v0.0.0-20190920225731-5eefd052ad72/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
gonum.org/v1/gonum v0.0.0-20190331200053-3d26580ed485/go.mod h1:2ltnJ7xHfj0zHS40VVPYEAAMTa3ZGguvHGBSJeRWqE0=
|
||||
gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw=
|
||||
gonum.org/v1/netlib v0.0.0-20190331212654-76723241ea4e/go.mod h1:kS+toOQn6AQKjmKJ7gzohV1XkqsFehRA2FbsbkopSuQ=
|
||||
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
||||
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
|
||||
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
|
||||
google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
|
||||
google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE=
|
||||
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE=
|
||||
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
|
||||
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
|
||||
google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
|
||||
google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM=
|
||||
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
|
||||
google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
|
||||
google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA=
|
||||
google.golang.org/grpc v1.27.1 h1:zvIju4sqAGvwKspUQOhwnpcqSbzi7/H6QomNNjTL4sk=
|
||||
google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
|
||||
@ -479,8 +436,6 @@ gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8
|
||||
gopkg.in/fsnotify.v1 v1.4.7 h1:xOHLXZwVvI9hhs+cLKq5+I5onOuwQLhQwiu63xxlHs4=
|
||||
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
|
||||
gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo=
|
||||
gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc=
|
||||
gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
|
||||
gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
|
||||
gopkg.in/square/go-jose.v2 v2.3.1 h1:SK5KegNXmKmqE342YYN2qPHEnUYeoMiXXl1poUlI+o4=
|
||||
gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI=
|
||||
@ -496,23 +451,4 @@ gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=
|
||||
gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw=
|
||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
k8s.io/api v0.17.0 h1:H9d/lw+VkZKEVIUc8F3wgiQ+FUXTTr21M87jXLU7yqM=
|
||||
k8s.io/api v0.17.0/go.mod h1:npsyOePkeP0CPwyGfXDHxvypiYMJxBWAMpQxCaJ4ZxI=
|
||||
k8s.io/apimachinery v0.17.0 h1:xRBnuie9rXcPxUkDizUsGvPf1cnlZCFu210op7J7LJo=
|
||||
k8s.io/apimachinery v0.17.0/go.mod h1:b9qmWdKlLuU9EBh+06BtLcSf/Mu89rWL33naRxs1uZg=
|
||||
k8s.io/code-generator v0.17.0/go.mod h1:DVmfPQgxQENqDIzVR2ddLXMH34qeszkKSdH/N+s+38s=
|
||||
k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
|
||||
k8s.io/gengo v0.0.0-20190822140433-26a664648505/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
|
||||
k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk=
|
||||
k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8=
|
||||
k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
|
||||
k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a/go.mod h1:1TqjTSzOxsLGIKfj0lK8EeCP7K1iUG65v09OM0/WG5E=
|
||||
k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk=
|
||||
modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw=
|
||||
modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk=
|
||||
modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k=
|
||||
modernc.org/strutil v1.0.0/go.mod h1:lstksw84oURvj9y3tn8lGvRxyRC1S2+g5uuIzNfIOBs=
|
||||
modernc.org/xc v1.0.0/go.mod h1:mRNCo0bvLjGhHO9WsyuKVU4q0ceiDDDoEeWDJHrNx8I=
|
||||
sigs.k8s.io/structured-merge-diff v0.0.0-20190525122527-15d366b2352e/go.mod h1:wWxsB5ozmmv/SG7nM11ayaAW51xMvak/t1r0CSlcokI=
|
||||
sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs=
|
||||
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
|
||||
|
6
vendor/github.com/containers/buildah/image.go
generated
vendored
6
vendor/github.com/containers/buildah/image.go
generated
vendored
@ -586,16 +586,10 @@ func (i *containerImageSource) Reference() types.ImageReference {
|
||||
}
|
||||
|
||||
func (i *containerImageSource) GetSignatures(ctx context.Context, instanceDigest *digest.Digest) ([][]byte, error) {
|
||||
if instanceDigest != nil {
|
||||
return nil, errors.Errorf("containerImageSource does not support manifest lists")
|
||||
}
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
func (i *containerImageSource) GetManifest(ctx context.Context, instanceDigest *digest.Digest) ([]byte, string, error) {
|
||||
if instanceDigest != nil {
|
||||
return nil, "", errors.Errorf("containerImageSource does not support manifest lists")
|
||||
}
|
||||
return i.manifest, i.manifestType, nil
|
||||
}
|
||||
|
||||
|
23
vendor/github.com/containers/buildah/imagebuildah/build.go
generated
vendored
23
vendor/github.com/containers/buildah/imagebuildah/build.go
generated
vendored
@ -3,6 +3,7 @@ package imagebuildah
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
@ -16,10 +17,12 @@ import (
|
||||
"github.com/containers/common/pkg/config"
|
||||
"github.com/containers/image/v5/docker/reference"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
"github.com/containers/storage/pkg/archive"
|
||||
specs "github.com/opencontainers/runtime-spec/specs-go"
|
||||
"github.com/openshift/imagebuilder"
|
||||
"github.com/openshift/imagebuilder/dockerfile/parser"
|
||||
"github.com/pkg/errors"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
@ -171,6 +174,9 @@ type BuildOptions struct {
|
||||
MaxPullPushRetries int
|
||||
// PullPushRetryDelay is how long to wait before retrying a pull or push attempt.
|
||||
PullPushRetryDelay time.Duration
|
||||
// OciDecryptConfig contains the config that can be used to decrypt an image if it is
|
||||
// encrypted if non-nil. If nil, it does not attempt to decrypt an image.
|
||||
OciDecryptConfig *encconfig.DecryptConfig
|
||||
}
|
||||
|
||||
// BuildDockerfiles parses a set of one or more Dockerfiles (which may be
|
||||
@ -249,6 +255,9 @@ func BuildDockerfiles(ctx context.Context, store storage.Store, options BuildOpt
|
||||
if err != nil {
|
||||
return "", nil, errors.Wrapf(err, "error parsing main Dockerfile")
|
||||
}
|
||||
|
||||
warnOnUnsetBuildArgs(mainNode, options.Args)
|
||||
|
||||
for _, d := range dockerfiles[1:] {
|
||||
additionalNode, err := imagebuilder.ParseDockerfile(d)
|
||||
if err != nil {
|
||||
@ -280,6 +289,20 @@ func BuildDockerfiles(ctx context.Context, store storage.Store, options BuildOpt
|
||||
return exec.Build(ctx, stages)
|
||||
}
|
||||
|
||||
func warnOnUnsetBuildArgs(node *parser.Node, args map[string]string) {
|
||||
for _, child := range node.Children {
|
||||
switch strings.ToUpper(child.Value) {
|
||||
case "ARG":
|
||||
argName := child.Next.Value
|
||||
if _, ok := args[argName]; !strings.Contains(argName, "=") && !ok {
|
||||
logrus.Warnf("missing %q build argument. Try adding %q to the command line", argName, fmt.Sprintf("--build-arg %s=<VALUE>", argName))
|
||||
}
|
||||
default:
|
||||
continue
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// preprocessDockerfileContents runs CPP(1) in preprocess-only mode on the input
|
||||
// dockerfile content and will use ctxDir as the base include path.
|
||||
//
|
||||
|
8
vendor/github.com/containers/buildah/imagebuildah/executor.go
generated
vendored
8
vendor/github.com/containers/buildah/imagebuildah/executor.go
generated
vendored
@ -20,6 +20,7 @@ import (
|
||||
"github.com/containers/image/v5/transports"
|
||||
"github.com/containers/image/v5/transports/alltransports"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
"github.com/containers/storage/pkg/archive"
|
||||
v1 "github.com/opencontainers/image-spec/specs-go/v1"
|
||||
@ -100,6 +101,7 @@ type Executor struct {
|
||||
os string
|
||||
maxPullPushRetries int
|
||||
retryPullPushDelay time.Duration
|
||||
ociDecryptConfig *encconfig.DecryptConfig
|
||||
}
|
||||
|
||||
// NewExecutor creates a new instance of the imagebuilder.Executor interface.
|
||||
@ -188,6 +190,7 @@ func NewExecutor(store storage.Store, options BuildOptions, mainNode *parser.Nod
|
||||
os: options.OS,
|
||||
maxPullPushRetries: options.MaxPullPushRetries,
|
||||
retryPullPushDelay: options.PullPushRetryDelay,
|
||||
ociDecryptConfig: options.OciDecryptConfig,
|
||||
}
|
||||
if exec.err == nil {
|
||||
exec.err = os.Stderr
|
||||
@ -233,7 +236,7 @@ func NewExecutor(store storage.Store, options BuildOptions, mainNode *parser.Nod
|
||||
|
||||
// startStage creates a new stage executor that will be referenced whenever a
|
||||
// COPY or ADD statement uses a --from=NAME flag.
|
||||
func (b *Executor) startStage(stage *imagebuilder.Stage, stages int, from, output string) *StageExecutor {
|
||||
func (b *Executor) startStage(stage *imagebuilder.Stage, stages int, output string) *StageExecutor {
|
||||
if b.stages == nil {
|
||||
b.stages = make(map[string]*StageExecutor)
|
||||
}
|
||||
@ -248,7 +251,6 @@ func (b *Executor) startStage(stage *imagebuilder.Stage, stages int, from, outpu
|
||||
stage: stage,
|
||||
}
|
||||
b.stages[stage.Name] = stageExec
|
||||
b.stages[from] = stageExec
|
||||
if idx := strconv.Itoa(stage.Position); idx != stage.Name {
|
||||
b.stages[idx] = stageExec
|
||||
}
|
||||
@ -421,7 +423,7 @@ func (b *Executor) Build(ctx context.Context, stages imagebuilder.Stages) (image
|
||||
output = b.output
|
||||
}
|
||||
|
||||
stageExecutor := b.startStage(&stage, len(stages), base, output)
|
||||
stageExecutor := b.startStage(&stage, len(stages), output)
|
||||
|
||||
// If this a single-layer build, or if it's a multi-layered
|
||||
// build and b.forceRmIntermediateCtrs is set, make sure we
|
||||
|
12
vendor/github.com/containers/buildah/imagebuildah/stage_executor.go
generated
vendored
12
vendor/github.com/containers/buildah/imagebuildah/stage_executor.go
generated
vendored
@ -295,7 +295,7 @@ func (s *StageExecutor) digestSpecifiedContent(node *parser.Node, argValues []st
|
||||
// container. Update the ID mappings and
|
||||
// all-content-comes-from-below-this-directory value.
|
||||
from := strings.TrimPrefix(flag, "--from=")
|
||||
if other, ok := s.executor.stages[from]; ok {
|
||||
if other, ok := s.executor.stages[from]; ok && other.index < s.index {
|
||||
contextDir = other.mountPoint
|
||||
idMappingOptions = &other.builder.IDMappingOptions
|
||||
} else if builder, ok := s.executor.containerMap[from]; ok {
|
||||
@ -633,6 +633,7 @@ func (s *StageExecutor) prepare(ctx context.Context, from string, initializeIBCo
|
||||
Devices: s.executor.devices,
|
||||
MaxPullRetries: s.executor.maxPullPushRetries,
|
||||
PullRetryDelay: s.executor.retryPullPushDelay,
|
||||
OciDecryptConfig: s.executor.ociDecryptConfig,
|
||||
}
|
||||
|
||||
// Check and see if the image is a pseudonym for the end result of a
|
||||
@ -868,13 +869,10 @@ func (s *StageExecutor) Execute(ctx context.Context, base string) (imgID string,
|
||||
if len(arr) != 2 {
|
||||
return "", nil, errors.Errorf("%s: invalid --from flag, should be --from=<name|stage>", command)
|
||||
}
|
||||
otherStage, ok := s.executor.stages[arr[1]]
|
||||
if !ok {
|
||||
if mountPoint, err = s.getImageRootfs(ctx, arr[1]); err != nil {
|
||||
return "", nil, errors.Errorf("%s --from=%s: no stage or image found with that name", command, arr[1])
|
||||
}
|
||||
} else {
|
||||
if otherStage, ok := s.executor.stages[arr[1]]; ok && otherStage.index < s.index {
|
||||
mountPoint = otherStage.mountPoint
|
||||
} else if mountPoint, err = s.getImageRootfs(ctx, arr[1]); err != nil {
|
||||
return "", nil, errors.Errorf("%s --from=%s: no stage or image found with that name", command, arr[1])
|
||||
}
|
||||
s.copyFrom = mountPoint
|
||||
break
|
||||
|
1
vendor/github.com/containers/buildah/new.go
generated
vendored
1
vendor/github.com/containers/buildah/new.go
generated
vendored
@ -36,6 +36,7 @@ func pullAndFindImage(ctx context.Context, store storage.Store, srcRef types.Ima
|
||||
BlobDirectory: options.BlobDirectory,
|
||||
MaxRetries: options.MaxPullRetries,
|
||||
RetryDelay: options.PullRetryDelay,
|
||||
OciDecryptConfig: options.OciDecryptConfig,
|
||||
}
|
||||
ref, err := pullImage(ctx, store, srcRef, pullOptions, sc)
|
||||
if err != nil {
|
||||
|
1
vendor/github.com/containers/buildah/pkg/cli/common.go
generated
vendored
1
vendor/github.com/containers/buildah/pkg/cli/common.go
generated
vendored
@ -57,6 +57,7 @@ type BudResults struct {
|
||||
Creds string
|
||||
DisableCompression bool
|
||||
DisableContentTrust bool
|
||||
DecryptionKeys []string
|
||||
File []string
|
||||
Format string
|
||||
Iidfile string
|
||||
|
7
vendor/github.com/containers/buildah/pull.go
generated
vendored
7
vendor/github.com/containers/buildah/pull.go
generated
vendored
@ -19,6 +19,7 @@ import (
|
||||
is "github.com/containers/image/v5/storage"
|
||||
"github.com/containers/image/v5/transports"
|
||||
"github.com/containers/image/v5/types"
|
||||
encconfig "github.com/containers/ocicrypt/config"
|
||||
"github.com/containers/storage"
|
||||
multierror "github.com/hashicorp/go-multierror"
|
||||
"github.com/pkg/errors"
|
||||
@ -56,6 +57,9 @@ type PullOptions struct {
|
||||
MaxRetries int
|
||||
// RetryDelay is how long to wait before retrying a pull attempt.
|
||||
RetryDelay time.Duration
|
||||
// OciDecryptConfig contains the config that can be used to decrypt an image if it is
|
||||
// encrypted if non-nil. If nil, it does not attempt to decrypt an image.
|
||||
OciDecryptConfig *encconfig.DecryptConfig
|
||||
}
|
||||
|
||||
func localImageNameForReference(ctx context.Context, store storage.Store, srcRef types.ImageReference) (string, error) {
|
||||
@ -164,6 +168,7 @@ func Pull(ctx context.Context, imageName string, options PullOptions) (imageID s
|
||||
ReportWriter: options.ReportWriter,
|
||||
MaxPullRetries: options.MaxRetries,
|
||||
PullRetryDelay: options.RetryDelay,
|
||||
OciDecryptConfig: options.OciDecryptConfig,
|
||||
}
|
||||
|
||||
storageRef, transport, img, err := resolveImage(ctx, systemContext, options.Store, boptions)
|
||||
@ -275,7 +280,7 @@ func pullImage(ctx context.Context, store storage.Store, srcRef types.ImageRefer
|
||||
}()
|
||||
|
||||
logrus.Debugf("copying %q to %q", transports.ImageName(srcRef), destName)
|
||||
if _, err := retryCopyImage(ctx, policyContext, maybeCachedDestRef, srcRef, srcRef, "pull", getCopyOptions(store, options.ReportWriter, sc, nil, "", options.RemoveSignatures, ""), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
if _, err := retryCopyImage(ctx, policyContext, maybeCachedDestRef, srcRef, srcRef, "pull", getCopyOptions(store, options.ReportWriter, sc, nil, "", options.RemoveSignatures, "", nil, nil, options.OciDecryptConfig), options.MaxRetries, options.RetryDelay); err != nil {
|
||||
logrus.Debugf("error copying src image [%q] to dest image [%q] err: %v", transports.ImageName(srcRef), destName, err)
|
||||
return nil, err
|
||||
}
|
||||
|
8
vendor/github.com/containers/buildah/util/util.go
generated
vendored
8
vendor/github.com/containers/buildah/util/util.go
generated
vendored
@ -74,7 +74,7 @@ func ResolveName(name string, firstRegistry string, sc *types.SystemContext, sto
|
||||
return []string{strings.TrimPrefix(name, DefaultTransport)}, DefaultTransport, false, nil
|
||||
}
|
||||
split := strings.SplitN(name, ":", 2)
|
||||
if len(split) == 2 {
|
||||
if StartsWithValidTransport(name) && len(split) == 2 {
|
||||
if trans := transports.Get(split[0]); trans != nil {
|
||||
return []string{split[1]}, trans.Name(), false, nil
|
||||
}
|
||||
@ -148,6 +148,12 @@ func ResolveName(name string, firstRegistry string, sc *types.SystemContext, sto
|
||||
return candidates, DefaultTransport, searchRegistriesAreEmpty, nil
|
||||
}
|
||||
|
||||
// StartsWithValidTransport validates the name starts with Buildah supported transport
|
||||
// to avoid the corner case image name same as the transport name
|
||||
func StartsWithValidTransport(name string) bool {
|
||||
return strings.HasPrefix(name, "dir:") || strings.HasPrefix(name, "docker://") || strings.HasPrefix(name, "docker-archive:") || strings.HasPrefix(name, "docker-daemon:") || strings.HasPrefix(name, "oci:") || strings.HasPrefix(name, "oci-archive:")
|
||||
}
|
||||
|
||||
// ExpandNames takes unqualified names, parses them as image names, and returns
|
||||
// the fully expanded result, including a tag. Names which don't include a registry
|
||||
// name will be marked for the most-preferred registry (i.e., the first one in our
|
||||
|
201
vendor/github.com/openshift/api/LICENSE
generated
vendored
201
vendor/github.com/openshift/api/LICENSE
generated
vendored
@ -1,201 +0,0 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "{}"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright {yyyy} {name of copyright owner}
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
@ -1,164 +0,0 @@
|
||||
kind: CustomResourceDefinition
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
metadata:
|
||||
name: clusteroperators.config.openshift.io
|
||||
spec:
|
||||
additionalPrinterColumns:
|
||||
- JSONPath: .status.versions[?(@.name=="operator")].version
|
||||
description: The version the operator is at.
|
||||
name: Version
|
||||
type: string
|
||||
- JSONPath: .status.conditions[?(@.type=="Available")].status
|
||||
description: Whether the operator is running and stable.
|
||||
name: Available
|
||||
type: string
|
||||
- JSONPath: .status.conditions[?(@.type=="Progressing")].status
|
||||
description: Whether the operator is processing changes.
|
||||
name: Progressing
|
||||
type: string
|
||||
- JSONPath: .status.conditions[?(@.type=="Degraded")].status
|
||||
description: Whether the operator is degraded.
|
||||
name: Degraded
|
||||
type: string
|
||||
- JSONPath: .status.conditions[?(@.type=="Available")].lastTransitionTime
|
||||
description: The time the operator's Available status last changed.
|
||||
name: Since
|
||||
type: date
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: ClusterOperator
|
||||
listKind: ClusterOperatorList
|
||||
plural: clusteroperators
|
||||
singular: clusteroperator
|
||||
shortNames:
|
||||
- co
|
||||
preserveUnknownFields: false
|
||||
scope: Cluster
|
||||
subresources:
|
||||
status: {}
|
||||
version: v1
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
description: ClusterOperator is the Custom Resource object which holds the current
|
||||
state of an operator. This object is used by operators to convey their state
|
||||
to the rest of the cluster.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds configuration that could apply to any operator.
|
||||
type: object
|
||||
status:
|
||||
description: status holds the information about the state of an operator. It
|
||||
is consistent with status information across the Kubernetes ecosystem.
|
||||
type: object
|
||||
properties:
|
||||
conditions:
|
||||
description: conditions describes the state of the operator's managed
|
||||
and monitored components.
|
||||
type: array
|
||||
items:
|
||||
description: ClusterOperatorStatusCondition represents the state of
|
||||
the operator's managed and monitored components.
|
||||
type: object
|
||||
required:
|
||||
- lastTransitionTime
|
||||
- status
|
||||
- type
|
||||
properties:
|
||||
lastTransitionTime:
|
||||
description: lastTransitionTime is the time of the last update
|
||||
to the current status property.
|
||||
type: string
|
||||
format: date-time
|
||||
message:
|
||||
description: message provides additional information about the
|
||||
current condition. This is only to be consumed by humans.
|
||||
type: string
|
||||
reason:
|
||||
description: reason is the CamelCase reason for the condition's
|
||||
current status.
|
||||
type: string
|
||||
status:
|
||||
description: status of the condition, one of True, False, Unknown.
|
||||
type: string
|
||||
type:
|
||||
description: type specifies the aspect reported by this condition.
|
||||
type: string
|
||||
extension:
|
||||
description: extension contains any additional status information specific
|
||||
to the operator which owns this status object.
|
||||
type: object
|
||||
nullable: true
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
relatedObjects:
|
||||
description: 'relatedObjects is a list of objects that are "interesting"
|
||||
or related to this operator. Common uses are: 1. the detailed resource
|
||||
driving the operator 2. operator namespaces 3. operand namespaces'
|
||||
type: array
|
||||
items:
|
||||
description: ObjectReference contains enough information to let you
|
||||
inspect or modify the referred object.
|
||||
type: object
|
||||
required:
|
||||
- group
|
||||
- name
|
||||
- resource
|
||||
properties:
|
||||
group:
|
||||
description: group of the referent.
|
||||
type: string
|
||||
name:
|
||||
description: name of the referent.
|
||||
type: string
|
||||
namespace:
|
||||
description: namespace of the referent.
|
||||
type: string
|
||||
resource:
|
||||
description: resource of the referent.
|
||||
type: string
|
||||
versions:
|
||||
description: versions is a slice of operator and operand version tuples. Operators
|
||||
which manage multiple operands will have multiple operand entries
|
||||
in the array. Available operators must report the version of the
|
||||
operator itself with the name "operator". An operator reports a new
|
||||
"operator" version when it has rolled out the new version to all of
|
||||
its operands.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
- version
|
||||
properties:
|
||||
name:
|
||||
description: name is the name of the particular operand this version
|
||||
is for. It usually matches container images, not operators.
|
||||
type: string
|
||||
version:
|
||||
description: version indicates which version of a particular operand
|
||||
is currently being managed. It must always match the Available
|
||||
operand. If 1.0.0 is Available, then this must indicate 1.0.0
|
||||
even if the operator is trying to rollout 1.1.0
|
||||
type: string
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
@ -1,328 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: clusterversions.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
scope: Cluster
|
||||
subresources:
|
||||
status: {}
|
||||
names:
|
||||
plural: clusterversions
|
||||
singular: clusterversion
|
||||
kind: ClusterVersion
|
||||
preserveUnknownFields: false
|
||||
additionalPrinterColumns:
|
||||
- name: Version
|
||||
type: string
|
||||
JSONPath: .status.history[?(@.state=="Completed")].version
|
||||
- name: Available
|
||||
type: string
|
||||
JSONPath: .status.conditions[?(@.type=="Available")].status
|
||||
- name: Progressing
|
||||
type: string
|
||||
JSONPath: .status.conditions[?(@.type=="Progressing")].status
|
||||
- name: Since
|
||||
type: date
|
||||
JSONPath: .status.conditions[?(@.type=="Progressing")].lastTransitionTime
|
||||
- name: Status
|
||||
type: string
|
||||
JSONPath: .status.conditions[?(@.type=="Progressing")].message
|
||||
validation:
|
||||
openAPIV3Schema:
|
||||
description: ClusterVersion is the configuration for the ClusterVersionOperator.
|
||||
This is where parameters related to automatic updates can be set.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec is the desired state of the cluster version - the operator
|
||||
will work to ensure that the desired version is applied to the cluster.
|
||||
type: object
|
||||
required:
|
||||
- clusterID
|
||||
properties:
|
||||
channel:
|
||||
description: channel is an identifier for explicitly requesting that
|
||||
a non-default set of updates be applied to this cluster. The default
|
||||
channel will be contain stable updates that are appropriate for production
|
||||
clusters.
|
||||
type: string
|
||||
clusterID:
|
||||
description: clusterID uniquely identifies this cluster. This is expected
|
||||
to be an RFC4122 UUID value (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
||||
in hexadecimal values). This is a required field.
|
||||
type: string
|
||||
desiredUpdate:
|
||||
description: "desiredUpdate is an optional field that indicates the
|
||||
desired value of the cluster version. Setting this value will trigger
|
||||
an upgrade (if the current version does not match the desired version).
|
||||
The set of recommended update values is listed as part of available
|
||||
updates in status, and setting values outside that range may cause
|
||||
the upgrade to fail. You may specify the version field without setting
|
||||
image if an update exists with that version in the availableUpdates
|
||||
or history. \n If an upgrade fails the operator will halt and report
|
||||
status about the failing component. Setting the desired update value
|
||||
back to the previous version will cause a rollback to be attempted.
|
||||
Not all rollbacks will succeed."
|
||||
type: object
|
||||
properties:
|
||||
force:
|
||||
description: "force allows an administrator to update to an image
|
||||
that has failed verification, does not appear in the availableUpdates
|
||||
list, or otherwise would be blocked by normal protections on update.
|
||||
This option should only be used when the authenticity of the provided
|
||||
image has been verified out of band because the provided image
|
||||
will run with full administrative access to the cluster. Do not
|
||||
use this flag with images that comes from unknown or potentially
|
||||
malicious sources. \n This flag does not override other forms
|
||||
of consistency checking that are required before a new update
|
||||
is deployed."
|
||||
type: boolean
|
||||
image:
|
||||
description: image is a container image location that contains the
|
||||
update. When this field is part of spec, image is optional if
|
||||
version is specified and the availableUpdates field contains a
|
||||
matching version.
|
||||
type: string
|
||||
version:
|
||||
description: version is a semantic versioning identifying the update
|
||||
version. When this field is part of spec, version is optional
|
||||
if image is specified.
|
||||
type: string
|
||||
overrides:
|
||||
description: overrides is list of overides for components that are managed
|
||||
by cluster version operator. Marking a component unmanaged will prevent
|
||||
the operator from creating or updating the object.
|
||||
type: array
|
||||
items:
|
||||
description: ComponentOverride allows overriding cluster version operator's
|
||||
behavior for a component.
|
||||
type: object
|
||||
required:
|
||||
- group
|
||||
- kind
|
||||
- name
|
||||
- namespace
|
||||
- unmanaged
|
||||
properties:
|
||||
group:
|
||||
description: group identifies the API group that the kind is in.
|
||||
type: string
|
||||
kind:
|
||||
description: kind indentifies which object to override.
|
||||
type: string
|
||||
name:
|
||||
description: name is the component's name.
|
||||
type: string
|
||||
namespace:
|
||||
description: namespace is the component's namespace. If the resource
|
||||
is cluster scoped, the namespace should be empty.
|
||||
type: string
|
||||
unmanaged:
|
||||
description: 'unmanaged controls if cluster version operator should
|
||||
stop managing the resources in this cluster. Default: false'
|
||||
type: boolean
|
||||
upstream:
|
||||
description: upstream may be used to specify the preferred update server.
|
||||
By default it will use the appropriate update server for the cluster
|
||||
and region.
|
||||
type: string
|
||||
status:
|
||||
description: status contains information about the available updates and
|
||||
any in-progress updates.
|
||||
type: object
|
||||
required:
|
||||
- availableUpdates
|
||||
- desired
|
||||
- observedGeneration
|
||||
- versionHash
|
||||
properties:
|
||||
availableUpdates:
|
||||
description: availableUpdates contains the list of updates that are
|
||||
appropriate for this cluster. This list may be empty if no updates
|
||||
are recommended, if the update service is unavailable, or if an invalid
|
||||
channel has been specified.
|
||||
type: array
|
||||
items:
|
||||
description: Update represents a release of the ClusterVersionOperator,
|
||||
referenced by the Image member.
|
||||
type: object
|
||||
properties:
|
||||
force:
|
||||
description: "force allows an administrator to update to an image
|
||||
that has failed verification, does not appear in the availableUpdates
|
||||
list, or otherwise would be blocked by normal protections on
|
||||
update. This option should only be used when the authenticity
|
||||
of the provided image has been verified out of band because
|
||||
the provided image will run with full administrative access
|
||||
to the cluster. Do not use this flag with images that comes
|
||||
from unknown or potentially malicious sources. \n This flag
|
||||
does not override other forms of consistency checking that are
|
||||
required before a new update is deployed."
|
||||
type: boolean
|
||||
image:
|
||||
description: image is a container image location that contains
|
||||
the update. When this field is part of spec, image is optional
|
||||
if version is specified and the availableUpdates field contains
|
||||
a matching version.
|
||||
type: string
|
||||
version:
|
||||
description: version is a semantic versioning identifying the
|
||||
update version. When this field is part of spec, version is
|
||||
optional if image is specified.
|
||||
type: string
|
||||
nullable: true
|
||||
conditions:
|
||||
description: conditions provides information about the cluster version.
|
||||
The condition "Available" is set to true if the desiredUpdate has
|
||||
been reached. The condition "Progressing" is set to true if an update
|
||||
is being applied. The condition "Degraded" is set to true if an update
|
||||
is currently blocked by a temporary or permanent error. Conditions
|
||||
are only valid for the current desiredUpdate when metadata.generation
|
||||
is equal to status.generation.
|
||||
type: array
|
||||
items:
|
||||
description: ClusterOperatorStatusCondition represents the state of
|
||||
the operator's managed and monitored components.
|
||||
type: object
|
||||
required:
|
||||
- lastTransitionTime
|
||||
- status
|
||||
- type
|
||||
properties:
|
||||
lastTransitionTime:
|
||||
description: lastTransitionTime is the time of the last update
|
||||
to the current status property.
|
||||
type: string
|
||||
format: date-time
|
||||
message:
|
||||
description: message provides additional information about the
|
||||
current condition. This is only to be consumed by humans.
|
||||
type: string
|
||||
reason:
|
||||
description: reason is the CamelCase reason for the condition's
|
||||
current status.
|
||||
type: string
|
||||
status:
|
||||
description: status of the condition, one of True, False, Unknown.
|
||||
type: string
|
||||
type:
|
||||
description: type specifies the aspect reported by this condition.
|
||||
type: string
|
||||
desired:
|
||||
description: desired is the version that the cluster is reconciling
|
||||
towards. If the cluster is not yet fully initialized desired will
|
||||
be set with the information available, which may be an image or a
|
||||
tag.
|
||||
type: object
|
||||
properties:
|
||||
force:
|
||||
description: "force allows an administrator to update to an image
|
||||
that has failed verification, does not appear in the availableUpdates
|
||||
list, or otherwise would be blocked by normal protections on update.
|
||||
This option should only be used when the authenticity of the provided
|
||||
image has been verified out of band because the provided image
|
||||
will run with full administrative access to the cluster. Do not
|
||||
use this flag with images that comes from unknown or potentially
|
||||
malicious sources. \n This flag does not override other forms
|
||||
of consistency checking that are required before a new update
|
||||
is deployed."
|
||||
type: boolean
|
||||
image:
|
||||
description: image is a container image location that contains the
|
||||
update. When this field is part of spec, image is optional if
|
||||
version is specified and the availableUpdates field contains a
|
||||
matching version.
|
||||
type: string
|
||||
version:
|
||||
description: version is a semantic versioning identifying the update
|
||||
version. When this field is part of spec, version is optional
|
||||
if image is specified.
|
||||
type: string
|
||||
history:
|
||||
description: history contains a list of the most recent versions applied
|
||||
to the cluster. This value may be empty during cluster startup, and
|
||||
then will be updated when a new update is being applied. The newest
|
||||
update is first in the list and it is ordered by recency. Updates
|
||||
in the history have state Completed if the rollout completed - if
|
||||
an update was failing or halfway applied the state will be Partial.
|
||||
Only a limited amount of update history is preserved.
|
||||
type: array
|
||||
items:
|
||||
description: UpdateHistory is a single attempted update to the cluster.
|
||||
type: object
|
||||
required:
|
||||
- completionTime
|
||||
- image
|
||||
- startedTime
|
||||
- state
|
||||
- verified
|
||||
properties:
|
||||
completionTime:
|
||||
description: completionTime, if set, is when the update was fully
|
||||
applied. The update that is currently being applied will have
|
||||
a null completion time. Completion time will always be set for
|
||||
entries that are not the current update (usually to the started
|
||||
time of the next update).
|
||||
type: string
|
||||
format: date-time
|
||||
nullable: true
|
||||
image:
|
||||
description: image is a container image location that contains
|
||||
the update. This value is always populated.
|
||||
type: string
|
||||
startedTime:
|
||||
description: startedTime is the time at which the update was started.
|
||||
type: string
|
||||
format: date-time
|
||||
state:
|
||||
description: state reflects whether the update was fully applied.
|
||||
The Partial state indicates the update is not fully applied,
|
||||
while the Completed state indicates the update was successfully
|
||||
rolled out at least once (all parts of the update successfully
|
||||
applied).
|
||||
type: string
|
||||
verified:
|
||||
description: verified indicates whether the provided update was
|
||||
properly verified before it was installed. If this is false
|
||||
the cluster may not be trusted.
|
||||
type: boolean
|
||||
version:
|
||||
description: version is a semantic versioning identifying the
|
||||
update version. If the requested image does not define a version,
|
||||
or if a failure occurs retrieving the image, this value may
|
||||
be empty.
|
||||
type: string
|
||||
observedGeneration:
|
||||
description: observedGeneration reports which version of the spec is
|
||||
being synced. If this value is not equal to metadata.generation, then
|
||||
the desired and conditions fields may represent a previous version.
|
||||
type: integer
|
||||
format: int64
|
||||
versionHash:
|
||||
description: versionHash is a fingerprint of the content that the cluster
|
||||
will be updated with. It is used by the operator to avoid unnecessary
|
||||
work and is for internal use only.
|
||||
type: string
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
101
vendor/github.com/openshift/api/config/v1/0000_03_config-operator_01_operatorhub.crd.yaml
generated
vendored
101
vendor/github.com/openshift/api/config/v1/0000_03_config-operator_01_operatorhub.crd.yaml
generated
vendored
@ -1,101 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: operatorhubs.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: OperatorHub
|
||||
listKind: OperatorHubList
|
||||
plural: operatorhubs
|
||||
singular: operatorhub
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
subresources:
|
||||
status: {}
|
||||
version: v1
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: OperatorHub is the Schema for the operatorhubs API. It can be used
|
||||
to change the state of the default hub sources for OperatorHub on the cluster
|
||||
from enabled to disabled and vice versa.
|
||||
type: object
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: OperatorHubSpec defines the desired state of OperatorHub
|
||||
type: object
|
||||
properties:
|
||||
disableAllDefaultSources:
|
||||
description: disableAllDefaultSources allows you to disable all the
|
||||
default hub sources. If this is true, a specific entry in sources
|
||||
can be used to enable a default source. If this is false, a specific
|
||||
entry in sources can be used to disable or enable a default source.
|
||||
type: boolean
|
||||
sources:
|
||||
description: sources is the list of default hub sources and their configuration.
|
||||
If the list is empty, it implies that the default hub sources are
|
||||
enabled on the cluster unless disableAllDefaultSources is true. If
|
||||
disableAllDefaultSources is true and sources is not empty, the configuration
|
||||
present in sources will take precedence. The list of default hub sources
|
||||
and their current state will always be reflected in the status block.
|
||||
type: array
|
||||
items:
|
||||
description: HubSource is used to specify the hub source and its configuration
|
||||
type: object
|
||||
properties:
|
||||
disabled:
|
||||
description: disabled is used to disable a default hub source
|
||||
on cluster
|
||||
type: boolean
|
||||
name:
|
||||
description: name is the name of one of the default hub sources
|
||||
type: string
|
||||
maxLength: 253
|
||||
minLength: 1
|
||||
status:
|
||||
description: OperatorHubStatus defines the observed state of OperatorHub.
|
||||
The current state of the default hub sources will always be reflected
|
||||
here.
|
||||
type: object
|
||||
properties:
|
||||
sources:
|
||||
description: sources encapsulates the result of applying the configuration
|
||||
for each hub source
|
||||
type: array
|
||||
items:
|
||||
description: HubSourceStatus is used to reflect the current state
|
||||
of applying the configuration to a default source
|
||||
type: object
|
||||
properties:
|
||||
disabled:
|
||||
description: disabled is used to disable a default hub source
|
||||
on cluster
|
||||
type: boolean
|
||||
message:
|
||||
description: message provides more information regarding failures
|
||||
type: string
|
||||
name:
|
||||
description: name is the name of one of the default hub sources
|
||||
type: string
|
||||
maxLength: 253
|
||||
minLength: 1
|
||||
status:
|
||||
description: status indicates success or failure in applying the
|
||||
configuration
|
||||
type: string
|
98
vendor/github.com/openshift/api/config/v1/0000_03_config-operator_01_proxy.crd.yaml
generated
vendored
98
vendor/github.com/openshift/api/config/v1/0000_03_config-operator_01_proxy.crd.yaml
generated
vendored
@ -1,98 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: proxies.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
names:
|
||||
kind: Proxy
|
||||
listKind: ProxyList
|
||||
plural: proxies
|
||||
singular: proxy
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Proxy holds cluster-wide information on how to configure default
|
||||
proxies for the cluster. The canonical name is `cluster`
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: Spec holds user-settable values for the proxy configuration
|
||||
type: object
|
||||
properties:
|
||||
httpProxy:
|
||||
description: httpProxy is the URL of the proxy for HTTP requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
httpsProxy:
|
||||
description: httpsProxy is the URL of the proxy for HTTPS requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
noProxy:
|
||||
description: noProxy is a comma-separated list of hostnames and/or CIDRs
|
||||
for which the proxy should not be used. Empty means unset and will
|
||||
not result in an env var.
|
||||
type: string
|
||||
readinessEndpoints:
|
||||
description: readinessEndpoints is a list of endpoints used to verify
|
||||
readiness of the proxy.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
trustedCA:
|
||||
description: "trustedCA is a reference to a ConfigMap containing a CA
|
||||
certificate bundle used for client egress HTTPS connections. The certificate
|
||||
bundle must be from the CA that signed the proxy's certificate and
|
||||
be signed for everything. The trustedCA field should only be consumed
|
||||
by a proxy validator. The validator is responsible for reading the
|
||||
certificate bundle from required key \"ca-bundle.crt\" and copying
|
||||
it to a ConfigMap named \"trusted-ca-bundle\" in the \"openshift-config-managed\"
|
||||
namespace. The namespace for the ConfigMap referenced by trustedCA
|
||||
is \"openshift-config\". Here is an example ConfigMap (in yaml): \n
|
||||
apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace:
|
||||
openshift-config data: ca-bundle.crt: | -----BEGIN CERTIFICATE-----
|
||||
\ Custom CA certificate bundle. -----END CERTIFICATE-----"
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
httpProxy:
|
||||
description: httpProxy is the URL of the proxy for HTTP requests.
|
||||
type: string
|
||||
httpsProxy:
|
||||
description: httpsProxy is the URL of the proxy for HTTPS requests.
|
||||
type: string
|
||||
noProxy:
|
||||
description: noProxy is a comma-separated list of hostnames and/or CIDRs
|
||||
for which the proxy should not be used.
|
||||
type: string
|
219
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_apiserver.crd.yaml
generated
vendored
219
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_apiserver.crd.yaml
generated
vendored
@ -1,219 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: apiservers.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
names:
|
||||
kind: APIServer
|
||||
singular: apiserver
|
||||
plural: apiservers
|
||||
listKind: APIServerList
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: APIServer holds configuration (like serving certificates, client
|
||||
CA and CORS domains) shared by all API servers in the system, among them especially
|
||||
kube-apiserver and openshift-apiserver. The canonical name of an instance
|
||||
is 'cluster'.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
type: object
|
||||
properties:
|
||||
additionalCORSAllowedOrigins:
|
||||
description: additionalCORSAllowedOrigins lists additional, user-defined
|
||||
regular expressions describing hosts for which the API server allows
|
||||
access using the CORS headers. This may be needed to access the API
|
||||
and the integrated OAuth server from JavaScript applications. The
|
||||
values are regular expressions that correspond to the Golang regular
|
||||
expression language.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
clientCA:
|
||||
description: 'clientCA references a ConfigMap containing a certificate
|
||||
bundle for the signers that will be recognized for incoming client
|
||||
certificates in addition to the operator managed signers. If this
|
||||
is empty, then only operator managed signers are valid. You usually
|
||||
only have to set this if you have your own PKI you wish to honor client
|
||||
certificates from. The ConfigMap must exist in the openshift-config
|
||||
namespace and contain the following required fields: - ConfigMap.Data["ca-bundle.crt"]
|
||||
- CA bundle.'
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
encryption:
|
||||
description: encryption allows the configuration of encryption of resources
|
||||
at the datastore layer.
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
description: "type defines what encryption type should be used to
|
||||
encrypt resources at the datastore layer. When this field is unset
|
||||
(i.e. when it is set to the empty string), identity is implied.
|
||||
The behavior of unset can and will change over time. Even if
|
||||
encryption is enabled by default, the meaning of unset may change
|
||||
to a different encryption type based on changes in best practices.
|
||||
\n When encryption is enabled, all sensitive resources shipped
|
||||
with the platform are encrypted. This list of sensitive resources
|
||||
can and will change over time. The current authoritative list
|
||||
is: \n 1. secrets 2. configmaps 3. routes.route.openshift.io
|
||||
\ 4. oauthaccesstokens.oauth.openshift.io 5. oauthauthorizetokens.oauth.openshift.io"
|
||||
type: string
|
||||
enum:
|
||||
- ""
|
||||
- identity
|
||||
- aescbc
|
||||
servingCerts:
|
||||
description: servingCert is the TLS cert info for serving secure traffic.
|
||||
If not specified, operator managed certificates will be used for serving
|
||||
secure traffic.
|
||||
type: object
|
||||
properties:
|
||||
namedCertificates:
|
||||
description: namedCertificates references secrets containing the
|
||||
TLS cert info for serving secure traffic to specific hostnames.
|
||||
If no named certificates are provided, or no named certificates
|
||||
match the server name as understood by a client, the defaultServingCertificate
|
||||
will be used.
|
||||
type: array
|
||||
items:
|
||||
description: APIServerNamedServingCert maps a server DNS name,
|
||||
as understood by a client, to a certificate.
|
||||
type: object
|
||||
properties:
|
||||
names:
|
||||
description: names is a optional list of explicit DNS names
|
||||
(leading wildcards allowed) that should use this certificate
|
||||
to serve secure traffic. If no names are provided, the implicit
|
||||
names will be extracted from the certificates. Exact names
|
||||
trump over wildcard names. Explicit names defined here trump
|
||||
over extracted implicit names.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
servingCertificate:
|
||||
description: 'servingCertificate references a kubernetes.io/tls
|
||||
type secret containing the TLS cert info for serving secure
|
||||
traffic. The secret must exist in the openshift-config namespace
|
||||
and contain the following required fields: - Secret.Data["tls.key"]
|
||||
- TLS private key. - Secret.Data["tls.crt"] - TLS certificate.'
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
tlsSecurityProfile:
|
||||
description: "tlsSecurityProfile specifies settings for TLS connections
|
||||
for externally exposed servers. \n If unset, a default (which may
|
||||
change between releases) is chosen. Note that only Old and Intermediate
|
||||
profiles are currently supported, and the maximum available MinTLSVersions
|
||||
is VersionTLS12."
|
||||
type: object
|
||||
properties:
|
||||
custom:
|
||||
description: "custom is a user-defined TLS security profile. Be
|
||||
extremely careful using a custom profile as invalid configurations
|
||||
can be catastrophic. An example custom profile looks like this:
|
||||
\n ciphers: - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305
|
||||
\ - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256
|
||||
\ minTLSVersion: TLSv1.1"
|
||||
type: object
|
||||
properties:
|
||||
ciphers:
|
||||
description: "ciphers is used to specify the cipher algorithms
|
||||
that are negotiated during the TLS handshake. Operators may
|
||||
remove entries their operands do not support. For example,
|
||||
to use DES-CBC3-SHA (yaml): \n ciphers: - DES-CBC3-SHA"
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
minTLSVersion:
|
||||
description: "minTLSVersion is used to specify the minimal version
|
||||
of the TLS protocol that is negotiated during the TLS handshake.
|
||||
For example, to use TLS versions 1.1, 1.2 and 1.3 (yaml):
|
||||
\n minTLSVersion: TLSv1.1 \n NOTE: currently the highest
|
||||
minTLSVersion allowed is VersionTLS12"
|
||||
type: string
|
||||
nullable: true
|
||||
intermediate:
|
||||
description: "intermediate is a TLS security profile based on: \n
|
||||
https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
|
||||
\n and looks like this (yaml): \n ciphers: - TLS_AES_128_GCM_SHA256
|
||||
\ - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_POLY1305_SHA256
|
||||
\ - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-RSA-AES128-GCM-SHA256
|
||||
\ - ECDHE-ECDSA-AES256-GCM-SHA384 - ECDHE-RSA-AES256-GCM-SHA384
|
||||
\ - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305
|
||||
\ - DHE-RSA-AES128-GCM-SHA256 - DHE-RSA-AES256-GCM-SHA384
|
||||
\ minTLSVersion: TLSv1.2"
|
||||
type: object
|
||||
nullable: true
|
||||
modern:
|
||||
description: "modern is a TLS security profile based on: \n https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
|
||||
\n and looks like this (yaml): \n ciphers: - TLS_AES_128_GCM_SHA256
|
||||
\ - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_POLY1305_SHA256
|
||||
\ minTLSVersion: TLSv1.3 \n NOTE: Currently unsupported."
|
||||
type: object
|
||||
nullable: true
|
||||
old:
|
||||
description: "old is a TLS security profile based on: \n https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
|
||||
\n and looks like this (yaml): \n ciphers: - TLS_AES_128_GCM_SHA256
|
||||
\ - TLS_AES_256_GCM_SHA384 - TLS_CHACHA20_POLY1305_SHA256
|
||||
\ - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-RSA-AES128-GCM-SHA256
|
||||
\ - ECDHE-ECDSA-AES256-GCM-SHA384 - ECDHE-RSA-AES256-GCM-SHA384
|
||||
\ - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305
|
||||
\ - DHE-RSA-AES128-GCM-SHA256 - DHE-RSA-AES256-GCM-SHA384
|
||||
\ - DHE-RSA-CHACHA20-POLY1305 - ECDHE-ECDSA-AES128-SHA256
|
||||
\ - ECDHE-RSA-AES128-SHA256 - ECDHE-ECDSA-AES128-SHA -
|
||||
ECDHE-RSA-AES128-SHA - ECDHE-ECDSA-AES256-SHA384 - ECDHE-RSA-AES256-SHA384
|
||||
\ - ECDHE-ECDSA-AES256-SHA - ECDHE-RSA-AES256-SHA -
|
||||
DHE-RSA-AES128-SHA256 - DHE-RSA-AES256-SHA256 - AES128-GCM-SHA256
|
||||
\ - AES256-GCM-SHA384 - AES128-SHA256 - AES256-SHA256
|
||||
\ - AES128-SHA - AES256-SHA - DES-CBC3-SHA minTLSVersion:
|
||||
TLSv1.0"
|
||||
type: object
|
||||
nullable: true
|
||||
type:
|
||||
description: "type is one of Old, Intermediate, Modern or Custom.
|
||||
Custom provides the ability to specify individual TLS security
|
||||
profile parameters. Old, Intermediate and Modern are TLS security
|
||||
profiles based on: \n https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
|
||||
\n The profiles are intent based, so they may change over time
|
||||
as new ciphers are developed and existing ciphers are found to
|
||||
be insecure. Depending on precisely which ciphers are available
|
||||
to a process, the list may be reduced. \n Note that the Modern
|
||||
profile is currently not supported because it is not yet well
|
||||
adopted by common software libraries."
|
||||
type: string
|
||||
status:
|
||||
type: object
|
123
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_authentication.crd.yaml
generated
vendored
123
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_authentication.crd.yaml
generated
vendored
@ -1,123 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: authentications.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: Authentication
|
||||
listKind: AuthenticationList
|
||||
plural: authentications
|
||||
singular: authentication
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
subresources:
|
||||
status: {}
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Authentication specifies cluster-wide settings for authentication
|
||||
(like OAuth and webhook token authenticators). The canonical name of an instance
|
||||
is `cluster`.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
oauthMetadata:
|
||||
description: 'oauthMetadata contains the discovery endpoint data for
|
||||
OAuth 2.0 Authorization Server Metadata for an external OAuth server.
|
||||
This discovery document can be viewed from its served location: oc
|
||||
get --raw ''/.well-known/oauth-authorization-server'' For further
|
||||
details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
|
||||
If oauthMetadata.name is non-empty, this value has precedence over
|
||||
any metadata reference stored in status. The key "oauthMetadata" is
|
||||
used to locate the data. If specified and the config map or expected
|
||||
key is not found, no metadata is served. If the specified metadata
|
||||
is not valid, no metadata is served. The namespace for this config
|
||||
map is openshift-config.'
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
type:
|
||||
description: type identifies the cluster managed, user facing authentication
|
||||
mode in use. Specifically, it manages the component that responds
|
||||
to login attempts. The default is IntegratedOAuth.
|
||||
type: string
|
||||
webhookTokenAuthenticators:
|
||||
description: webhookTokenAuthenticators configures remote token reviewers.
|
||||
These remote authentication webhooks can be used to verify bearer
|
||||
tokens via the tokenreviews.authentication.k8s.io REST API. This
|
||||
is required to honor bearer tokens that are provisioned by an external
|
||||
authentication service. The namespace for these secrets is openshift-config.
|
||||
type: array
|
||||
items:
|
||||
description: webhookTokenAuthenticator holds the necessary configuration
|
||||
options for a remote token authenticator
|
||||
type: object
|
||||
properties:
|
||||
kubeConfig:
|
||||
description: 'kubeConfig contains kube config file data which
|
||||
describes how to access the remote webhook service. For further
|
||||
details, see: https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
|
||||
The key "kubeConfig" is used to locate the data. If the secret
|
||||
or expected key is not found, the webhook is not honored. If
|
||||
the specified kube config data is not valid, the webhook is
|
||||
not honored. The namespace for this secret is determined by
|
||||
the point of use.'
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced secret
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
integratedOAuthMetadata:
|
||||
description: 'integratedOAuthMetadata contains the discovery endpoint
|
||||
data for OAuth 2.0 Authorization Server Metadata for the in-cluster
|
||||
integrated OAuth server. This discovery document can be viewed from
|
||||
its served location: oc get --raw ''/.well-known/oauth-authorization-server''
|
||||
For further details, see the IETF Draft: https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
|
||||
This contains the observed value based on cluster state. An explicitly
|
||||
set value in spec.oauthMetadata has precedence over this field. This
|
||||
field has no meaning if authentication spec.type is not set to IntegratedOAuth.
|
||||
The key "oauthMetadata" is used to locate the data. If the config
|
||||
map or expected key is not found, no metadata is served. If the specified
|
||||
metadata is not valid, no metadata is served. The namespace for this
|
||||
config map is openshift-config-managed.'
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
366
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_build.crd.yaml
generated
vendored
366
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_build.crd.yaml
generated
vendored
@ -1,366 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: builds.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
names:
|
||||
kind: Build
|
||||
singular: build
|
||||
plural: builds
|
||||
listKind: BuildList
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: "Build configures the behavior of OpenShift builds for the entire
|
||||
cluster. This includes default settings that can be overridden in BuildConfig
|
||||
objects, and overrides which are applied to all builds. \n The canonical name
|
||||
is \"cluster\""
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: Spec holds user-settable values for the build controller configuration
|
||||
type: object
|
||||
properties:
|
||||
additionalTrustedCA:
|
||||
description: "AdditionalTrustedCA is a reference to a ConfigMap containing
|
||||
additional CAs that should be trusted for image pushes and pulls during
|
||||
builds. The namespace for this config map is openshift-config. \n
|
||||
DEPRECATED: Additional CAs for image pull and push should be set on
|
||||
image.config.openshift.io/cluster instead."
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
buildDefaults:
|
||||
description: BuildDefaults controls the default information for Builds
|
||||
type: object
|
||||
properties:
|
||||
defaultProxy:
|
||||
description: "DefaultProxy contains the default proxy settings for
|
||||
all build operations, including image pull/push and source download.
|
||||
\n Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`,
|
||||
and `NO_PROXY` environment variables in the build config's strategy."
|
||||
type: object
|
||||
properties:
|
||||
httpProxy:
|
||||
description: httpProxy is the URL of the proxy for HTTP requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
httpsProxy:
|
||||
description: httpsProxy is the URL of the proxy for HTTPS requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
noProxy:
|
||||
description: noProxy is a comma-separated list of hostnames
|
||||
and/or CIDRs for which the proxy should not be used. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
readinessEndpoints:
|
||||
description: readinessEndpoints is a list of endpoints used
|
||||
to verify readiness of the proxy.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
trustedCA:
|
||||
description: "trustedCA is a reference to a ConfigMap containing
|
||||
a CA certificate bundle used for client egress HTTPS connections.
|
||||
The certificate bundle must be from the CA that signed the
|
||||
proxy's certificate and be signed for everything. The trustedCA
|
||||
field should only be consumed by a proxy validator. The validator
|
||||
is responsible for reading the certificate bundle from required
|
||||
key \"ca-bundle.crt\" and copying it to a ConfigMap named
|
||||
\"trusted-ca-bundle\" in the \"openshift-config-managed\"
|
||||
namespace. The namespace for the ConfigMap referenced by trustedCA
|
||||
is \"openshift-config\". Here is an example ConfigMap (in
|
||||
yaml): \n apiVersion: v1 kind: ConfigMap metadata: name:
|
||||
user-ca-bundle namespace: openshift-config data: ca-bundle.crt:
|
||||
| -----BEGIN CERTIFICATE----- Custom CA certificate
|
||||
bundle. -----END CERTIFICATE-----"
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
env:
|
||||
description: Env is a set of default environment variables that
|
||||
will be applied to the build if the specified variables do not
|
||||
exist on the build
|
||||
type: array
|
||||
items:
|
||||
description: EnvVar represents an environment variable present
|
||||
in a Container.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: Name of the environment variable. Must be a C_IDENTIFIER.
|
||||
type: string
|
||||
value:
|
||||
description: 'Variable references $(VAR_NAME) are expanded
|
||||
using the previous defined environment variables in the
|
||||
container and any service environment variables. If a variable
|
||||
cannot be resolved, the reference in the input string will
|
||||
be unchanged. The $(VAR_NAME) syntax can be escaped with
|
||||
a double $$, ie: $$(VAR_NAME). Escaped references will never
|
||||
be expanded, regardless of whether the variable exists or
|
||||
not. Defaults to "".'
|
||||
type: string
|
||||
valueFrom:
|
||||
description: Source for the environment variable's value.
|
||||
Cannot be used if value is not empty.
|
||||
type: object
|
||||
properties:
|
||||
configMapKeyRef:
|
||||
description: Selects a key of a ConfigMap.
|
||||
type: object
|
||||
required:
|
||||
- key
|
||||
properties:
|
||||
key:
|
||||
description: The key to select.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
||||
TODO: Add other useful fields. apiVersion, kind,
|
||||
uid?'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the ConfigMap or its
|
||||
key must be defined
|
||||
type: boolean
|
||||
fieldRef:
|
||||
description: 'Selects a field of the pod: supports metadata.name,
|
||||
metadata.namespace, metadata.labels, metadata.annotations,
|
||||
spec.nodeName, spec.serviceAccountName, status.hostIP,
|
||||
status.podIP, status.podIPs.'
|
||||
type: object
|
||||
required:
|
||||
- fieldPath
|
||||
properties:
|
||||
apiVersion:
|
||||
description: Version of the schema the FieldPath is
|
||||
written in terms of, defaults to "v1".
|
||||
type: string
|
||||
fieldPath:
|
||||
description: Path of the field to select in the specified
|
||||
API version.
|
||||
type: string
|
||||
resourceFieldRef:
|
||||
description: 'Selects a resource of the container: only
|
||||
resources limits and requests (limits.cpu, limits.memory,
|
||||
limits.ephemeral-storage, requests.cpu, requests.memory
|
||||
and requests.ephemeral-storage) are currently supported.'
|
||||
type: object
|
||||
required:
|
||||
- resource
|
||||
properties:
|
||||
containerName:
|
||||
description: 'Container name: required for volumes,
|
||||
optional for env vars'
|
||||
type: string
|
||||
divisor:
|
||||
description: Specifies the output format of the exposed
|
||||
resources, defaults to "1"
|
||||
type: string
|
||||
resource:
|
||||
description: 'Required: resource to select'
|
||||
type: string
|
||||
secretKeyRef:
|
||||
description: Selects a key of a secret in the pod's namespace
|
||||
type: object
|
||||
required:
|
||||
- key
|
||||
properties:
|
||||
key:
|
||||
description: The key of the secret to select from. Must
|
||||
be a valid secret key.
|
||||
type: string
|
||||
name:
|
||||
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
||||
TODO: Add other useful fields. apiVersion, kind,
|
||||
uid?'
|
||||
type: string
|
||||
optional:
|
||||
description: Specify whether the Secret or its key
|
||||
must be defined
|
||||
type: boolean
|
||||
gitProxy:
|
||||
description: "GitProxy contains the proxy settings for git operations
|
||||
only. If set, this will override any Proxy settings for all git
|
||||
commands, such as git clone. \n Values that are not set here will
|
||||
be inherited from DefaultProxy."
|
||||
type: object
|
||||
properties:
|
||||
httpProxy:
|
||||
description: httpProxy is the URL of the proxy for HTTP requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
httpsProxy:
|
||||
description: httpsProxy is the URL of the proxy for HTTPS requests. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
noProxy:
|
||||
description: noProxy is a comma-separated list of hostnames
|
||||
and/or CIDRs for which the proxy should not be used. Empty
|
||||
means unset and will not result in an env var.
|
||||
type: string
|
||||
readinessEndpoints:
|
||||
description: readinessEndpoints is a list of endpoints used
|
||||
to verify readiness of the proxy.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
trustedCA:
|
||||
description: "trustedCA is a reference to a ConfigMap containing
|
||||
a CA certificate bundle used for client egress HTTPS connections.
|
||||
The certificate bundle must be from the CA that signed the
|
||||
proxy's certificate and be signed for everything. The trustedCA
|
||||
field should only be consumed by a proxy validator. The validator
|
||||
is responsible for reading the certificate bundle from required
|
||||
key \"ca-bundle.crt\" and copying it to a ConfigMap named
|
||||
\"trusted-ca-bundle\" in the \"openshift-config-managed\"
|
||||
namespace. The namespace for the ConfigMap referenced by trustedCA
|
||||
is \"openshift-config\". Here is an example ConfigMap (in
|
||||
yaml): \n apiVersion: v1 kind: ConfigMap metadata: name:
|
||||
user-ca-bundle namespace: openshift-config data: ca-bundle.crt:
|
||||
| -----BEGIN CERTIFICATE----- Custom CA certificate
|
||||
bundle. -----END CERTIFICATE-----"
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
imageLabels:
|
||||
description: ImageLabels is a list of docker labels that are applied
|
||||
to the resulting image. User can override a default label by providing
|
||||
a label with the same name in their Build/BuildConfig.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
description: Name defines the name of the label. It must have
|
||||
non-zero length.
|
||||
type: string
|
||||
value:
|
||||
description: Value defines the literal value of the label.
|
||||
type: string
|
||||
resources:
|
||||
description: Resources defines resource requirements to execute
|
||||
the build.
|
||||
type: object
|
||||
properties:
|
||||
limits:
|
||||
description: 'Limits describes the maximum amount of compute
|
||||
resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
requests:
|
||||
description: 'Requests describes the minimum amount of compute
|
||||
resources required. If Requests is omitted for a container,
|
||||
it defaults to Limits if that is explicitly specified, otherwise
|
||||
to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
buildOverrides:
|
||||
description: BuildOverrides controls override settings for builds
|
||||
type: object
|
||||
properties:
|
||||
imageLabels:
|
||||
description: ImageLabels is a list of docker labels that are applied
|
||||
to the resulting image. If user provided a label in their Build/BuildConfig
|
||||
with the same name as one in this list, the user's label will
|
||||
be overwritten.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
description: Name defines the name of the label. It must have
|
||||
non-zero length.
|
||||
type: string
|
||||
value:
|
||||
description: Value defines the literal value of the label.
|
||||
type: string
|
||||
nodeSelector:
|
||||
description: NodeSelector is a selector which must be true for the
|
||||
build pod to fit on a node
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
tolerations:
|
||||
description: Tolerations is a list of Tolerations that will override
|
||||
any existing tolerations set on a build pod.
|
||||
type: array
|
||||
items:
|
||||
description: The pod this Toleration is attached to tolerates
|
||||
any taint that matches the triple <key,value,effect> using the
|
||||
matching operator <operator>.
|
||||
type: object
|
||||
properties:
|
||||
effect:
|
||||
description: Effect indicates the taint effect to match. Empty
|
||||
means match all taint effects. When specified, allowed values
|
||||
are NoSchedule, PreferNoSchedule and NoExecute.
|
||||
type: string
|
||||
key:
|
||||
description: Key is the taint key that the toleration applies
|
||||
to. Empty means match all taint keys. If the key is empty,
|
||||
operator must be Exists; this combination means to match
|
||||
all values and all keys.
|
||||
type: string
|
||||
operator:
|
||||
description: Operator represents a key's relationship to the
|
||||
value. Valid operators are Exists and Equal. Defaults to
|
||||
Equal. Exists is equivalent to wildcard for value, so that
|
||||
a pod can tolerate all taints of a particular category.
|
||||
type: string
|
||||
tolerationSeconds:
|
||||
description: TolerationSeconds represents the period of time
|
||||
the toleration (which must be of effect NoExecute, otherwise
|
||||
this field is ignored) tolerates the taint. By default,
|
||||
it is not set, which means tolerate the taint forever (do
|
||||
not evict). Zero and negative values will be treated as
|
||||
0 (evict immediately) by the system.
|
||||
type: integer
|
||||
format: int64
|
||||
value:
|
||||
description: Value is the taint value the toleration matches
|
||||
to. If the operator is Exists, the value should be empty,
|
||||
otherwise just a regular string.
|
||||
type: string
|
70
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_console.crd.yaml
generated
vendored
70
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_console.crd.yaml
generated
vendored
@ -1,70 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: consoles.config.openshift.io
|
||||
spec:
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: Console
|
||||
listKind: ConsoleList
|
||||
plural: consoles
|
||||
singular: console
|
||||
subresources:
|
||||
status: {}
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Console holds cluster-wide configuration for the web console, including
|
||||
the logout URL, and reports the public URL of the console. The canonical name
|
||||
is `cluster`.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
authentication:
|
||||
description: ConsoleAuthentication defines a list of optional configuration
|
||||
for console authentication.
|
||||
type: object
|
||||
properties:
|
||||
logoutRedirect:
|
||||
description: 'An optional, absolute URL to redirect web browsers
|
||||
to after logging out of the console. If not specified, it will
|
||||
redirect to the default login page. This is required when using
|
||||
an identity provider that supports single sign-on (SSO) such as:
|
||||
- OpenID (Keycloak, Azure) - RequestHeader (GSSAPI, SSPI, SAML)
|
||||
- OAuth (GitHub, GitLab, Google) Logging out of the console will
|
||||
destroy the user''s token. The logoutRedirect provides the user
|
||||
the option to perform single logout (SLO) through the identity
|
||||
provider to destroy their single sign-on session.'
|
||||
type: string
|
||||
pattern: ^$|^((https):\/\/?)[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/?))$
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
consoleURL:
|
||||
description: The URL for the console. This will be derived from the
|
||||
host for the route that is created for the console.
|
||||
type: string
|
100
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_dns.crd.yaml
generated
vendored
100
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_dns.crd.yaml
generated
vendored
@ -1,100 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: dnses.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: DNS
|
||||
listKind: DNSList
|
||||
plural: dnses
|
||||
singular: dns
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: DNS holds cluster-wide information about DNS. The canonical name
|
||||
is `cluster`
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
baseDomain:
|
||||
description: "baseDomain is the base domain of the cluster. All managed
|
||||
DNS records will be sub-domains of this base. \n For example, given
|
||||
the base domain `openshift.example.com`, an API server DNS record
|
||||
may be created for `cluster-api.openshift.example.com`. \n Once set,
|
||||
this field cannot be changed."
|
||||
type: string
|
||||
privateZone:
|
||||
description: "privateZone is the location where all the DNS records
|
||||
that are only available internally to the cluster exist. \n If this
|
||||
field is nil, no private records should be created. \n Once set, this
|
||||
field cannot be changed."
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
description: "id is the identifier that can be used to find the
|
||||
DNS hosted zone. \n on AWS zone can be fetched using `ID` as id
|
||||
in [1] on Azure zone can be fetched using `ID` as a pre-determined
|
||||
name in [2], on GCP zone can be fetched using `ID` as a pre-determined
|
||||
name in [3]. \n [1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
|
||||
[2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
|
||||
[3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get"
|
||||
type: string
|
||||
tags:
|
||||
description: "tags can be used to query the DNS hosted zone. \n
|
||||
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone
|
||||
using `Tags` as tag-filters, \n [1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options"
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
publicZone:
|
||||
description: "publicZone is the location where all the DNS records that
|
||||
are publicly accessible to the internet exist. \n If this field is
|
||||
nil, no public records should be created. \n Once set, this field
|
||||
cannot be changed."
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
description: "id is the identifier that can be used to find the
|
||||
DNS hosted zone. \n on AWS zone can be fetched using `ID` as id
|
||||
in [1] on Azure zone can be fetched using `ID` as a pre-determined
|
||||
name in [2], on GCP zone can be fetched using `ID` as a pre-determined
|
||||
name in [3]. \n [1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
|
||||
[2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
|
||||
[3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get"
|
||||
type: string
|
||||
tags:
|
||||
description: "tags can be used to query the DNS hosted zone. \n
|
||||
on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone
|
||||
using `Tags` as tag-filters, \n [1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options"
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
@ -1,76 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: featuregates.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
version: v1
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
names:
|
||||
kind: FeatureGate
|
||||
singular: featuregate
|
||||
plural: featuregates
|
||||
listKind: FeatureGateList
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Feature holds cluster-wide information about feature gates. The
|
||||
canonical name is `cluster`
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
customNoUpgrade:
|
||||
description: customNoUpgrade allows the enabling or disabling of any
|
||||
feature. Turning this feature set on IS NOT SUPPORTED, CANNOT BE UNDONE,
|
||||
and PREVENTS UPGRADES. Because of its nature, this setting cannot
|
||||
be validated. If you have any typos or accidentally apply invalid
|
||||
combinations your cluster may fail in an unrecoverable way. featureSet
|
||||
must equal "CustomNoUpgrade" must be set to use this field.
|
||||
type: object
|
||||
properties:
|
||||
disabled:
|
||||
description: disabled is a list of all feature gates that you want
|
||||
to force off
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enabled:
|
||||
description: enabled is a list of all feature gates that you want
|
||||
to force on
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
nullable: true
|
||||
featureSet:
|
||||
description: featureSet changes the list of features in the cluster. The
|
||||
default is empty. Be very careful adjusting this setting. Turning
|
||||
on or off features may cause irreversible changes in your cluster
|
||||
which cannot be undone.
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
144
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_image.crd.yaml
generated
vendored
144
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_image.crd.yaml
generated
vendored
@ -1,144 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: images.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
names:
|
||||
kind: Image
|
||||
singular: image
|
||||
plural: images
|
||||
listKind: ImageList
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Image governs policies related to imagestream imports and runtime
|
||||
configuration for external registries. It allows cluster admins to configure
|
||||
which registries OpenShift is allowed to import images from, extra CA trust
|
||||
bundles for external registries, and policies to blacklist/whitelist registry
|
||||
hostnames. When exposing OpenShift's image registry to the public, this also
|
||||
lets cluster admins specify the external hostname.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
additionalTrustedCA:
|
||||
description: additionalTrustedCA is a reference to a ConfigMap containing
|
||||
additional CAs that should be trusted during imagestream import, pod
|
||||
image pull, build image pull, and imageregistry pullthrough. The namespace
|
||||
for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
allowedRegistriesForImport:
|
||||
description: allowedRegistriesForImport limits the container image registries
|
||||
that normal users may import images from. Set this list to the registries
|
||||
that you trust to contain valid Docker images and that you want applications
|
||||
to be able to import from. Users with permission to create Images
|
||||
or ImageStreamMappings via the API are not affected by this policy
|
||||
- typically only administrators or system integrations will have those
|
||||
permissions.
|
||||
type: array
|
||||
items:
|
||||
description: RegistryLocation contains a location of the registry
|
||||
specified by the registry domain name. The domain name might include
|
||||
wildcards, like '*' or '??'.
|
||||
type: object
|
||||
properties:
|
||||
domainName:
|
||||
description: domainName specifies a domain name for the registry
|
||||
In case the registry use non-standard (80 or 443) port, the
|
||||
port should be included in the domain name as well.
|
||||
type: string
|
||||
insecure:
|
||||
description: insecure indicates whether the registry is secure
|
||||
(https) or insecure (http) By default (if not specified) the
|
||||
registry is assumed as secure.
|
||||
type: boolean
|
||||
externalRegistryHostnames:
|
||||
description: externalRegistryHostnames provides the hostnames for the
|
||||
default external image registry. The external hostname should be set
|
||||
only when the image registry is exposed externally. The first value
|
||||
is used in 'publicDockerImageRepository' field in ImageStreams. The
|
||||
value must be in "hostname[:port]" format.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
registrySources:
|
||||
description: registrySources contains configuration that determines
|
||||
how the container runtime should treat individual registries when
|
||||
accessing images for builds+pods. (e.g. whether or not to allow insecure
|
||||
access). It does not contain configuration for the internal cluster
|
||||
registry.
|
||||
type: object
|
||||
properties:
|
||||
allowedRegistries:
|
||||
description: "allowedRegistries are whitelisted for image pull/push.
|
||||
All other registries are blocked. \n Only one of BlockedRegistries
|
||||
or AllowedRegistries may be set."
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
blockedRegistries:
|
||||
description: "blockedRegistries are blacklisted from image pull/push.
|
||||
All other registries are allowed. \n Only one of BlockedRegistries
|
||||
or AllowedRegistries may be set."
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
insecureRegistries:
|
||||
description: insecureRegistries are registries which do not have
|
||||
a valid TLS certificates or only support HTTP connections.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
externalRegistryHostnames:
|
||||
description: externalRegistryHostnames provides the hostnames for the
|
||||
default external image registry. The external hostname should be set
|
||||
only when the image registry is exposed externally. The first value
|
||||
is used in 'publicDockerImageRepository' field in ImageStreams. The
|
||||
value must be in "hostname[:port]" format.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
internalRegistryHostname:
|
||||
description: internalRegistryHostname sets the hostname for the default
|
||||
internal image registry. The value must be in "hostname[:port]" format.
|
||||
This value is set by the image registry operator which controls the
|
||||
internal registry hostname. For backward compatibility, users can
|
||||
still use OPENSHIFT_DEFAULT_REGISTRY environment variable but this
|
||||
setting overrides the environment variable.
|
||||
type: string
|
221
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml
generated
vendored
221
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_infrastructure.crd.yaml
generated
vendored
@ -1,221 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: infrastructures.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: Infrastructure
|
||||
listKind: InfrastructureList
|
||||
plural: infrastructures
|
||||
singular: infrastructure
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Infrastructure holds cluster-wide information about Infrastructure. The
|
||||
canonical name is `cluster`
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
cloudConfig:
|
||||
description: cloudConfig is a reference to a ConfigMap containing the
|
||||
cloud provider configuration file. This configuration file is used
|
||||
to configure the Kubernetes cloud provider integration when using
|
||||
the built-in cloud provider integration or the external cloud controller
|
||||
manager. The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
description: Key allows pointing to a specific key/value inside
|
||||
of the configmap. This is useful for logical file references.
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
apiServerInternalURI:
|
||||
description: apiServerInternalURL is a valid URI with scheme(http/https),
|
||||
address and port. apiServerInternalURL can be used by components
|
||||
like kubelets, to contact the Kubernetes API server using the infrastructure
|
||||
provider rather than Kubernetes networking.
|
||||
type: string
|
||||
apiServerURL:
|
||||
description: apiServerURL is a valid URI with scheme(http/https), address
|
||||
and port. apiServerURL can be used by components like the web console
|
||||
to tell users where to find the Kubernetes API.
|
||||
type: string
|
||||
etcdDiscoveryDomain:
|
||||
description: 'etcdDiscoveryDomain is the domain used to fetch the SRV
|
||||
records for discovering etcd servers and clients. For more info: https://github.com/etcd-io/etcd/blob/329be66e8b3f9e2e6af83c123ff89297e49ebd15/Documentation/op-guide/clustering.md#dns-discovery'
|
||||
type: string
|
||||
infrastructureName:
|
||||
description: infrastructureName uniquely identifies a cluster with a
|
||||
human friendly name. Once set it should not be changed. Must be of
|
||||
max length 27 and must have only alphanumeric or hyphen characters.
|
||||
type: string
|
||||
platform:
|
||||
description: "platform is the underlying infrastructure provider for
|
||||
the cluster. \n Deprecated: Use platformStatus.type instead."
|
||||
type: string
|
||||
platformStatus:
|
||||
description: platformStatus holds status information specific to the
|
||||
underlying infrastructure provider.
|
||||
type: object
|
||||
properties:
|
||||
aws:
|
||||
description: AWS contains settings specific to the Amazon Web Services
|
||||
infrastructure provider.
|
||||
type: object
|
||||
properties:
|
||||
region:
|
||||
description: region holds the default AWS region for new AWS
|
||||
resources created by the cluster.
|
||||
type: string
|
||||
azure:
|
||||
description: Azure contains settings specific to the Azure infrastructure
|
||||
provider.
|
||||
type: object
|
||||
properties:
|
||||
networkResourceGroupName:
|
||||
description: networkResourceGroupName is the Resource Group
|
||||
for network resources like the Virtual Network and Subnets
|
||||
used by the cluster. If empty, the value is same as ResourceGroupName.
|
||||
type: string
|
||||
resourceGroupName:
|
||||
description: resourceGroupName is the Resource Group for new
|
||||
Azure resources created for the cluster.
|
||||
type: string
|
||||
baremetal:
|
||||
description: BareMetal contains settings specific to the BareMetal
|
||||
platform.
|
||||
type: object
|
||||
properties:
|
||||
apiServerInternalIP:
|
||||
description: apiServerInternalIP is an IP address to contact
|
||||
the Kubernetes API server that can be used by components inside
|
||||
the cluster, like kubelets using the infrastructure rather
|
||||
than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
points to. It is the IP for a self-hosted load balancer in
|
||||
front of the API servers.
|
||||
type: string
|
||||
ingressIP:
|
||||
description: ingressIP is an external IP which routes to the
|
||||
default ingress controller. The IP is a suitable target of
|
||||
a wildcard DNS record used to resolve default route host names.
|
||||
type: string
|
||||
nodeDNSIP:
|
||||
description: nodeDNSIP is the IP address for the internal DNS
|
||||
used by the nodes. Unlike the one managed by the DNS operator,
|
||||
`NodeDNSIP` provides name resolution for the nodes themselves.
|
||||
There is no DNS-as-a-service for BareMetal deployments. In
|
||||
order to minimize necessary changes to the datacenter DNS,
|
||||
a DNS service is hosted as a static pod to serve those hostnames
|
||||
to the nodes in the cluster.
|
||||
type: string
|
||||
gcp:
|
||||
description: GCP contains settings specific to the Google Cloud
|
||||
Platform infrastructure provider.
|
||||
type: object
|
||||
properties:
|
||||
projectID:
|
||||
description: resourceGroupName is the Project ID for new GCP
|
||||
resources created for the cluster.
|
||||
type: string
|
||||
region:
|
||||
description: region holds the region for new GCP resources created
|
||||
for the cluster.
|
||||
type: string
|
||||
openstack:
|
||||
description: OpenStack contains settings specific to the OpenStack
|
||||
infrastructure provider.
|
||||
type: object
|
||||
properties:
|
||||
apiServerInternalIP:
|
||||
description: apiServerInternalIP is an IP address to contact
|
||||
the Kubernetes API server that can be used by components inside
|
||||
the cluster, like kubelets using the infrastructure rather
|
||||
than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
points to. It is the IP for a self-hosted load balancer in
|
||||
front of the API servers.
|
||||
type: string
|
||||
cloudName:
|
||||
description: cloudName is the name of the desired OpenStack
|
||||
cloud in the client configuration file (`clouds.yaml`).
|
||||
type: string
|
||||
ingressIP:
|
||||
description: ingressIP is an external IP which routes to the
|
||||
default ingress controller. The IP is a suitable target of
|
||||
a wildcard DNS record used to resolve default route host names.
|
||||
type: string
|
||||
nodeDNSIP:
|
||||
description: nodeDNSIP is the IP address for the internal DNS
|
||||
used by the nodes. Unlike the one managed by the DNS operator,
|
||||
`NodeDNSIP` provides name resolution for the nodes themselves.
|
||||
There is no DNS-as-a-service for OpenStack deployments. In
|
||||
order to minimize necessary changes to the datacenter DNS,
|
||||
a DNS service is hosted as a static pod to serve those hostnames
|
||||
to the nodes in the cluster.
|
||||
type: string
|
||||
ovirt:
|
||||
description: Ovirt contains settings specific to the oVirt infrastructure
|
||||
provider.
|
||||
type: object
|
||||
properties:
|
||||
apiServerInternalIP:
|
||||
description: apiServerInternalIP is an IP address to contact
|
||||
the Kubernetes API server that can be used by components inside
|
||||
the cluster, like kubelets using the infrastructure rather
|
||||
than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
points to. It is the IP for a self-hosted load balancer in
|
||||
front of the API servers.
|
||||
type: string
|
||||
ingressIP:
|
||||
description: ingressIP is an external IP which routes to the
|
||||
default ingress controller. The IP is a suitable target of
|
||||
a wildcard DNS record used to resolve default route host names.
|
||||
type: string
|
||||
nodeDNSIP:
|
||||
description: nodeDNSIP is the IP address for the internal DNS
|
||||
used by the nodes. Unlike the one managed by the DNS operator,
|
||||
`NodeDNSIP` provides name resolution for the nodes themselves.
|
||||
There is no DNS-as-a-service for oVirt deployments. In order
|
||||
to minimize necessary changes to the datacenter DNS, a DNS
|
||||
service is hosted as a static pod to serve those hostnames
|
||||
to the nodes in the cluster.
|
||||
type: string
|
||||
type:
|
||||
description: type is the underlying infrastructure provider for
|
||||
the cluster. This value controls whether infrastructure automation
|
||||
such as service load balancers, dynamic volume provisioning, machine
|
||||
creation and deletion, and other integrations are enabled. If
|
||||
None, no infrastructure automation is enabled. Allowed values
|
||||
are "AWS", "Azure", "BareMetal", "GCP", "Libvirt", "OpenStack",
|
||||
"VSphere", "oVirt", and "None". Individual components may not
|
||||
support all platforms, and must handle unrecognized platforms
|
||||
as None if they do not support that platform.
|
||||
type: string
|
55
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_ingress.crd.yaml
generated
vendored
55
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_ingress.crd.yaml
generated
vendored
@ -1,55 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: ingresses.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: Ingress
|
||||
listKind: IngressList
|
||||
plural: ingresses
|
||||
singular: ingress
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Ingress holds cluster-wide information about ingress, including
|
||||
the default ingress domain used for routes. The canonical name is `cluster`.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
domain:
|
||||
description: "domain is used to generate a default host name for a route
|
||||
when the route's host name is empty. The generated host name will
|
||||
follow this pattern: \"<route-name>.<route-namespace>.<domain>\".
|
||||
\n It is also used as the default wildcard domain suffix for ingress.
|
||||
The default ingresscontroller domain will follow this pattern: \"*.<domain>\".
|
||||
\n Once set, changing domain is not currently supported."
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
141
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_network.crd.yaml
generated
vendored
141
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_network.crd.yaml
generated
vendored
@ -1,141 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: networks.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: Network
|
||||
listKind: NetworkList
|
||||
plural: networks
|
||||
singular: network
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: 'Network holds cluster-wide information about Network. The canonical
|
||||
name is `cluster`. It is used to configure the desired network configuration,
|
||||
such as: IP address pools for services/pod IPs, network plugin, etc. Please
|
||||
view network.spec for an explanation on what applies when configuring this
|
||||
resource.'
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration. As a general
|
||||
rule, this SHOULD NOT be read directly. Instead, you should consume the
|
||||
NetworkStatus, as it indicates the currently deployed configuration. Currently,
|
||||
most spec fields are immutable after installation. Please view the individual
|
||||
ones for further details on each.
|
||||
type: object
|
||||
properties:
|
||||
clusterNetwork:
|
||||
description: IP address pool to use for pod IPs. This field is immutable
|
||||
after installation.
|
||||
type: array
|
||||
items:
|
||||
description: ClusterNetworkEntry is a contiguous block of IP addresses
|
||||
from which pod IPs are allocated.
|
||||
type: object
|
||||
properties:
|
||||
cidr:
|
||||
description: The complete block for pod IPs.
|
||||
type: string
|
||||
hostPrefix:
|
||||
description: The size (prefix) of block to allocate to each node.
|
||||
type: integer
|
||||
format: int32
|
||||
minimum: 0
|
||||
externalIP:
|
||||
description: externalIP defines configuration for controllers that affect
|
||||
Service.ExternalIP. If nil, then ExternalIP is not allowed to be set.
|
||||
type: object
|
||||
properties:
|
||||
autoAssignCIDRs:
|
||||
description: autoAssignCIDRs is a list of CIDRs from which to automatically
|
||||
assign Service.ExternalIP. These are assigned when the service
|
||||
is of type LoadBalancer. In general, this is only useful for bare-metal
|
||||
clusters. In Openshift 3.x, this was misleadingly called "IngressIPs".
|
||||
Automatically assigned External IPs are not affected by any ExternalIPPolicy
|
||||
rules. Currently, only one entry may be provided.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
policy:
|
||||
description: policy is a set of restrictions applied to the ExternalIP
|
||||
field. If nil or empty, then ExternalIP is not allowed to be set.
|
||||
type: object
|
||||
properties:
|
||||
allowedCIDRs:
|
||||
description: allowedCIDRs is the list of allowed CIDRs.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
rejectedCIDRs:
|
||||
description: rejectedCIDRs is the list of disallowed CIDRs.
|
||||
These take precedence over allowedCIDRs.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
networkType:
|
||||
description: 'NetworkType is the plugin that is to be deployed (e.g.
|
||||
OpenShiftSDN). This should match a value that the cluster-network-operator
|
||||
understands, or else no networking will be installed. Currently supported
|
||||
values are: - OpenShiftSDN This field is immutable after installation.'
|
||||
type: string
|
||||
serviceNetwork:
|
||||
description: IP address pool for services. Currently, we only support
|
||||
a single entry here. This field is immutable after installation.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
||||
properties:
|
||||
clusterNetwork:
|
||||
description: IP address pool to use for pod IPs.
|
||||
type: array
|
||||
items:
|
||||
description: ClusterNetworkEntry is a contiguous block of IP addresses
|
||||
from which pod IPs are allocated.
|
||||
type: object
|
||||
properties:
|
||||
cidr:
|
||||
description: The complete block for pod IPs.
|
||||
type: string
|
||||
hostPrefix:
|
||||
description: The size (prefix) of block to allocate to each node.
|
||||
type: integer
|
||||
format: int32
|
||||
minimum: 0
|
||||
clusterNetworkMTU:
|
||||
description: ClusterNetworkMTU is the MTU for inter-pod networking.
|
||||
type: integer
|
||||
networkType:
|
||||
description: NetworkType is the plugin that is deployed (e.g. OpenShiftSDN).
|
||||
type: string
|
||||
serviceNetwork:
|
||||
description: IP address pool for services. Currently, we only support
|
||||
a single entry here.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
661
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_oauth.crd.yaml
generated
vendored
661
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_oauth.crd.yaml
generated
vendored
@ -1,661 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: oauths.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
names:
|
||||
kind: OAuth
|
||||
listKind: OAuthList
|
||||
plural: oauths
|
||||
singular: oauth
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
subresources:
|
||||
status: {}
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: OAuth holds cluster-wide information about OAuth. The canonical
|
||||
name is `cluster`. It is used to configure the integrated OAuth server. This
|
||||
configuration is only honored when the top level Authentication config has
|
||||
type set to IntegratedOAuth.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: OAuthSpec contains desired cluster auth configuration
|
||||
type: object
|
||||
properties:
|
||||
identityProviders:
|
||||
description: identityProviders is an ordered list of ways for a user
|
||||
to identify themselves. When this list is empty, no identities are
|
||||
provisioned for users.
|
||||
type: array
|
||||
items:
|
||||
description: IdentityProvider provides identities for users authenticating
|
||||
using credentials
|
||||
type: object
|
||||
properties:
|
||||
basicAuth:
|
||||
description: basicAuth contains configuration options for the
|
||||
BasicAuth IdP
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
tlsClientCert:
|
||||
description: tlsClientCert is an optional reference to a secret
|
||||
by name that contains the PEM-encoded TLS client certificate
|
||||
to present when connecting to the server. The key "tls.crt"
|
||||
is used to locate the data. If specified and the secret
|
||||
or expected key is not found, the identity provider is not
|
||||
honored. If the specified certificate data is not valid,
|
||||
the identity provider is not honored. The namespace for
|
||||
this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
tlsClientKey:
|
||||
description: tlsClientKey is an optional reference to a secret
|
||||
by name that contains the PEM-encoded TLS private key for
|
||||
the client certificate referenced in tlsClientCert. The
|
||||
key "tls.key" is used to locate the data. If specified and
|
||||
the secret or expected key is not found, the identity provider
|
||||
is not honored. If the specified certificate data is not
|
||||
valid, the identity provider is not honored. The namespace
|
||||
for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
url:
|
||||
description: url is the remote URL to connect to
|
||||
type: string
|
||||
github:
|
||||
description: github enables user authentication using GitHub credentials
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
This can only be configured when hostname is set to a non-empty
|
||||
value. The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
clientID:
|
||||
description: clientID is the oauth client ID
|
||||
type: string
|
||||
clientSecret:
|
||||
description: clientSecret is a required reference to the secret
|
||||
by name containing the oauth client secret. The key "clientSecret"
|
||||
is used to locate the data. If the secret or expected key
|
||||
is not found, the identity provider is not honored. The
|
||||
namespace for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
hostname:
|
||||
description: hostname is the optional domain (e.g. "mycompany.com")
|
||||
for use with a hosted instance of GitHub Enterprise. It
|
||||
must match the GitHub Enterprise settings value configured
|
||||
at /setup/settings#hostname.
|
||||
type: string
|
||||
organizations:
|
||||
description: organizations optionally restricts which organizations
|
||||
are allowed to log in
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
teams:
|
||||
description: teams optionally restricts which teams are allowed
|
||||
to log in. Format is <org>/<team>.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
gitlab:
|
||||
description: gitlab enables user authentication using GitLab credentials
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
clientID:
|
||||
description: clientID is the oauth client ID
|
||||
type: string
|
||||
clientSecret:
|
||||
description: clientSecret is a required reference to the secret
|
||||
by name containing the oauth client secret. The key "clientSecret"
|
||||
is used to locate the data. If the secret or expected key
|
||||
is not found, the identity provider is not honored. The
|
||||
namespace for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
url:
|
||||
description: url is the oauth server base URL
|
||||
type: string
|
||||
google:
|
||||
description: google enables user authentication using Google credentials
|
||||
type: object
|
||||
properties:
|
||||
clientID:
|
||||
description: clientID is the oauth client ID
|
||||
type: string
|
||||
clientSecret:
|
||||
description: clientSecret is a required reference to the secret
|
||||
by name containing the oauth client secret. The key "clientSecret"
|
||||
is used to locate the data. If the secret or expected key
|
||||
is not found, the identity provider is not honored. The
|
||||
namespace for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
hostedDomain:
|
||||
description: hostedDomain is the optional Google App domain
|
||||
(e.g. "mycompany.com") to restrict logins to
|
||||
type: string
|
||||
htpasswd:
|
||||
description: htpasswd enables user authentication using an HTPasswd
|
||||
file to validate credentials
|
||||
type: object
|
||||
properties:
|
||||
fileData:
|
||||
description: fileData is a required reference to a secret
|
||||
by name containing the data to use as the htpasswd file.
|
||||
The key "htpasswd" is used to locate the data. If the secret
|
||||
or expected key is not found, the identity provider is not
|
||||
honored. If the specified htpasswd data is not valid, the
|
||||
identity provider is not honored. The namespace for this
|
||||
secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
keystone:
|
||||
description: keystone enables user authentication using keystone
|
||||
password credentials
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
domainName:
|
||||
description: domainName is required for keystone v3
|
||||
type: string
|
||||
tlsClientCert:
|
||||
description: tlsClientCert is an optional reference to a secret
|
||||
by name that contains the PEM-encoded TLS client certificate
|
||||
to present when connecting to the server. The key "tls.crt"
|
||||
is used to locate the data. If specified and the secret
|
||||
or expected key is not found, the identity provider is not
|
||||
honored. If the specified certificate data is not valid,
|
||||
the identity provider is not honored. The namespace for
|
||||
this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
tlsClientKey:
|
||||
description: tlsClientKey is an optional reference to a secret
|
||||
by name that contains the PEM-encoded TLS private key for
|
||||
the client certificate referenced in tlsClientCert. The
|
||||
key "tls.key" is used to locate the data. If specified and
|
||||
the secret or expected key is not found, the identity provider
|
||||
is not honored. If the specified certificate data is not
|
||||
valid, the identity provider is not honored. The namespace
|
||||
for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
url:
|
||||
description: url is the remote URL to connect to
|
||||
type: string
|
||||
ldap:
|
||||
description: ldap enables user authentication using LDAP credentials
|
||||
type: object
|
||||
properties:
|
||||
attributes:
|
||||
description: attributes maps LDAP attributes to identities
|
||||
type: object
|
||||
properties:
|
||||
email:
|
||||
description: email is the list of attributes whose values
|
||||
should be used as the email address. Optional. If unspecified,
|
||||
no email is set for the identity
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
id:
|
||||
description: id is the list of attributes whose values
|
||||
should be used as the user ID. Required. First non-empty
|
||||
attribute is used. At least one attribute is required.
|
||||
If none of the listed attribute have a value, authentication
|
||||
fails. LDAP standard identity attribute is "dn"
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
name:
|
||||
description: name is the list of attributes whose values
|
||||
should be used as the display name. Optional. If unspecified,
|
||||
no display name is set for the identity LDAP standard
|
||||
display name attribute is "cn"
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
preferredUsername:
|
||||
description: preferredUsername is the list of attributes
|
||||
whose values should be used as the preferred username.
|
||||
LDAP standard login attribute is "uid"
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
bindDN:
|
||||
description: bindDN is an optional DN to bind with during
|
||||
the search phase.
|
||||
type: string
|
||||
bindPassword:
|
||||
description: bindPassword is an optional reference to a secret
|
||||
by name containing a password to bind with during the search
|
||||
phase. The key "bindPassword" is used to locate the data.
|
||||
If specified and the secret or expected key is not found,
|
||||
the identity provider is not honored. The namespace for
|
||||
this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
insecure:
|
||||
description: 'insecure, if true, indicates the connection
|
||||
should not use TLS WARNING: Should not be set to `true`
|
||||
with the URL scheme "ldaps://" as "ldaps://" URLs always attempt
|
||||
to connect using TLS, even when `insecure` is set to `true`
|
||||
When `true`, "ldap://" URLS connect insecurely. When `false`,
|
||||
"ldap://" URLs are upgraded to a TLS connection using StartTLS
|
||||
as specified in https://tools.ietf.org/html/rfc2830.'
|
||||
type: boolean
|
||||
url:
|
||||
description: 'url is an RFC 2255 URL which specifies the LDAP
|
||||
search parameters to use. The syntax of the URL is: ldap://host:port/basedn?attribute?scope?filter'
|
||||
type: string
|
||||
mappingMethod:
|
||||
description: mappingMethod determines how identities from this
|
||||
provider are mapped to users Defaults to "claim"
|
||||
type: string
|
||||
name:
|
||||
description: 'name is used to qualify the identities returned
|
||||
by this provider. - It MUST be unique and not shared by any
|
||||
other identity provider used - It MUST be a valid path segment:
|
||||
name cannot equal "." or ".." or contain "/" or "%" or ":" Ref:
|
||||
https://godoc.org/github.com/openshift/origin/pkg/user/apis/user/validation#ValidateIdentityProviderName'
|
||||
type: string
|
||||
openID:
|
||||
description: openID enables user authentication using OpenID credentials
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is an optional reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. The key "ca.crt" is used to locate
|
||||
the data. If specified and the config map or expected key
|
||||
is not found, the identity provider is not honored. If the
|
||||
specified ca data is not valid, the identity provider is
|
||||
not honored. If empty, the default system roots are used.
|
||||
The namespace for this config map is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
claims:
|
||||
description: claims mappings
|
||||
type: object
|
||||
properties:
|
||||
email:
|
||||
description: email is the list of claims whose values
|
||||
should be used as the email address. Optional. If unspecified,
|
||||
no email is set for the identity
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
name:
|
||||
description: name is the list of claims whose values should
|
||||
be used as the display name. Optional. If unspecified,
|
||||
no display name is set for the identity
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
preferredUsername:
|
||||
description: preferredUsername is the list of claims whose
|
||||
values should be used as the preferred username. If
|
||||
unspecified, the preferred username is determined from
|
||||
the value of the sub claim
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
clientID:
|
||||
description: clientID is the oauth client ID
|
||||
type: string
|
||||
clientSecret:
|
||||
description: clientSecret is a required reference to the secret
|
||||
by name containing the oauth client secret. The key "clientSecret"
|
||||
is used to locate the data. If the secret or expected key
|
||||
is not found, the identity provider is not honored. The
|
||||
namespace for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
secret
|
||||
type: string
|
||||
extraAuthorizeParameters:
|
||||
description: extraAuthorizeParameters are any custom parameters
|
||||
to add to the authorize request.
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: string
|
||||
extraScopes:
|
||||
description: extraScopes are any scopes to request in addition
|
||||
to the standard "openid" scope.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
issuer:
|
||||
description: issuer is the URL that the OpenID Provider asserts
|
||||
as its Issuer Identifier. It must use the https scheme with
|
||||
no query or fragment component.
|
||||
type: string
|
||||
requestHeader:
|
||||
description: requestHeader enables user authentication using request
|
||||
header credentials
|
||||
type: object
|
||||
properties:
|
||||
ca:
|
||||
description: ca is a required reference to a config map by
|
||||
name containing the PEM-encoded CA bundle. It is used as
|
||||
a trust anchor to validate the TLS certificate presented
|
||||
by the remote server. Specifically, it allows verification
|
||||
of incoming requests to prevent header spoofing. The key
|
||||
"ca.crt" is used to locate the data. If the config map or
|
||||
expected key is not found, the identity provider is not
|
||||
honored. If the specified ca data is not valid, the identity
|
||||
provider is not honored. The namespace for this config map
|
||||
is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced
|
||||
config map
|
||||
type: string
|
||||
challengeURL:
|
||||
description: challengeURL is a URL to redirect unauthenticated
|
||||
/authorize requests to Unauthenticated requests from OAuth
|
||||
clients which expect WWW-Authenticate challenges will be
|
||||
redirected here. ${url} is replaced with the current URL,
|
||||
escaped to be safe in a query parameter https://www.example.com/sso-login?then=${url}
|
||||
${query} is replaced with the current query string https://www.example.com/auth-proxy/oauth/authorize?${query}
|
||||
Required when challenge is set to true.
|
||||
type: string
|
||||
clientCommonNames:
|
||||
description: clientCommonNames is an optional list of common
|
||||
names to require a match from. If empty, any client certificate
|
||||
validated against the clientCA bundle is considered authoritative.
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
emailHeaders:
|
||||
description: emailHeaders is the set of headers to check for
|
||||
the email address
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
headers:
|
||||
description: headers is the set of headers to check for identity
|
||||
information
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
loginURL:
|
||||
description: loginURL is a URL to redirect unauthenticated
|
||||
/authorize requests to Unauthenticated requests from OAuth
|
||||
clients which expect interactive logins will be redirected
|
||||
here ${url} is replaced with the current URL, escaped to
|
||||
be safe in a query parameter https://www.example.com/sso-login?then=${url}
|
||||
${query} is replaced with the current query string https://www.example.com/auth-proxy/oauth/authorize?${query}
|
||||
Required when login is set to true.
|
||||
type: string
|
||||
nameHeaders:
|
||||
description: nameHeaders is the set of headers to check for
|
||||
the display name
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
preferredUsernameHeaders:
|
||||
description: preferredUsernameHeaders is the set of headers
|
||||
to check for the preferred username
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
type:
|
||||
description: type identifies the identity provider type for this
|
||||
entry.
|
||||
type: string
|
||||
templates:
|
||||
description: templates allow you to customize pages like the login page.
|
||||
type: object
|
||||
properties:
|
||||
error:
|
||||
description: error is the name of a secret that specifies a go template
|
||||
to use to render error pages during the authentication or grant
|
||||
flow. The key "errors.html" is used to locate the template data.
|
||||
If specified and the secret or expected key is not found, the
|
||||
default error page is used. If the specified template is not valid,
|
||||
the default error page is used. If unspecified, the default error
|
||||
page is used. The namespace for this secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced secret
|
||||
type: string
|
||||
login:
|
||||
description: login is the name of a secret that specifies a go template
|
||||
to use to render the login page. The key "login.html" is used
|
||||
to locate the template data. If specified and the secret or expected
|
||||
key is not found, the default login page is used. If the specified
|
||||
template is not valid, the default login page is used. If unspecified,
|
||||
the default login page is used. The namespace for this secret
|
||||
is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced secret
|
||||
type: string
|
||||
providerSelection:
|
||||
description: providerSelection is the name of a secret that specifies
|
||||
a go template to use to render the provider selection page. The
|
||||
key "providers.html" is used to locate the template data. If specified
|
||||
and the secret or expected key is not found, the default provider
|
||||
selection page is used. If the specified template is not valid,
|
||||
the default provider selection page is used. If unspecified, the
|
||||
default provider selection page is used. The namespace for this
|
||||
secret is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced secret
|
||||
type: string
|
||||
tokenConfig:
|
||||
description: tokenConfig contains options for authorization and access
|
||||
tokens
|
||||
type: object
|
||||
properties:
|
||||
accessTokenInactivityTimeoutSeconds:
|
||||
description: 'accessTokenInactivityTimeoutSeconds defines the default
|
||||
token inactivity timeout for tokens granted by any client. The
|
||||
value represents the maximum amount of time that can occur between
|
||||
consecutive uses of the token. Tokens become invalid if they are
|
||||
not used within this temporal window. The user will need to acquire
|
||||
a new token to regain access once a token times out. Valid values
|
||||
are integer values: x < 0 Tokens time out is enabled but tokens
|
||||
never timeout unless configured per client (e.g. `-1`) x = 0 Tokens
|
||||
time out is disabled (default) x > 0 Tokens time out if there
|
||||
is no activity for x seconds The current minimum allowed value
|
||||
for X is 300 (5 minutes)'
|
||||
type: integer
|
||||
format: int32
|
||||
accessTokenMaxAgeSeconds:
|
||||
description: accessTokenMaxAgeSeconds defines the maximum age of
|
||||
access tokens
|
||||
type: integer
|
||||
format: int32
|
||||
status:
|
||||
description: OAuthStatus shows current known state of OAuth server in the
|
||||
cluster
|
||||
type: object
|
63
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_project.crd.yaml
generated
vendored
63
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_project.crd.yaml
generated
vendored
@ -1,63 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: projects.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
names:
|
||||
kind: Project
|
||||
listKind: ProjectList
|
||||
plural: projects
|
||||
singular: project
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Project holds cluster-wide information about Project. The canonical
|
||||
name is `cluster`
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
projectRequestMessage:
|
||||
description: projectRequestMessage is the string presented to a user
|
||||
if they are unable to request a project via the projectrequest api
|
||||
endpoint
|
||||
type: string
|
||||
projectRequestTemplate:
|
||||
description: projectRequestTemplate is the template to use for creating
|
||||
projects in response to projectrequest. This must point to a template
|
||||
in 'openshift-config' namespace. It is optional. If it is not specified,
|
||||
a default template is used.
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced project
|
||||
request template
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
88
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_scheduler.crd.yaml
generated
vendored
88
vendor/github.com/openshift/api/config/v1/0000_10_config-operator_01_scheduler.crd.yaml
generated
vendored
@ -1,88 +0,0 @@
|
||||
apiVersion: apiextensions.k8s.io/v1beta1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
name: schedulers.config.openshift.io
|
||||
spec:
|
||||
group: config.openshift.io
|
||||
scope: Cluster
|
||||
preserveUnknownFields: false
|
||||
names:
|
||||
kind: Scheduler
|
||||
singular: scheduler
|
||||
plural: schedulers
|
||||
listKind: SchedulerList
|
||||
versions:
|
||||
- name: v1
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
"validation":
|
||||
"openAPIV3Schema":
|
||||
description: Scheduler holds cluster-wide config information to run the Kubernetes
|
||||
Scheduler and influence its placement decisions. The canonical name for this
|
||||
config is `cluster`.
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: spec holds user settable values for configuration
|
||||
type: object
|
||||
properties:
|
||||
defaultNodeSelector:
|
||||
description: 'defaultNodeSelector helps set the cluster-wide default
|
||||
node selector to restrict pod placement to specific nodes. This is
|
||||
applied to the pods created in all namespaces without a specified
|
||||
nodeSelector value. For example, defaultNodeSelector: "type=user-node,region=east"
|
||||
would set nodeSelector field in pod spec to "type=user-node,region=east"
|
||||
to all pods created in all namespaces. Namespaces having project-wide
|
||||
node selectors won''t be impacted even if this field is set. This
|
||||
adds an annotation section to the namespace. For example, if a new
|
||||
namespace is created with node-selector=''type=user-node,region=east'',
|
||||
the annotation openshift.io/node-selector: type=user-node,region=east
|
||||
gets added to the project. When the openshift.io/node-selector annotation
|
||||
is set on the project the value is used in preference to the value
|
||||
we are setting for defaultNodeSelector field. For instance, openshift.io/node-selector:
|
||||
"type=user-node,region=west" means that the default of "type=user-node,region=east"
|
||||
set in defaultNodeSelector would not be applied.'
|
||||
type: string
|
||||
mastersSchedulable:
|
||||
description: 'MastersSchedulable allows masters nodes to be schedulable.
|
||||
When this flag is turned on, all the master nodes in the cluster will
|
||||
be made schedulable, so that workload pods can run on them. The default
|
||||
value for this field is false, meaning none of the master nodes are
|
||||
schedulable. Important Note: Once the workload pods start running
|
||||
on the master nodes, extreme care must be taken to ensure that cluster-critical
|
||||
control plane components are not impacted. Please turn on this field
|
||||
after doing due diligence.'
|
||||
type: boolean
|
||||
policy:
|
||||
description: policy is a reference to a ConfigMap containing scheduler
|
||||
policy which has user specified predicates and priorities. If this
|
||||
ConfigMap is not available scheduler will default to use DefaultAlgorithmProvider.
|
||||
The namespace for this configmap is openshift-config.
|
||||
type: object
|
||||
required:
|
||||
- name
|
||||
properties:
|
||||
name:
|
||||
description: name is the metadata.name of the referenced config
|
||||
map
|
||||
type: string
|
||||
status:
|
||||
description: status holds observed values from the cluster. They may not
|
||||
be overridden.
|
||||
type: object
|
8
vendor/github.com/openshift/api/config/v1/doc.go
generated
vendored
8
vendor/github.com/openshift/api/config/v1/doc.go
generated
vendored
@ -1,8 +0,0 @@
|
||||
// +k8s:deepcopy-gen=package,register
|
||||
// +k8s:defaulter-gen=TypeMeta
|
||||
// +k8s:openapi-gen=true
|
||||
|
||||
// +kubebuilder:validation:Optional
|
||||
// +groupName=config.openshift.io
|
||||
// Package v1 is the v1 version of the API.
|
||||
package v1
|
70
vendor/github.com/openshift/api/config/v1/register.go
generated
vendored
70
vendor/github.com/openshift/api/config/v1/register.go
generated
vendored
@ -1,70 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||
)
|
||||
|
||||
var (
|
||||
GroupName = "config.openshift.io"
|
||||
GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
|
||||
schemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
|
||||
// Install is a function which adds this version to a scheme
|
||||
Install = schemeBuilder.AddToScheme
|
||||
|
||||
// SchemeGroupVersion generated code relies on this name
|
||||
// Deprecated
|
||||
SchemeGroupVersion = GroupVersion
|
||||
// AddToScheme exists solely to keep the old generators creating valid code
|
||||
// DEPRECATED
|
||||
AddToScheme = schemeBuilder.AddToScheme
|
||||
)
|
||||
|
||||
// Resource generated code relies on this being here, but it logically belongs to the group
|
||||
// DEPRECATED
|
||||
func Resource(resource string) schema.GroupResource {
|
||||
return schema.GroupResource{Group: GroupName, Resource: resource}
|
||||
}
|
||||
|
||||
// Adds the list of known types to api.Scheme.
|
||||
func addKnownTypes(scheme *runtime.Scheme) error {
|
||||
scheme.AddKnownTypes(GroupVersion,
|
||||
&APIServer{},
|
||||
&APIServerList{},
|
||||
&Authentication{},
|
||||
&AuthenticationList{},
|
||||
&Build{},
|
||||
&BuildList{},
|
||||
&ClusterOperator{},
|
||||
&ClusterOperatorList{},
|
||||
&ClusterVersion{},
|
||||
&ClusterVersionList{},
|
||||
&Console{},
|
||||
&ConsoleList{},
|
||||
&DNS{},
|
||||
&DNSList{},
|
||||
&FeatureGate{},
|
||||
&FeatureGateList{},
|
||||
&Image{},
|
||||
&ImageList{},
|
||||
&Infrastructure{},
|
||||
&InfrastructureList{},
|
||||
&Ingress{},
|
||||
&IngressList{},
|
||||
&Network{},
|
||||
&NetworkList{},
|
||||
&OAuth{},
|
||||
&OAuthList{},
|
||||
&OperatorHub{},
|
||||
&OperatorHubList{},
|
||||
&Project{},
|
||||
&ProjectList{},
|
||||
&Proxy{},
|
||||
&ProxyList{},
|
||||
&Scheduler{},
|
||||
&SchedulerList{},
|
||||
)
|
||||
metav1.AddToGroupVersion(scheme, GroupVersion)
|
||||
return nil
|
||||
}
|
31
vendor/github.com/openshift/api/config/v1/stringsource.go
generated
vendored
31
vendor/github.com/openshift/api/config/v1/stringsource.go
generated
vendored
@ -1,31 +0,0 @@
|
||||
package v1
|
||||
|
||||
import "encoding/json"
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface.
|
||||
// If the value is a string, it sets the Value field of the StringSource.
|
||||
// Otherwise, it is unmarshaled into the StringSourceSpec struct
|
||||
func (s *StringSource) UnmarshalJSON(value []byte) error {
|
||||
// If we can unmarshal to a simple string, just set the value
|
||||
var simpleValue string
|
||||
if err := json.Unmarshal(value, &simpleValue); err == nil {
|
||||
s.Value = simpleValue
|
||||
return nil
|
||||
}
|
||||
|
||||
// Otherwise do the full struct unmarshal
|
||||
return json.Unmarshal(value, &s.StringSourceSpec)
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface.
|
||||
// If the StringSource contains only a string Value (or is empty), it is marshaled as a JSON string.
|
||||
// Otherwise, the StringSourceSpec struct is marshaled as a JSON object.
|
||||
func (s *StringSource) MarshalJSON() ([]byte, error) {
|
||||
// If we have only a cleartext value set, do a simple string marshal
|
||||
if s.StringSourceSpec == (StringSourceSpec{Value: s.Value}) {
|
||||
return json.Marshal(s.Value)
|
||||
}
|
||||
|
||||
// Otherwise do the full struct marshal of the externalized bits
|
||||
return json.Marshal(s.StringSourceSpec)
|
||||
}
|
312
vendor/github.com/openshift/api/config/v1/types.go
generated
vendored
312
vendor/github.com/openshift/api/config/v1/types.go
generated
vendored
@ -1,312 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
)
|
||||
|
||||
// ConfigMapFileReference references a config map in a specific namespace.
|
||||
// The namespace must be specified at the point of use.
|
||||
type ConfigMapFileReference struct {
|
||||
Name string `json:"name"`
|
||||
// Key allows pointing to a specific key/value inside of the configmap. This is useful for logical file references.
|
||||
Key string `json:"key,omitempty"`
|
||||
}
|
||||
|
||||
// ConfigMapNameReference references a config map in a specific namespace.
|
||||
// The namespace must be specified at the point of use.
|
||||
type ConfigMapNameReference struct {
|
||||
// name is the metadata.name of the referenced config map
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// SecretNameReference references a secret in a specific namespace.
|
||||
// The namespace must be specified at the point of use.
|
||||
type SecretNameReference struct {
|
||||
// name is the metadata.name of the referenced secret
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// HTTPServingInfo holds configuration for serving HTTP
|
||||
type HTTPServingInfo struct {
|
||||
// ServingInfo is the HTTP serving information
|
||||
ServingInfo `json:",inline"`
|
||||
// MaxRequestsInFlight is the number of concurrent requests allowed to the server. If zero, no limit.
|
||||
MaxRequestsInFlight int64 `json:"maxRequestsInFlight"`
|
||||
// RequestTimeoutSeconds is the number of seconds before requests are timed out. The default is 60 minutes, if
|
||||
// -1 there is no limit on requests.
|
||||
RequestTimeoutSeconds int64 `json:"requestTimeoutSeconds"`
|
||||
}
|
||||
|
||||
// ServingInfo holds information about serving web pages
|
||||
type ServingInfo struct {
|
||||
// BindAddress is the ip:port to serve on
|
||||
BindAddress string `json:"bindAddress"`
|
||||
// BindNetwork is the type of network to bind to - defaults to "tcp4", accepts "tcp",
|
||||
// "tcp4", and "tcp6"
|
||||
BindNetwork string `json:"bindNetwork"`
|
||||
// CertInfo is the TLS cert info for serving secure traffic.
|
||||
// this is anonymous so that we can inline it for serialization
|
||||
CertInfo `json:",inline"`
|
||||
// ClientCA is the certificate bundle for all the signers that you'll recognize for incoming client certificates
|
||||
// +optional
|
||||
ClientCA string `json:"clientCA,omitempty"`
|
||||
// NamedCertificates is a list of certificates to use to secure requests to specific hostnames
|
||||
NamedCertificates []NamedCertificate `json:"namedCertificates,omitempty"`
|
||||
// MinTLSVersion is the minimum TLS version supported.
|
||||
// Values must match version names from https://golang.org/pkg/crypto/tls/#pkg-constants
|
||||
MinTLSVersion string `json:"minTLSVersion,omitempty"`
|
||||
// CipherSuites contains an overridden list of ciphers for the server to support.
|
||||
// Values must match cipher suite IDs from https://golang.org/pkg/crypto/tls/#pkg-constants
|
||||
CipherSuites []string `json:"cipherSuites,omitempty"`
|
||||
}
|
||||
|
||||
// CertInfo relates a certificate with a private key
|
||||
type CertInfo struct {
|
||||
// CertFile is a file containing a PEM-encoded certificate
|
||||
CertFile string `json:"certFile"`
|
||||
// KeyFile is a file containing a PEM-encoded private key for the certificate specified by CertFile
|
||||
KeyFile string `json:"keyFile"`
|
||||
}
|
||||
|
||||
// NamedCertificate specifies a certificate/key, and the names it should be served for
|
||||
type NamedCertificate struct {
|
||||
// Names is a list of DNS names this certificate should be used to secure
|
||||
// A name can be a normal DNS name, or can contain leading wildcard segments.
|
||||
Names []string `json:"names,omitempty"`
|
||||
// CertInfo is the TLS cert info for serving secure traffic
|
||||
CertInfo `json:",inline"`
|
||||
}
|
||||
|
||||
// LeaderElection provides information to elect a leader
|
||||
type LeaderElection struct {
|
||||
// disable allows leader election to be suspended while allowing a fully defaulted "normal" startup case.
|
||||
Disable bool `json:"disable,omitempty"`
|
||||
// namespace indicates which namespace the resource is in
|
||||
Namespace string `json:"namespace,omitempty"`
|
||||
// name indicates what name to use for the resource
|
||||
Name string `json:"name,omitempty"`
|
||||
|
||||
// leaseDuration is the duration that non-leader candidates will wait
|
||||
// after observing a leadership renewal until attempting to acquire
|
||||
// leadership of a led but unrenewed leader slot. This is effectively the
|
||||
// maximum duration that a leader can be stopped before it is replaced
|
||||
// by another candidate. This is only applicable if leader election is
|
||||
// enabled.
|
||||
// +nullable
|
||||
LeaseDuration metav1.Duration `json:"leaseDuration"`
|
||||
// renewDeadline is the interval between attempts by the acting master to
|
||||
// renew a leadership slot before it stops leading. This must be less
|
||||
// than or equal to the lease duration. This is only applicable if leader
|
||||
// election is enabled.
|
||||
// +nullable
|
||||
RenewDeadline metav1.Duration `json:"renewDeadline"`
|
||||
// retryPeriod is the duration the clients should wait between attempting
|
||||
// acquisition and renewal of a leadership. This is only applicable if
|
||||
// leader election is enabled.
|
||||
// +nullable
|
||||
RetryPeriod metav1.Duration `json:"retryPeriod"`
|
||||
}
|
||||
|
||||
// StringSource allows specifying a string inline, or externally via env var or file.
|
||||
// When it contains only a string value, it marshals to a simple JSON string.
|
||||
type StringSource struct {
|
||||
// StringSourceSpec specifies the string value, or external location
|
||||
StringSourceSpec `json:",inline"`
|
||||
}
|
||||
|
||||
// StringSourceSpec specifies a string value, or external location
|
||||
type StringSourceSpec struct {
|
||||
// Value specifies the cleartext value, or an encrypted value if keyFile is specified.
|
||||
Value string `json:"value"`
|
||||
|
||||
// Env specifies an envvar containing the cleartext value, or an encrypted value if the keyFile is specified.
|
||||
Env string `json:"env"`
|
||||
|
||||
// File references a file containing the cleartext value, or an encrypted value if a keyFile is specified.
|
||||
File string `json:"file"`
|
||||
|
||||
// KeyFile references a file containing the key to use to decrypt the value.
|
||||
KeyFile string `json:"keyFile"`
|
||||
}
|
||||
|
||||
// RemoteConnectionInfo holds information necessary for establishing a remote connection
|
||||
type RemoteConnectionInfo struct {
|
||||
// URL is the remote URL to connect to
|
||||
URL string `json:"url"`
|
||||
// CA is the CA for verifying TLS connections
|
||||
CA string `json:"ca"`
|
||||
// CertInfo is the TLS client cert information to present
|
||||
// this is anonymous so that we can inline it for serialization
|
||||
CertInfo `json:",inline"`
|
||||
}
|
||||
|
||||
type AdmissionConfig struct {
|
||||
PluginConfig map[string]AdmissionPluginConfig `json:"pluginConfig,omitempty"`
|
||||
|
||||
// enabledPlugins is a list of admission plugins that must be on in addition to the default list.
|
||||
// Some admission plugins are disabled by default, but certain configurations require them. This is fairly uncommon
|
||||
// and can result in performance penalties and unexpected behavior.
|
||||
EnabledAdmissionPlugins []string `json:"enabledPlugins,omitempty"`
|
||||
|
||||
// disabledPlugins is a list of admission plugins that must be off. Putting something in this list
|
||||
// is almost always a mistake and likely to result in cluster instability.
|
||||
DisabledAdmissionPlugins []string `json:"disabledPlugins,omitempty"`
|
||||
}
|
||||
|
||||
// AdmissionPluginConfig holds the necessary configuration options for admission plugins
|
||||
type AdmissionPluginConfig struct {
|
||||
// Location is the path to a configuration file that contains the plugin's
|
||||
// configuration
|
||||
Location string `json:"location"`
|
||||
|
||||
// Configuration is an embedded configuration object to be used as the plugin's
|
||||
// configuration. If present, it will be used instead of the path to the configuration file.
|
||||
// +nullable
|
||||
// +kubebuilder:pruning:PreserveUnknownFields
|
||||
Configuration runtime.RawExtension `json:"configuration"`
|
||||
}
|
||||
|
||||
type LogFormatType string
|
||||
|
||||
type WebHookModeType string
|
||||
|
||||
const (
|
||||
// LogFormatLegacy saves event in 1-line text format.
|
||||
LogFormatLegacy LogFormatType = "legacy"
|
||||
// LogFormatJson saves event in structured json format.
|
||||
LogFormatJson LogFormatType = "json"
|
||||
|
||||
// WebHookModeBatch indicates that the webhook should buffer audit events
|
||||
// internally, sending batch updates either once a certain number of
|
||||
// events have been received or a certain amount of time has passed.
|
||||
WebHookModeBatch WebHookModeType = "batch"
|
||||
// WebHookModeBlocking causes the webhook to block on every attempt to process
|
||||
// a set of events. This causes requests to the API server to wait for a
|
||||
// round trip to the external audit service before sending a response.
|
||||
WebHookModeBlocking WebHookModeType = "blocking"
|
||||
)
|
||||
|
||||
// AuditConfig holds configuration for the audit capabilities
|
||||
type AuditConfig struct {
|
||||
// If this flag is set, audit log will be printed in the logs.
|
||||
// The logs contains, method, user and a requested URL.
|
||||
Enabled bool `json:"enabled"`
|
||||
// All requests coming to the apiserver will be logged to this file.
|
||||
AuditFilePath string `json:"auditFilePath"`
|
||||
// Maximum number of days to retain old log files based on the timestamp encoded in their filename.
|
||||
MaximumFileRetentionDays int32 `json:"maximumFileRetentionDays"`
|
||||
// Maximum number of old log files to retain.
|
||||
MaximumRetainedFiles int32 `json:"maximumRetainedFiles"`
|
||||
// Maximum size in megabytes of the log file before it gets rotated. Defaults to 100MB.
|
||||
MaximumFileSizeMegabytes int32 `json:"maximumFileSizeMegabytes"`
|
||||
|
||||
// PolicyFile is a path to the file that defines the audit policy configuration.
|
||||
PolicyFile string `json:"policyFile"`
|
||||
// PolicyConfiguration is an embedded policy configuration object to be used
|
||||
// as the audit policy configuration. If present, it will be used instead of
|
||||
// the path to the policy file.
|
||||
// +nullable
|
||||
// +kubebuilder:pruning:PreserveUnknownFields
|
||||
PolicyConfiguration runtime.RawExtension `json:"policyConfiguration"`
|
||||
|
||||
// Format of saved audits (legacy or json).
|
||||
LogFormat LogFormatType `json:"logFormat"`
|
||||
|
||||
// Path to a .kubeconfig formatted file that defines the audit webhook configuration.
|
||||
WebHookKubeConfig string `json:"webHookKubeConfig"`
|
||||
// Strategy for sending audit events (block or batch).
|
||||
WebHookMode WebHookModeType `json:"webHookMode"`
|
||||
}
|
||||
|
||||
// EtcdConnectionInfo holds information necessary for connecting to an etcd server
|
||||
type EtcdConnectionInfo struct {
|
||||
// URLs are the URLs for etcd
|
||||
URLs []string `json:"urls,omitempty"`
|
||||
// CA is a file containing trusted roots for the etcd server certificates
|
||||
CA string `json:"ca"`
|
||||
// CertInfo is the TLS client cert information for securing communication to etcd
|
||||
// this is anonymous so that we can inline it for serialization
|
||||
CertInfo `json:",inline"`
|
||||
}
|
||||
|
||||
type EtcdStorageConfig struct {
|
||||
EtcdConnectionInfo `json:",inline"`
|
||||
|
||||
// StoragePrefix is the path within etcd that the OpenShift resources will
|
||||
// be rooted under. This value, if changed, will mean existing objects in etcd will
|
||||
// no longer be located.
|
||||
StoragePrefix string `json:"storagePrefix"`
|
||||
}
|
||||
|
||||
// GenericAPIServerConfig is an inline-able struct for aggregated apiservers that need to store data in etcd
|
||||
type GenericAPIServerConfig struct {
|
||||
// servingInfo describes how to start serving
|
||||
ServingInfo HTTPServingInfo `json:"servingInfo"`
|
||||
|
||||
// corsAllowedOrigins
|
||||
CORSAllowedOrigins []string `json:"corsAllowedOrigins"`
|
||||
|
||||
// auditConfig describes how to configure audit information
|
||||
AuditConfig AuditConfig `json:"auditConfig"`
|
||||
|
||||
// storageConfig contains information about how to use
|
||||
StorageConfig EtcdStorageConfig `json:"storageConfig"`
|
||||
|
||||
// admissionConfig holds information about how to configure admission.
|
||||
AdmissionConfig AdmissionConfig `json:"admission"`
|
||||
|
||||
KubeClientConfig KubeClientConfig `json:"kubeClientConfig"`
|
||||
}
|
||||
|
||||
type KubeClientConfig struct {
|
||||
// kubeConfig is a .kubeconfig filename for going to the owning kube-apiserver. Empty uses an in-cluster-config
|
||||
KubeConfig string `json:"kubeConfig"`
|
||||
|
||||
// connectionOverrides specifies client overrides for system components to loop back to this master.
|
||||
ConnectionOverrides ClientConnectionOverrides `json:"connectionOverrides"`
|
||||
}
|
||||
|
||||
type ClientConnectionOverrides struct {
|
||||
// acceptContentTypes defines the Accept header sent by clients when connecting to a server, overriding the
|
||||
// default value of 'application/json'. This field will control all connections to the server used by a particular
|
||||
// client.
|
||||
AcceptContentTypes string `json:"acceptContentTypes"`
|
||||
// contentType is the content type used when sending data to the server from this client.
|
||||
ContentType string `json:"contentType"`
|
||||
|
||||
// qps controls the number of queries per second allowed for this connection.
|
||||
QPS float32 `json:"qps"`
|
||||
// burst allows extra queries to accumulate when a client is exceeding its rate.
|
||||
Burst int32 `json:"burst"`
|
||||
}
|
||||
|
||||
// GenericControllerConfig provides information to configure a controller
|
||||
type GenericControllerConfig struct {
|
||||
// ServingInfo is the HTTP serving information for the controller's endpoints
|
||||
ServingInfo HTTPServingInfo `json:"servingInfo"`
|
||||
|
||||
// leaderElection provides information to elect a leader. Only override this if you have a specific need
|
||||
LeaderElection LeaderElection `json:"leaderElection"`
|
||||
|
||||
// authentication allows configuration of authentication for the endpoints
|
||||
Authentication DelegatedAuthentication `json:"authentication"`
|
||||
// authorization allows configuration of authentication for the endpoints
|
||||
Authorization DelegatedAuthorization `json:"authorization"`
|
||||
}
|
||||
|
||||
// DelegatedAuthentication allows authentication to be disabled.
|
||||
type DelegatedAuthentication struct {
|
||||
// disabled indicates that authentication should be disabled. By default it will use delegated authentication.
|
||||
Disabled bool `json:"disabled,omitempty"`
|
||||
}
|
||||
|
||||
// DelegatedAuthorization allows authorization to be disabled.
|
||||
type DelegatedAuthorization struct {
|
||||
// disabled indicates that authorization should be disabled. By default it will use delegated authorization.
|
||||
Disabled bool `json:"disabled,omitempty"`
|
||||
}
|
118
vendor/github.com/openshift/api/config/v1/types_apiserver.go
generated
vendored
118
vendor/github.com/openshift/api/config/v1/types_apiserver.go
generated
vendored
@ -1,118 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// APIServer holds configuration (like serving certificates, client CA and CORS domains)
|
||||
// shared by all API servers in the system, among them especially kube-apiserver
|
||||
// and openshift-apiserver. The canonical name of an instance is 'cluster'.
|
||||
type APIServer struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec APIServerSpec `json:"spec"`
|
||||
// +optional
|
||||
Status APIServerStatus `json:"status"`
|
||||
}
|
||||
|
||||
type APIServerSpec struct {
|
||||
// servingCert is the TLS cert info for serving secure traffic. If not specified, operator managed certificates
|
||||
// will be used for serving secure traffic.
|
||||
// +optional
|
||||
ServingCerts APIServerServingCerts `json:"servingCerts"`
|
||||
// clientCA references a ConfigMap containing a certificate bundle for the signers that will be recognized for
|
||||
// incoming client certificates in addition to the operator managed signers. If this is empty, then only operator managed signers are valid.
|
||||
// You usually only have to set this if you have your own PKI you wish to honor client certificates from.
|
||||
// The ConfigMap must exist in the openshift-config namespace and contain the following required fields:
|
||||
// - ConfigMap.Data["ca-bundle.crt"] - CA bundle.
|
||||
// +optional
|
||||
ClientCA ConfigMapNameReference `json:"clientCA"`
|
||||
// additionalCORSAllowedOrigins lists additional, user-defined regular expressions describing hosts for which the
|
||||
// API server allows access using the CORS headers. This may be needed to access the API and the integrated OAuth
|
||||
// server from JavaScript applications.
|
||||
// The values are regular expressions that correspond to the Golang regular expression language.
|
||||
// +optional
|
||||
AdditionalCORSAllowedOrigins []string `json:"additionalCORSAllowedOrigins,omitempty"`
|
||||
// encryption allows the configuration of encryption of resources at the datastore layer.
|
||||
// +optional
|
||||
Encryption APIServerEncryption `json:"encryption"`
|
||||
// tlsSecurityProfile specifies settings for TLS connections for externally exposed servers.
|
||||
//
|
||||
// If unset, a default (which may change between releases) is chosen. Note that only Old and
|
||||
// Intermediate profiles are currently supported, and the maximum available MinTLSVersions
|
||||
// is VersionTLS12.
|
||||
// +optional
|
||||
TLSSecurityProfile *TLSSecurityProfile `json:"tlsSecurityProfile,omitempty"`
|
||||
}
|
||||
|
||||
type APIServerServingCerts struct {
|
||||
// namedCertificates references secrets containing the TLS cert info for serving secure traffic to specific hostnames.
|
||||
// If no named certificates are provided, or no named certificates match the server name as understood by a client,
|
||||
// the defaultServingCertificate will be used.
|
||||
// +optional
|
||||
NamedCertificates []APIServerNamedServingCert `json:"namedCertificates,omitempty"`
|
||||
}
|
||||
|
||||
// APIServerNamedServingCert maps a server DNS name, as understood by a client, to a certificate.
|
||||
type APIServerNamedServingCert struct {
|
||||
// names is a optional list of explicit DNS names (leading wildcards allowed) that should use this certificate to
|
||||
// serve secure traffic. If no names are provided, the implicit names will be extracted from the certificates.
|
||||
// Exact names trump over wildcard names. Explicit names defined here trump over extracted implicit names.
|
||||
// +optional
|
||||
Names []string `json:"names,omitempty"`
|
||||
// servingCertificate references a kubernetes.io/tls type secret containing the TLS cert info for serving secure traffic.
|
||||
// The secret must exist in the openshift-config namespace and contain the following required fields:
|
||||
// - Secret.Data["tls.key"] - TLS private key.
|
||||
// - Secret.Data["tls.crt"] - TLS certificate.
|
||||
ServingCertificate SecretNameReference `json:"servingCertificate"`
|
||||
}
|
||||
|
||||
type APIServerEncryption struct {
|
||||
// type defines what encryption type should be used to encrypt resources at the datastore layer.
|
||||
// When this field is unset (i.e. when it is set to the empty string), identity is implied.
|
||||
// The behavior of unset can and will change over time. Even if encryption is enabled by default,
|
||||
// the meaning of unset may change to a different encryption type based on changes in best practices.
|
||||
//
|
||||
// When encryption is enabled, all sensitive resources shipped with the platform are encrypted.
|
||||
// This list of sensitive resources can and will change over time. The current authoritative list is:
|
||||
//
|
||||
// 1. secrets
|
||||
// 2. configmaps
|
||||
// 3. routes.route.openshift.io
|
||||
// 4. oauthaccesstokens.oauth.openshift.io
|
||||
// 5. oauthauthorizetokens.oauth.openshift.io
|
||||
//
|
||||
// +unionDiscriminator
|
||||
// +optional
|
||||
Type EncryptionType `json:"type,omitempty"`
|
||||
}
|
||||
|
||||
// +kubebuilder:validation:Enum="";identity;aescbc
|
||||
type EncryptionType string
|
||||
|
||||
const (
|
||||
// identity refers to a type where no encryption is performed at the datastore layer.
|
||||
// Resources are written as-is without encryption.
|
||||
EncryptionTypeIdentity EncryptionType = "identity"
|
||||
|
||||
// aescbc refers to a type where AES-CBC with PKCS#7 padding and a 32-byte key
|
||||
// is used to perform encryption at the datastore layer.
|
||||
EncryptionTypeAESCBC EncryptionType = "aescbc"
|
||||
)
|
||||
|
||||
type APIServerStatus struct {
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type APIServerList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
Items []APIServer `json:"items"`
|
||||
}
|
118
vendor/github.com/openshift/api/config/v1/types_authentication.go
generated
vendored
118
vendor/github.com/openshift/api/config/v1/types_authentication.go
generated
vendored
@ -1,118 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Authentication specifies cluster-wide settings for authentication (like OAuth and
|
||||
// webhook token authenticators). The canonical name of an instance is `cluster`.
|
||||
type Authentication struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec AuthenticationSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status AuthenticationStatus `json:"status"`
|
||||
}
|
||||
|
||||
type AuthenticationSpec struct {
|
||||
// type identifies the cluster managed, user facing authentication mode in use.
|
||||
// Specifically, it manages the component that responds to login attempts.
|
||||
// The default is IntegratedOAuth.
|
||||
// +optional
|
||||
Type AuthenticationType `json:"type"`
|
||||
|
||||
// oauthMetadata contains the discovery endpoint data for OAuth 2.0
|
||||
// Authorization Server Metadata for an external OAuth server.
|
||||
// This discovery document can be viewed from its served location:
|
||||
// oc get --raw '/.well-known/oauth-authorization-server'
|
||||
// For further details, see the IETF Draft:
|
||||
// https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
|
||||
// If oauthMetadata.name is non-empty, this value has precedence
|
||||
// over any metadata reference stored in status.
|
||||
// The key "oauthMetadata" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, no metadata is served.
|
||||
// If the specified metadata is not valid, no metadata is served.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
OAuthMetadata ConfigMapNameReference `json:"oauthMetadata"`
|
||||
|
||||
// webhookTokenAuthenticators configures remote token reviewers.
|
||||
// These remote authentication webhooks can be used to verify bearer tokens
|
||||
// via the tokenreviews.authentication.k8s.io REST API. This is required to
|
||||
// honor bearer tokens that are provisioned by an external authentication service.
|
||||
// The namespace for these secrets is openshift-config.
|
||||
// +optional
|
||||
WebhookTokenAuthenticators []WebhookTokenAuthenticator `json:"webhookTokenAuthenticators,omitempty"`
|
||||
}
|
||||
|
||||
type AuthenticationStatus struct {
|
||||
// integratedOAuthMetadata contains the discovery endpoint data for OAuth 2.0
|
||||
// Authorization Server Metadata for the in-cluster integrated OAuth server.
|
||||
// This discovery document can be viewed from its served location:
|
||||
// oc get --raw '/.well-known/oauth-authorization-server'
|
||||
// For further details, see the IETF Draft:
|
||||
// https://tools.ietf.org/html/draft-ietf-oauth-discovery-04#section-2
|
||||
// This contains the observed value based on cluster state.
|
||||
// An explicitly set value in spec.oauthMetadata has precedence over this field.
|
||||
// This field has no meaning if authentication spec.type is not set to IntegratedOAuth.
|
||||
// The key "oauthMetadata" is used to locate the data.
|
||||
// If the config map or expected key is not found, no metadata is served.
|
||||
// If the specified metadata is not valid, no metadata is served.
|
||||
// The namespace for this config map is openshift-config-managed.
|
||||
IntegratedOAuthMetadata ConfigMapNameReference `json:"integratedOAuthMetadata"`
|
||||
|
||||
// TODO if we add support for an in-cluster operator managed Keycloak instance
|
||||
// KeycloakOAuthMetadata ConfigMapNameReference `json:"keycloakOAuthMetadata"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type AuthenticationList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Authentication `json:"items"`
|
||||
}
|
||||
|
||||
type AuthenticationType string
|
||||
|
||||
const (
|
||||
// None means that no cluster managed authentication system is in place.
|
||||
// Note that user login will only work if a manually configured system is in place and
|
||||
// referenced in authentication spec via oauthMetadata and webhookTokenAuthenticators.
|
||||
AuthenticationTypeNone AuthenticationType = "None"
|
||||
|
||||
// IntegratedOAuth refers to the cluster managed OAuth server.
|
||||
// It is configured via the top level OAuth config.
|
||||
AuthenticationTypeIntegratedOAuth AuthenticationType = "IntegratedOAuth"
|
||||
|
||||
// TODO if we add support for an in-cluster operator managed Keycloak instance
|
||||
// AuthenticationTypeKeycloak AuthenticationType = "Keycloak"
|
||||
)
|
||||
|
||||
// webhookTokenAuthenticator holds the necessary configuration options for a remote token authenticator
|
||||
type WebhookTokenAuthenticator struct {
|
||||
// kubeConfig contains kube config file data which describes how to access the remote webhook service.
|
||||
// For further details, see:
|
||||
// https://kubernetes.io/docs/reference/access-authn-authz/authentication/#webhook-token-authentication
|
||||
// The key "kubeConfig" is used to locate the data.
|
||||
// If the secret or expected key is not found, the webhook is not honored.
|
||||
// If the specified kube config data is not valid, the webhook is not honored.
|
||||
// The namespace for this secret is determined by the point of use.
|
||||
KubeConfig SecretNameReference `json:"kubeConfig"`
|
||||
}
|
||||
|
||||
const (
|
||||
// OAuthMetadataKey is the key for the oauth authorization server metadata
|
||||
OAuthMetadataKey = "oauthMetadata"
|
||||
|
||||
// KubeConfigKey is the key for the kube config file data in a secret
|
||||
KubeConfigKey = "kubeConfig"
|
||||
)
|
109
vendor/github.com/openshift/api/config/v1/types_build.go
generated
vendored
109
vendor/github.com/openshift/api/config/v1/types_build.go
generated
vendored
@ -1,109 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Build configures the behavior of OpenShift builds for the entire cluster.
|
||||
// This includes default settings that can be overridden in BuildConfig objects, and overrides which are applied to all builds.
|
||||
//
|
||||
// The canonical name is "cluster"
|
||||
type Build struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec holds user-settable values for the build controller configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec BuildSpec `json:"spec"`
|
||||
}
|
||||
|
||||
type BuildSpec struct {
|
||||
// AdditionalTrustedCA is a reference to a ConfigMap containing additional CAs that
|
||||
// should be trusted for image pushes and pulls during builds.
|
||||
// The namespace for this config map is openshift-config.
|
||||
//
|
||||
// DEPRECATED: Additional CAs for image pull and push should be set on
|
||||
// image.config.openshift.io/cluster instead.
|
||||
//
|
||||
// +optional
|
||||
AdditionalTrustedCA ConfigMapNameReference `json:"additionalTrustedCA"`
|
||||
// BuildDefaults controls the default information for Builds
|
||||
// +optional
|
||||
BuildDefaults BuildDefaults `json:"buildDefaults"`
|
||||
// BuildOverrides controls override settings for builds
|
||||
// +optional
|
||||
BuildOverrides BuildOverrides `json:"buildOverrides"`
|
||||
}
|
||||
|
||||
type BuildDefaults struct {
|
||||
// DefaultProxy contains the default proxy settings for all build operations, including image pull/push
|
||||
// and source download.
|
||||
//
|
||||
// Values can be overrode by setting the `HTTP_PROXY`, `HTTPS_PROXY`, and `NO_PROXY` environment variables
|
||||
// in the build config's strategy.
|
||||
// +optional
|
||||
DefaultProxy *ProxySpec `json:"defaultProxy,omitempty"`
|
||||
|
||||
// GitProxy contains the proxy settings for git operations only. If set, this will override
|
||||
// any Proxy settings for all git commands, such as git clone.
|
||||
//
|
||||
// Values that are not set here will be inherited from DefaultProxy.
|
||||
// +optional
|
||||
GitProxy *ProxySpec `json:"gitProxy,omitempty"`
|
||||
|
||||
// Env is a set of default environment variables that will be applied to the
|
||||
// build if the specified variables do not exist on the build
|
||||
// +optional
|
||||
Env []corev1.EnvVar `json:"env,omitempty"`
|
||||
|
||||
// ImageLabels is a list of docker labels that are applied to the resulting image.
|
||||
// User can override a default label by providing a label with the same name in their
|
||||
// Build/BuildConfig.
|
||||
// +optional
|
||||
ImageLabels []ImageLabel `json:"imageLabels,omitempty"`
|
||||
|
||||
// Resources defines resource requirements to execute the build.
|
||||
// +optional
|
||||
Resources corev1.ResourceRequirements `json:"resources"`
|
||||
}
|
||||
|
||||
type ImageLabel struct {
|
||||
// Name defines the name of the label. It must have non-zero length.
|
||||
Name string `json:"name"`
|
||||
|
||||
// Value defines the literal value of the label.
|
||||
// +optional
|
||||
Value string `json:"value,omitempty"`
|
||||
}
|
||||
|
||||
type BuildOverrides struct {
|
||||
// ImageLabels is a list of docker labels that are applied to the resulting image.
|
||||
// If user provided a label in their Build/BuildConfig with the same name as one in this
|
||||
// list, the user's label will be overwritten.
|
||||
// +optional
|
||||
ImageLabels []ImageLabel `json:"imageLabels,omitempty"`
|
||||
|
||||
// NodeSelector is a selector which must be true for the build pod to fit on a node
|
||||
// +optional
|
||||
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
|
||||
|
||||
// Tolerations is a list of Tolerations that will override any existing
|
||||
// tolerations set on a build pod.
|
||||
// +optional
|
||||
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type BuildList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Build `json:"items"`
|
||||
}
|
184
vendor/github.com/openshift/api/config/v1/types_cluster_operator.go
generated
vendored
184
vendor/github.com/openshift/api/config/v1/types_cluster_operator.go
generated
vendored
@ -1,184 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||
)
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// ClusterOperator is the Custom Resource object which holds the current state
|
||||
// of an operator. This object is used by operators to convey their state to
|
||||
// the rest of the cluster.
|
||||
type ClusterOperator struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata"`
|
||||
|
||||
// spec holds configuration that could apply to any operator.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ClusterOperatorSpec `json:"spec"`
|
||||
|
||||
// status holds the information about the state of an operator. It is consistent with status information across
|
||||
// the Kubernetes ecosystem.
|
||||
// +optional
|
||||
Status ClusterOperatorStatus `json:"status"`
|
||||
}
|
||||
|
||||
// ClusterOperatorSpec is empty for now, but you could imagine holding information like "pause".
|
||||
type ClusterOperatorSpec struct {
|
||||
}
|
||||
|
||||
// ClusterOperatorStatus provides information about the status of the operator.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type ClusterOperatorStatus struct {
|
||||
// conditions describes the state of the operator's managed and monitored components.
|
||||
// +patchMergeKey=type
|
||||
// +patchStrategy=merge
|
||||
// +optional
|
||||
Conditions []ClusterOperatorStatusCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
|
||||
|
||||
// versions is a slice of operator and operand version tuples. Operators which manage multiple operands will have multiple
|
||||
// operand entries in the array. Available operators must report the version of the operator itself with the name "operator".
|
||||
// An operator reports a new "operator" version when it has rolled out the new version to all of its operands.
|
||||
// +optional
|
||||
Versions []OperandVersion `json:"versions,omitempty"`
|
||||
|
||||
// relatedObjects is a list of objects that are "interesting" or related to this operator. Common uses are:
|
||||
// 1. the detailed resource driving the operator
|
||||
// 2. operator namespaces
|
||||
// 3. operand namespaces
|
||||
// +optional
|
||||
RelatedObjects []ObjectReference `json:"relatedObjects,omitempty"`
|
||||
|
||||
// extension contains any additional status information specific to the
|
||||
// operator which owns this status object.
|
||||
// +nullable
|
||||
// +optional
|
||||
// +kubebuilder:pruning:PreserveUnknownFields
|
||||
Extension runtime.RawExtension `json:"extension"`
|
||||
}
|
||||
|
||||
type OperandVersion struct {
|
||||
// name is the name of the particular operand this version is for. It usually matches container images, not operators.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Name string `json:"name"`
|
||||
|
||||
// version indicates which version of a particular operand is currently being managed. It must always match the Available
|
||||
// operand. If 1.0.0 is Available, then this must indicate 1.0.0 even if the operator is trying to rollout
|
||||
// 1.1.0
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Version string `json:"version"`
|
||||
}
|
||||
|
||||
// ObjectReference contains enough information to let you inspect or modify the referred object.
|
||||
type ObjectReference struct {
|
||||
// group of the referent.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Group string `json:"group"`
|
||||
// resource of the referent.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Resource string `json:"resource"`
|
||||
// namespace of the referent.
|
||||
// +optional
|
||||
Namespace string `json:"namespace,omitempty"`
|
||||
// name of the referent.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
type ConditionStatus string
|
||||
|
||||
// These are valid condition statuses. "ConditionTrue" means a resource is in the condition.
|
||||
// "ConditionFalse" means a resource is not in the condition. "ConditionUnknown" means kubernetes
|
||||
// can't decide if a resource is in the condition or not. In the future, we could add other
|
||||
// intermediate conditions, e.g. ConditionDegraded.
|
||||
const (
|
||||
ConditionTrue ConditionStatus = "True"
|
||||
ConditionFalse ConditionStatus = "False"
|
||||
ConditionUnknown ConditionStatus = "Unknown"
|
||||
)
|
||||
|
||||
// ClusterOperatorStatusCondition represents the state of the operator's
|
||||
// managed and monitored components.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type ClusterOperatorStatusCondition struct {
|
||||
// type specifies the aspect reported by this condition.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Type ClusterStatusConditionType `json:"type"`
|
||||
|
||||
// status of the condition, one of True, False, Unknown.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Status ConditionStatus `json:"status"`
|
||||
|
||||
// lastTransitionTime is the time of the last update to the current status property.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
LastTransitionTime metav1.Time `json:"lastTransitionTime"`
|
||||
|
||||
// reason is the CamelCase reason for the condition's current status.
|
||||
// +optional
|
||||
Reason string `json:"reason,omitempty"`
|
||||
|
||||
// message provides additional information about the current condition.
|
||||
// This is only to be consumed by humans.
|
||||
// +optional
|
||||
Message string `json:"message,omitempty"`
|
||||
}
|
||||
|
||||
// ClusterStatusConditionType is an aspect of operator state.
|
||||
type ClusterStatusConditionType string
|
||||
|
||||
const (
|
||||
// Available indicates that the operand (eg: openshift-apiserver for the
|
||||
// openshift-apiserver-operator), is functional and available in the cluster.
|
||||
OperatorAvailable ClusterStatusConditionType = "Available"
|
||||
|
||||
// Progressing indicates that the operator is actively rolling out new code,
|
||||
// propagating config changes, or otherwise moving from one steady state to
|
||||
// another. Operators should not report progressing when they are reconciling
|
||||
// a previously known state.
|
||||
OperatorProgressing ClusterStatusConditionType = "Progressing"
|
||||
|
||||
// Degraded indicates that the operator's current state does not match its
|
||||
// desired state over a period of time resulting in a lower quality of service.
|
||||
// The period of time may vary by component, but a Degraded state represents
|
||||
// persistent observation of a condition. As a result, a component should not
|
||||
// oscillate in and out of Degraded state. A service may be Available even
|
||||
// if its degraded. For example, your service may desire 3 running pods, but 1
|
||||
// pod is crash-looping. The service is Available but Degraded because it
|
||||
// may have a lower quality of service. A component may be Progressing but
|
||||
// not Degraded because the transition from one state to another does not
|
||||
// persist over a long enough period to report Degraded. A service should not
|
||||
// report Degraded during the course of a normal upgrade. A service may report
|
||||
// Degraded in response to a persistent infrastructure failure that requires
|
||||
// administrator intervention. For example, if a control plane host is unhealthy
|
||||
// and must be replaced. An operator should report Degraded if unexpected
|
||||
// errors occur over a period, but the expectation is that all unexpected errors
|
||||
// are handled as operators mature.
|
||||
OperatorDegraded ClusterStatusConditionType = "Degraded"
|
||||
|
||||
// Upgradeable indicates whether the operator is in a state that is safe to upgrade. When status is `False`
|
||||
// administrators should not upgrade their cluster and the message field should contain a human readable description
|
||||
// of what the administrator should do to allow the operator to successfully update. A missing condition, True,
|
||||
// and Unknown are all treated by the CVO as allowing an upgrade.
|
||||
OperatorUpgradeable ClusterStatusConditionType = "Upgradeable"
|
||||
)
|
||||
|
||||
// ClusterOperatorList is a list of OperatorStatus resources.
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
type ClusterOperatorList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []ClusterOperator `json:"items"`
|
||||
}
|
267
vendor/github.com/openshift/api/config/v1/types_cluster_version.go
generated
vendored
267
vendor/github.com/openshift/api/config/v1/types_cluster_version.go
generated
vendored
@ -1,267 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// ClusterVersion is the configuration for the ClusterVersionOperator. This is where
|
||||
// parameters related to automatic updates can be set.
|
||||
type ClusterVersion struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec is the desired state of the cluster version - the operator will work
|
||||
// to ensure that the desired version is applied to the cluster.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ClusterVersionSpec `json:"spec"`
|
||||
// status contains information about the available updates and any in-progress
|
||||
// updates.
|
||||
// +optional
|
||||
Status ClusterVersionStatus `json:"status"`
|
||||
}
|
||||
|
||||
// ClusterVersionSpec is the desired version state of the cluster. It includes
|
||||
// the version the cluster should be at, how the cluster is identified, and
|
||||
// where the cluster should look for version updates.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type ClusterVersionSpec struct {
|
||||
// clusterID uniquely identifies this cluster. This is expected to be
|
||||
// an RFC4122 UUID value (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx in
|
||||
// hexadecimal values). This is a required field.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
ClusterID ClusterID `json:"clusterID"`
|
||||
|
||||
// desiredUpdate is an optional field that indicates the desired value of
|
||||
// the cluster version. Setting this value will trigger an upgrade (if
|
||||
// the current version does not match the desired version). The set of
|
||||
// recommended update values is listed as part of available updates in
|
||||
// status, and setting values outside that range may cause the upgrade
|
||||
// to fail. You may specify the version field without setting image if
|
||||
// an update exists with that version in the availableUpdates or history.
|
||||
//
|
||||
// If an upgrade fails the operator will halt and report status
|
||||
// about the failing component. Setting the desired update value back to
|
||||
// the previous version will cause a rollback to be attempted. Not all
|
||||
// rollbacks will succeed.
|
||||
//
|
||||
// +optional
|
||||
DesiredUpdate *Update `json:"desiredUpdate,omitempty"`
|
||||
|
||||
// upstream may be used to specify the preferred update server. By default
|
||||
// it will use the appropriate update server for the cluster and region.
|
||||
//
|
||||
// +optional
|
||||
Upstream URL `json:"upstream,omitempty"`
|
||||
// channel is an identifier for explicitly requesting that a non-default
|
||||
// set of updates be applied to this cluster. The default channel will be
|
||||
// contain stable updates that are appropriate for production clusters.
|
||||
//
|
||||
// +optional
|
||||
Channel string `json:"channel,omitempty"`
|
||||
|
||||
// overrides is list of overides for components that are managed by
|
||||
// cluster version operator. Marking a component unmanaged will prevent
|
||||
// the operator from creating or updating the object.
|
||||
// +optional
|
||||
Overrides []ComponentOverride `json:"overrides,omitempty"`
|
||||
}
|
||||
|
||||
// ClusterVersionStatus reports the status of the cluster versioning,
|
||||
// including any upgrades that are in progress. The current field will
|
||||
// be set to whichever version the cluster is reconciling to, and the
|
||||
// conditions array will report whether the update succeeded, is in
|
||||
// progress, or is failing.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type ClusterVersionStatus struct {
|
||||
// desired is the version that the cluster is reconciling towards.
|
||||
// If the cluster is not yet fully initialized desired will be set
|
||||
// with the information available, which may be an image or a tag.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Desired Update `json:"desired"`
|
||||
|
||||
// history contains a list of the most recent versions applied to the cluster.
|
||||
// This value may be empty during cluster startup, and then will be updated
|
||||
// when a new update is being applied. The newest update is first in the
|
||||
// list and it is ordered by recency. Updates in the history have state
|
||||
// Completed if the rollout completed - if an update was failing or halfway
|
||||
// applied the state will be Partial. Only a limited amount of update history
|
||||
// is preserved.
|
||||
// +optional
|
||||
History []UpdateHistory `json:"history,omitempty"`
|
||||
|
||||
// observedGeneration reports which version of the spec is being synced.
|
||||
// If this value is not equal to metadata.generation, then the desired
|
||||
// and conditions fields may represent a previous version.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
ObservedGeneration int64 `json:"observedGeneration"`
|
||||
|
||||
// versionHash is a fingerprint of the content that the cluster will be
|
||||
// updated with. It is used by the operator to avoid unnecessary work
|
||||
// and is for internal use only.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
VersionHash string `json:"versionHash"`
|
||||
|
||||
// conditions provides information about the cluster version. The condition
|
||||
// "Available" is set to true if the desiredUpdate has been reached. The
|
||||
// condition "Progressing" is set to true if an update is being applied.
|
||||
// The condition "Degraded" is set to true if an update is currently blocked
|
||||
// by a temporary or permanent error. Conditions are only valid for the
|
||||
// current desiredUpdate when metadata.generation is equal to
|
||||
// status.generation.
|
||||
// +optional
|
||||
Conditions []ClusterOperatorStatusCondition `json:"conditions,omitempty"`
|
||||
|
||||
// availableUpdates contains the list of updates that are appropriate
|
||||
// for this cluster. This list may be empty if no updates are recommended,
|
||||
// if the update service is unavailable, or if an invalid channel has
|
||||
// been specified.
|
||||
// +nullable
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
AvailableUpdates []Update `json:"availableUpdates"`
|
||||
}
|
||||
|
||||
// UpdateState is a constant representing whether an update was successfully
|
||||
// applied to the cluster or not.
|
||||
type UpdateState string
|
||||
|
||||
const (
|
||||
// CompletedUpdate indicates an update was successfully applied
|
||||
// to the cluster (all resource updates were successful).
|
||||
CompletedUpdate UpdateState = "Completed"
|
||||
// PartialUpdate indicates an update was never completely applied
|
||||
// or is currently being applied.
|
||||
PartialUpdate UpdateState = "Partial"
|
||||
)
|
||||
|
||||
// UpdateHistory is a single attempted update to the cluster.
|
||||
type UpdateHistory struct {
|
||||
// state reflects whether the update was fully applied. The Partial state
|
||||
// indicates the update is not fully applied, while the Completed state
|
||||
// indicates the update was successfully rolled out at least once (all
|
||||
// parts of the update successfully applied).
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
State UpdateState `json:"state"`
|
||||
|
||||
// startedTime is the time at which the update was started.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
StartedTime metav1.Time `json:"startedTime"`
|
||||
// completionTime, if set, is when the update was fully applied. The update
|
||||
// that is currently being applied will have a null completion time.
|
||||
// Completion time will always be set for entries that are not the current
|
||||
// update (usually to the started time of the next update).
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
// +nullable
|
||||
CompletionTime *metav1.Time `json:"completionTime"`
|
||||
|
||||
// version is a semantic versioning identifying the update version. If the
|
||||
// requested image does not define a version, or if a failure occurs
|
||||
// retrieving the image, this value may be empty.
|
||||
//
|
||||
// +optional
|
||||
Version string `json:"version"`
|
||||
// image is a container image location that contains the update. This value
|
||||
// is always populated.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Image string `json:"image"`
|
||||
// verified indicates whether the provided update was properly verified
|
||||
// before it was installed. If this is false the cluster may not be trusted.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Verified bool `json:"verified"`
|
||||
}
|
||||
|
||||
// ClusterID is string RFC4122 uuid.
|
||||
type ClusterID string
|
||||
|
||||
// ComponentOverride allows overriding cluster version operator's behavior
|
||||
// for a component.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type ComponentOverride struct {
|
||||
// kind indentifies which object to override.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Kind string `json:"kind"`
|
||||
// group identifies the API group that the kind is in.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Group string `json:"group"`
|
||||
|
||||
// namespace is the component's namespace. If the resource is cluster
|
||||
// scoped, the namespace should be empty.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Namespace string `json:"namespace"`
|
||||
// name is the component's name.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Name string `json:"name"`
|
||||
|
||||
// unmanaged controls if cluster version operator should stop managing the
|
||||
// resources in this cluster.
|
||||
// Default: false
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Unmanaged bool `json:"unmanaged"`
|
||||
}
|
||||
|
||||
// URL is a thin wrapper around string that ensures the string is a valid URL.
|
||||
type URL string
|
||||
|
||||
// Update represents a release of the ClusterVersionOperator, referenced by the
|
||||
// Image member.
|
||||
// +k8s:deepcopy-gen=true
|
||||
type Update struct {
|
||||
// version is a semantic versioning identifying the update version. When this
|
||||
// field is part of spec, version is optional if image is specified.
|
||||
//
|
||||
// +optional
|
||||
Version string `json:"version"`
|
||||
// image is a container image location that contains the update. When this
|
||||
// field is part of spec, image is optional if version is specified and the
|
||||
// availableUpdates field contains a matching version.
|
||||
//
|
||||
// +optional
|
||||
Image string `json:"image"`
|
||||
// force allows an administrator to update to an image that has failed
|
||||
// verification, does not appear in the availableUpdates list, or otherwise
|
||||
// would be blocked by normal protections on update. This option should only
|
||||
// be used when the authenticity of the provided image has been verified out
|
||||
// of band because the provided image will run with full administrative access
|
||||
// to the cluster. Do not use this flag with images that comes from unknown
|
||||
// or potentially malicious sources.
|
||||
//
|
||||
// This flag does not override other forms of consistency checking that are
|
||||
// required before a new update is deployed.
|
||||
//
|
||||
// +optional
|
||||
Force bool `json:"force"`
|
||||
}
|
||||
|
||||
// RetrievedUpdates reports whether available updates have been retrieved from
|
||||
// the upstream update server. The condition is Unknown before retrieval, False
|
||||
// if the updates could not be retrieved or recently failed, or True if the
|
||||
// availableUpdates field is accurate and recent.
|
||||
const RetrievedUpdates ClusterStatusConditionType = "RetrievedUpdates"
|
||||
|
||||
// ClusterVersionList is a list of ClusterVersion resources.
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
type ClusterVersionList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []ClusterVersion `json:"items"`
|
||||
}
|
62
vendor/github.com/openshift/api/config/v1/types_console.go
generated
vendored
62
vendor/github.com/openshift/api/config/v1/types_console.go
generated
vendored
@ -1,62 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Console holds cluster-wide configuration for the web console, including the
|
||||
// logout URL, and reports the public URL of the console. The canonical name is
|
||||
// `cluster`.
|
||||
type Console struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ConsoleSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status ConsoleStatus `json:"status"`
|
||||
}
|
||||
|
||||
// ConsoleSpec is the specification of the desired behavior of the Console.
|
||||
type ConsoleSpec struct {
|
||||
// +optional
|
||||
Authentication ConsoleAuthentication `json:"authentication"`
|
||||
}
|
||||
|
||||
// ConsoleStatus defines the observed status of the Console.
|
||||
type ConsoleStatus struct {
|
||||
// The URL for the console. This will be derived from the host for the route that
|
||||
// is created for the console.
|
||||
ConsoleURL string `json:"consoleURL"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type ConsoleList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Console `json:"items"`
|
||||
}
|
||||
|
||||
// ConsoleAuthentication defines a list of optional configuration for console authentication.
|
||||
type ConsoleAuthentication struct {
|
||||
// An optional, absolute URL to redirect web browsers to after logging out of
|
||||
// the console. If not specified, it will redirect to the default login page.
|
||||
// This is required when using an identity provider that supports single
|
||||
// sign-on (SSO) such as:
|
||||
// - OpenID (Keycloak, Azure)
|
||||
// - RequestHeader (GSSAPI, SSPI, SAML)
|
||||
// - OAuth (GitHub, GitLab, Google)
|
||||
// Logging out of the console will destroy the user's token. The logoutRedirect
|
||||
// provides the user the option to perform single logout (SLO) through the identity
|
||||
// provider to destroy their single sign-on session.
|
||||
// +optional
|
||||
// +kubebuilder:validation:Pattern=`^$|^((https):\/\/?)[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|\/?))$`
|
||||
LogoutRedirect string `json:"logoutRedirect,omitempty"`
|
||||
}
|
87
vendor/github.com/openshift/api/config/v1/types_dns.go
generated
vendored
87
vendor/github.com/openshift/api/config/v1/types_dns.go
generated
vendored
@ -1,87 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// DNS holds cluster-wide information about DNS. The canonical name is `cluster`
|
||||
type DNS struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec DNSSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status DNSStatus `json:"status"`
|
||||
}
|
||||
|
||||
type DNSSpec struct {
|
||||
// baseDomain is the base domain of the cluster. All managed DNS records will
|
||||
// be sub-domains of this base.
|
||||
//
|
||||
// For example, given the base domain `openshift.example.com`, an API server
|
||||
// DNS record may be created for `cluster-api.openshift.example.com`.
|
||||
//
|
||||
// Once set, this field cannot be changed.
|
||||
BaseDomain string `json:"baseDomain"`
|
||||
// publicZone is the location where all the DNS records that are publicly accessible to
|
||||
// the internet exist.
|
||||
//
|
||||
// If this field is nil, no public records should be created.
|
||||
//
|
||||
// Once set, this field cannot be changed.
|
||||
//
|
||||
// +optional
|
||||
PublicZone *DNSZone `json:"publicZone,omitempty"`
|
||||
// privateZone is the location where all the DNS records that are only available internally
|
||||
// to the cluster exist.
|
||||
//
|
||||
// If this field is nil, no private records should be created.
|
||||
//
|
||||
// Once set, this field cannot be changed.
|
||||
//
|
||||
// +optional
|
||||
PrivateZone *DNSZone `json:"privateZone,omitempty"`
|
||||
}
|
||||
|
||||
// DNSZone is used to define a DNS hosted zone.
|
||||
// A zone can be identified by an ID or tags.
|
||||
type DNSZone struct {
|
||||
// id is the identifier that can be used to find the DNS hosted zone.
|
||||
//
|
||||
// on AWS zone can be fetched using `ID` as id in [1]
|
||||
// on Azure zone can be fetched using `ID` as a pre-determined name in [2],
|
||||
// on GCP zone can be fetched using `ID` as a pre-determined name in [3].
|
||||
//
|
||||
// [1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options
|
||||
// [2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show
|
||||
// [3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get
|
||||
// +optional
|
||||
ID string `json:"id,omitempty"`
|
||||
|
||||
// tags can be used to query the DNS hosted zone.
|
||||
//
|
||||
// on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters,
|
||||
//
|
||||
// [1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options
|
||||
// +optional
|
||||
Tags map[string]string `json:"tags,omitempty"`
|
||||
}
|
||||
|
||||
type DNSStatus struct {
|
||||
// dnsSuffix (service-ca amongst others)
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type DNSList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []DNS `json:"items"`
|
||||
}
|
194
vendor/github.com/openshift/api/config/v1/types_feature.go
generated
vendored
194
vendor/github.com/openshift/api/config/v1/types_feature.go
generated
vendored
@ -1,194 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Feature holds cluster-wide information about feature gates. The canonical name is `cluster`
|
||||
type FeatureGate struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec FeatureGateSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status FeatureGateStatus `json:"status"`
|
||||
}
|
||||
|
||||
type FeatureSet string
|
||||
|
||||
var (
|
||||
// Default feature set that allows upgrades.
|
||||
Default FeatureSet = ""
|
||||
|
||||
// TechPreviewNoUpgrade turns on tech preview features that are not part of the normal supported platform. Turning
|
||||
// this feature set on CANNOT BE UNDONE and PREVENTS UPGRADES.
|
||||
TechPreviewNoUpgrade FeatureSet = "TechPreviewNoUpgrade"
|
||||
|
||||
// CustomNoUpgrade allows the enabling or disabling of any feature. Turning this feature set on IS NOT SUPPORTED, CANNOT BE UNDONE, and PREVENTS UPGRADES.
|
||||
// Because of its nature, this setting cannot be validated. If you have any typos or accidentally apply invalid combinations
|
||||
// your cluster may fail in an unrecoverable way.
|
||||
CustomNoUpgrade FeatureSet = "CustomNoUpgrade"
|
||||
|
||||
// TopologyManager enables ToplogyManager support. Upgrades are enabled with this feature.
|
||||
LatencySensitive FeatureSet = "LatencySensitive"
|
||||
)
|
||||
|
||||
type FeatureGateSpec struct {
|
||||
FeatureGateSelection `json:",inline"`
|
||||
}
|
||||
|
||||
// +union
|
||||
type FeatureGateSelection struct {
|
||||
// featureSet changes the list of features in the cluster. The default is empty. Be very careful adjusting this setting.
|
||||
// Turning on or off features may cause irreversible changes in your cluster which cannot be undone.
|
||||
// +unionDiscriminator
|
||||
// +optional
|
||||
FeatureSet FeatureSet `json:"featureSet,omitempty"`
|
||||
|
||||
// customNoUpgrade allows the enabling or disabling of any feature. Turning this feature set on IS NOT SUPPORTED, CANNOT BE UNDONE, and PREVENTS UPGRADES.
|
||||
// Because of its nature, this setting cannot be validated. If you have any typos or accidentally apply invalid combinations
|
||||
// your cluster may fail in an unrecoverable way. featureSet must equal "CustomNoUpgrade" must be set to use this field.
|
||||
// +optional
|
||||
// +nullable
|
||||
CustomNoUpgrade *CustomFeatureGates `json:"customNoUpgrade,omitempty"`
|
||||
}
|
||||
|
||||
type CustomFeatureGates struct {
|
||||
// enabled is a list of all feature gates that you want to force on
|
||||
// +optional
|
||||
Enabled []string `json:"enabled,omitempty"`
|
||||
// disabled is a list of all feature gates that you want to force off
|
||||
// +optional
|
||||
Disabled []string `json:"disabled,omitempty"`
|
||||
}
|
||||
|
||||
type FeatureGateStatus struct {
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type FeatureGateList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []FeatureGate `json:"items"`
|
||||
}
|
||||
|
||||
type FeatureGateEnabledDisabled struct {
|
||||
Enabled []string
|
||||
Disabled []string
|
||||
}
|
||||
|
||||
// FeatureSets Contains a map of Feature names to Enabled/Disabled Feature.
|
||||
//
|
||||
// NOTE: The caller needs to make sure to check for the existence of the value
|
||||
// using golang's existence field. A possible scenario is an upgrade where new
|
||||
// FeatureSets are added and a controller has not been upgraded with a newer
|
||||
// version of this file. In this upgrade scenario the map could return nil.
|
||||
//
|
||||
// example:
|
||||
// if featureSet, ok := FeatureSets["SomeNewFeature"]; ok { }
|
||||
//
|
||||
// If you put an item in either of these lists, put your area and name on it so we can find owners.
|
||||
var FeatureSets = map[FeatureSet]*FeatureGateEnabledDisabled{
|
||||
Default: defaultFeatures,
|
||||
CustomNoUpgrade: {
|
||||
Enabled: []string{},
|
||||
Disabled: []string{},
|
||||
},
|
||||
TechPreviewNoUpgrade: newDefaultFeatures().toFeatures(),
|
||||
LatencySensitive: newDefaultFeatures().
|
||||
with(
|
||||
"TopologyManager", // sig-pod, sjenning
|
||||
).
|
||||
toFeatures(),
|
||||
}
|
||||
|
||||
var defaultFeatures = &FeatureGateEnabledDisabled{
|
||||
Enabled: []string{
|
||||
"RotateKubeletServerCertificate", // sig-pod, sjenning
|
||||
"SupportPodPidsLimit", // sig-pod, sjenning
|
||||
"NodeDisruptionExclusion", // sig-scheduling, ccoleman
|
||||
"ServiceNodeExclusion", // sig-scheduling, ccoleman
|
||||
"SCTPSupport", // sig-network, ccallend
|
||||
},
|
||||
Disabled: []string{
|
||||
"LegacyNodeRoleBehavior", // sig-scheduling, ccoleman
|
||||
},
|
||||
}
|
||||
|
||||
type featureSetBuilder struct {
|
||||
forceOn []string
|
||||
forceOff []string
|
||||
}
|
||||
|
||||
func newDefaultFeatures() *featureSetBuilder {
|
||||
return &featureSetBuilder{}
|
||||
}
|
||||
|
||||
func (f *featureSetBuilder) with(forceOn ...string) *featureSetBuilder {
|
||||
f.forceOn = append(f.forceOn, forceOn...)
|
||||
return f
|
||||
}
|
||||
|
||||
func (f *featureSetBuilder) without(forceOff ...string) *featureSetBuilder {
|
||||
f.forceOff = append(f.forceOff, forceOff...)
|
||||
return f
|
||||
}
|
||||
|
||||
func (f *featureSetBuilder) isForcedOff(needle string) bool {
|
||||
for _, forcedOff := range f.forceOff {
|
||||
if needle == forcedOff {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (f *featureSetBuilder) isForcedOn(needle string) bool {
|
||||
for _, forceOn := range f.forceOn {
|
||||
if needle == forceOn {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (f *featureSetBuilder) toFeatures() *FeatureGateEnabledDisabled {
|
||||
finalOn := []string{}
|
||||
finalOff := []string{}
|
||||
|
||||
// only add the default enabled features if they haven't been explicitly set off
|
||||
for _, defaultOn := range defaultFeatures.Enabled {
|
||||
if !f.isForcedOff(defaultOn) {
|
||||
finalOn = append(finalOn, defaultOn)
|
||||
}
|
||||
}
|
||||
for _, currOn := range f.forceOn {
|
||||
if f.isForcedOff(currOn) {
|
||||
panic("coding error, you can't have features both on and off")
|
||||
}
|
||||
finalOn = append(finalOn, currOn)
|
||||
}
|
||||
|
||||
// only add the default disabled features if they haven't been explicitly set on
|
||||
for _, defaultOff := range defaultFeatures.Disabled {
|
||||
if !f.isForcedOn(defaultOff) {
|
||||
finalOff = append(finalOff, defaultOff)
|
||||
}
|
||||
}
|
||||
for _, currOff := range f.forceOff {
|
||||
finalOff = append(finalOff, currOff)
|
||||
}
|
||||
|
||||
return &FeatureGateEnabledDisabled{
|
||||
Enabled: finalOn,
|
||||
Disabled: finalOff,
|
||||
}
|
||||
}
|
115
vendor/github.com/openshift/api/config/v1/types_image.go
generated
vendored
115
vendor/github.com/openshift/api/config/v1/types_image.go
generated
vendored
@ -1,115 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Image governs policies related to imagestream imports and runtime configuration
|
||||
// for external registries. It allows cluster admins to configure which registries
|
||||
// OpenShift is allowed to import images from, extra CA trust bundles for external
|
||||
// registries, and policies to blacklist/whitelist registry hostnames.
|
||||
// When exposing OpenShift's image registry to the public, this also lets cluster
|
||||
// admins specify the external hostname.
|
||||
type Image struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ImageSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status ImageStatus `json:"status"`
|
||||
}
|
||||
|
||||
type ImageSpec struct {
|
||||
// allowedRegistriesForImport limits the container image registries that normal users may import
|
||||
// images from. Set this list to the registries that you trust to contain valid Docker
|
||||
// images and that you want applications to be able to import from. Users with
|
||||
// permission to create Images or ImageStreamMappings via the API are not affected by
|
||||
// this policy - typically only administrators or system integrations will have those
|
||||
// permissions.
|
||||
// +optional
|
||||
AllowedRegistriesForImport []RegistryLocation `json:"allowedRegistriesForImport,omitempty"`
|
||||
|
||||
// externalRegistryHostnames provides the hostnames for the default external image
|
||||
// registry. The external hostname should be set only when the image registry
|
||||
// is exposed externally. The first value is used in 'publicDockerImageRepository'
|
||||
// field in ImageStreams. The value must be in "hostname[:port]" format.
|
||||
// +optional
|
||||
ExternalRegistryHostnames []string `json:"externalRegistryHostnames,omitempty"`
|
||||
|
||||
// additionalTrustedCA is a reference to a ConfigMap containing additional CAs that
|
||||
// should be trusted during imagestream import, pod image pull, build image pull, and
|
||||
// imageregistry pullthrough.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
AdditionalTrustedCA ConfigMapNameReference `json:"additionalTrustedCA"`
|
||||
|
||||
// registrySources contains configuration that determines how the container runtime
|
||||
// should treat individual registries when accessing images for builds+pods. (e.g.
|
||||
// whether or not to allow insecure access). It does not contain configuration for the
|
||||
// internal cluster registry.
|
||||
// +optional
|
||||
RegistrySources RegistrySources `json:"registrySources"`
|
||||
}
|
||||
|
||||
type ImageStatus struct {
|
||||
|
||||
// internalRegistryHostname sets the hostname for the default internal image
|
||||
// registry. The value must be in "hostname[:port]" format.
|
||||
// This value is set by the image registry operator which controls the internal registry
|
||||
// hostname. For backward compatibility, users can still use OPENSHIFT_DEFAULT_REGISTRY
|
||||
// environment variable but this setting overrides the environment variable.
|
||||
// +optional
|
||||
InternalRegistryHostname string `json:"internalRegistryHostname,omitempty"`
|
||||
|
||||
// externalRegistryHostnames provides the hostnames for the default external image
|
||||
// registry. The external hostname should be set only when the image registry
|
||||
// is exposed externally. The first value is used in 'publicDockerImageRepository'
|
||||
// field in ImageStreams. The value must be in "hostname[:port]" format.
|
||||
// +optional
|
||||
ExternalRegistryHostnames []string `json:"externalRegistryHostnames,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type ImageList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Image `json:"items"`
|
||||
}
|
||||
|
||||
// RegistryLocation contains a location of the registry specified by the registry domain
|
||||
// name. The domain name might include wildcards, like '*' or '??'.
|
||||
type RegistryLocation struct {
|
||||
// domainName specifies a domain name for the registry
|
||||
// In case the registry use non-standard (80 or 443) port, the port should be included
|
||||
// in the domain name as well.
|
||||
DomainName string `json:"domainName"`
|
||||
// insecure indicates whether the registry is secure (https) or insecure (http)
|
||||
// By default (if not specified) the registry is assumed as secure.
|
||||
// +optional
|
||||
Insecure bool `json:"insecure,omitempty"`
|
||||
}
|
||||
|
||||
// RegistrySources holds cluster-wide information about how to handle the registries config.
|
||||
type RegistrySources struct {
|
||||
// insecureRegistries are registries which do not have a valid TLS certificates or only support HTTP connections.
|
||||
// +optional
|
||||
InsecureRegistries []string `json:"insecureRegistries,omitempty"`
|
||||
// blockedRegistries are blacklisted from image pull/push. All other registries are allowed.
|
||||
//
|
||||
// Only one of BlockedRegistries or AllowedRegistries may be set.
|
||||
// +optional
|
||||
BlockedRegistries []string `json:"blockedRegistries,omitempty"`
|
||||
// allowedRegistries are whitelisted for image pull/push. All other registries are blocked.
|
||||
//
|
||||
// Only one of BlockedRegistries or AllowedRegistries may be set.
|
||||
// +optional
|
||||
AllowedRegistries []string `json:"allowedRegistries,omitempty"`
|
||||
}
|
241
vendor/github.com/openshift/api/config/v1/types_infrastructure.go
generated
vendored
241
vendor/github.com/openshift/api/config/v1/types_infrastructure.go
generated
vendored
@ -1,241 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Infrastructure holds cluster-wide information about Infrastructure. The canonical name is `cluster`
|
||||
type Infrastructure struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec InfrastructureSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status InfrastructureStatus `json:"status"`
|
||||
}
|
||||
|
||||
// InfrastructureSpec contains settings that apply to the cluster infrastructure.
|
||||
type InfrastructureSpec struct {
|
||||
// cloudConfig is a reference to a ConfigMap containing the cloud provider configuration file.
|
||||
// This configuration file is used to configure the Kubernetes cloud provider integration
|
||||
// when using the built-in cloud provider integration or the external cloud controller manager.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CloudConfig ConfigMapFileReference `json:"cloudConfig"`
|
||||
}
|
||||
|
||||
// InfrastructureStatus describes the infrastructure the cluster is leveraging.
|
||||
type InfrastructureStatus struct {
|
||||
// infrastructureName uniquely identifies a cluster with a human friendly name.
|
||||
// Once set it should not be changed. Must be of max length 27 and must have only
|
||||
// alphanumeric or hyphen characters.
|
||||
InfrastructureName string `json:"infrastructureName"`
|
||||
|
||||
// platform is the underlying infrastructure provider for the cluster.
|
||||
//
|
||||
// Deprecated: Use platformStatus.type instead.
|
||||
Platform PlatformType `json:"platform,omitempty"`
|
||||
|
||||
// platformStatus holds status information specific to the underlying
|
||||
// infrastructure provider.
|
||||
// +optional
|
||||
PlatformStatus *PlatformStatus `json:"platformStatus,omitempty"`
|
||||
|
||||
// etcdDiscoveryDomain is the domain used to fetch the SRV records for discovering
|
||||
// etcd servers and clients.
|
||||
// For more info: https://github.com/etcd-io/etcd/blob/329be66e8b3f9e2e6af83c123ff89297e49ebd15/Documentation/op-guide/clustering.md#dns-discovery
|
||||
EtcdDiscoveryDomain string `json:"etcdDiscoveryDomain"`
|
||||
|
||||
// apiServerURL is a valid URI with scheme(http/https), address and
|
||||
// port. apiServerURL can be used by components like the web console
|
||||
// to tell users where to find the Kubernetes API.
|
||||
APIServerURL string `json:"apiServerURL"`
|
||||
|
||||
// apiServerInternalURL is a valid URI with scheme(http/https),
|
||||
// address and port. apiServerInternalURL can be used by components
|
||||
// like kubelets, to contact the Kubernetes API server using the
|
||||
// infrastructure provider rather than Kubernetes networking.
|
||||
APIServerInternalURL string `json:"apiServerInternalURI"`
|
||||
}
|
||||
|
||||
// PlatformType is a specific supported infrastructure provider.
|
||||
type PlatformType string
|
||||
|
||||
const (
|
||||
// AWSPlatformType represents Amazon Web Services infrastructure.
|
||||
AWSPlatformType PlatformType = "AWS"
|
||||
|
||||
// AzurePlatformType represents Microsoft Azure infrastructure.
|
||||
AzurePlatformType PlatformType = "Azure"
|
||||
|
||||
// BareMetalPlatformType represents managed bare metal infrastructure.
|
||||
BareMetalPlatformType PlatformType = "BareMetal"
|
||||
|
||||
// GCPPlatformType represents Google Cloud Platform infrastructure.
|
||||
GCPPlatformType PlatformType = "GCP"
|
||||
|
||||
// LibvirtPlatformType represents libvirt infrastructure.
|
||||
LibvirtPlatformType PlatformType = "Libvirt"
|
||||
|
||||
// OpenStackPlatformType represents OpenStack infrastructure.
|
||||
OpenStackPlatformType PlatformType = "OpenStack"
|
||||
|
||||
// NonePlatformType means there is no infrastructure provider.
|
||||
NonePlatformType PlatformType = "None"
|
||||
|
||||
// VSpherePlatformType represents VMWare vSphere infrastructure.
|
||||
VSpherePlatformType PlatformType = "VSphere"
|
||||
|
||||
// OvirtPlatformType represents oVirt/RHV infrastructure.
|
||||
OvirtPlatformType PlatformType = "oVirt"
|
||||
)
|
||||
|
||||
// PlatformStatus holds the current status specific to the underlying infrastructure provider
|
||||
// of the current cluster. Since these are used at status-level for the underlying cluster, it
|
||||
// is supposed that only one of the status structs is set.
|
||||
type PlatformStatus struct {
|
||||
// type is the underlying infrastructure provider for the cluster. This
|
||||
// value controls whether infrastructure automation such as service load
|
||||
// balancers, dynamic volume provisioning, machine creation and deletion, and
|
||||
// other integrations are enabled. If None, no infrastructure automation is
|
||||
// enabled. Allowed values are "AWS", "Azure", "BareMetal", "GCP", "Libvirt",
|
||||
// "OpenStack", "VSphere", "oVirt", and "None". Individual components may not support
|
||||
// all platforms, and must handle unrecognized platforms as None if they do
|
||||
// not support that platform.
|
||||
Type PlatformType `json:"type"`
|
||||
|
||||
// AWS contains settings specific to the Amazon Web Services infrastructure provider.
|
||||
// +optional
|
||||
AWS *AWSPlatformStatus `json:"aws,omitempty"`
|
||||
|
||||
// Azure contains settings specific to the Azure infrastructure provider.
|
||||
// +optional
|
||||
Azure *AzurePlatformStatus `json:"azure,omitempty"`
|
||||
|
||||
// GCP contains settings specific to the Google Cloud Platform infrastructure provider.
|
||||
// +optional
|
||||
GCP *GCPPlatformStatus `json:"gcp,omitempty"`
|
||||
|
||||
// BareMetal contains settings specific to the BareMetal platform.
|
||||
// +optional
|
||||
BareMetal *BareMetalPlatformStatus `json:"baremetal,omitempty"`
|
||||
|
||||
// OpenStack contains settings specific to the OpenStack infrastructure provider.
|
||||
// +optional
|
||||
OpenStack *OpenStackPlatformStatus `json:"openstack,omitempty"`
|
||||
|
||||
// Ovirt contains settings specific to the oVirt infrastructure provider.
|
||||
// +optional
|
||||
Ovirt *OvirtPlatformStatus `json:"ovirt,omitempty"`
|
||||
}
|
||||
|
||||
// AWSPlatformStatus holds the current status of the Amazon Web Services infrastructure provider.
|
||||
type AWSPlatformStatus struct {
|
||||
// region holds the default AWS region for new AWS resources created by the cluster.
|
||||
Region string `json:"region"`
|
||||
}
|
||||
|
||||
// AzurePlatformStatus holds the current status of the Azure infrastructure provider.
|
||||
type AzurePlatformStatus struct {
|
||||
// resourceGroupName is the Resource Group for new Azure resources created for the cluster.
|
||||
ResourceGroupName string `json:"resourceGroupName"`
|
||||
|
||||
// networkResourceGroupName is the Resource Group for network resources like the Virtual Network and Subnets used by the cluster.
|
||||
// If empty, the value is same as ResourceGroupName.
|
||||
// +optional
|
||||
NetworkResourceGroupName string `json:"networkResourceGroupName,omitempty"`
|
||||
}
|
||||
|
||||
// GCPPlatformStatus holds the current status of the Google Cloud Platform infrastructure provider.
|
||||
type GCPPlatformStatus struct {
|
||||
// resourceGroupName is the Project ID for new GCP resources created for the cluster.
|
||||
ProjectID string `json:"projectID"`
|
||||
|
||||
// region holds the region for new GCP resources created for the cluster.
|
||||
Region string `json:"region"`
|
||||
}
|
||||
|
||||
// BareMetalPlatformStatus holds the current status of the BareMetal infrastructure provider.
|
||||
// For more information about the network architecture used with the BareMetal platform type, see:
|
||||
// https://github.com/openshift/installer/blob/master/docs/design/baremetal/networking-infrastructure.md
|
||||
type BareMetalPlatformStatus struct {
|
||||
// apiServerInternalIP is an IP address to contact the Kubernetes API server that can be used
|
||||
// by components inside the cluster, like kubelets using the infrastructure rather
|
||||
// than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
// points to. It is the IP for a self-hosted load balancer in front of the API servers.
|
||||
APIServerInternalIP string `json:"apiServerInternalIP,omitempty"`
|
||||
|
||||
// ingressIP is an external IP which routes to the default ingress controller.
|
||||
// The IP is a suitable target of a wildcard DNS record used to resolve default route host names.
|
||||
IngressIP string `json:"ingressIP,omitempty"`
|
||||
|
||||
// nodeDNSIP is the IP address for the internal DNS used by the
|
||||
// nodes. Unlike the one managed by the DNS operator, `NodeDNSIP`
|
||||
// provides name resolution for the nodes themselves. There is no DNS-as-a-service for
|
||||
// BareMetal deployments. In order to minimize necessary changes to the
|
||||
// datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames
|
||||
// to the nodes in the cluster.
|
||||
NodeDNSIP string `json:"nodeDNSIP,omitempty"`
|
||||
}
|
||||
|
||||
// OpenStackPlatformStatus holds the current status of the OpenStack infrastructure provider.
|
||||
type OpenStackPlatformStatus struct {
|
||||
// apiServerInternalIP is an IP address to contact the Kubernetes API server that can be used
|
||||
// by components inside the cluster, like kubelets using the infrastructure rather
|
||||
// than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
// points to. It is the IP for a self-hosted load balancer in front of the API servers.
|
||||
APIServerInternalIP string `json:"apiServerInternalIP,omitempty"`
|
||||
|
||||
// cloudName is the name of the desired OpenStack cloud in the
|
||||
// client configuration file (`clouds.yaml`).
|
||||
CloudName string `json:"cloudName,omitempty"`
|
||||
|
||||
// ingressIP is an external IP which routes to the default ingress controller.
|
||||
// The IP is a suitable target of a wildcard DNS record used to resolve default route host names.
|
||||
IngressIP string `json:"ingressIP,omitempty"`
|
||||
|
||||
// nodeDNSIP is the IP address for the internal DNS used by the
|
||||
// nodes. Unlike the one managed by the DNS operator, `NodeDNSIP`
|
||||
// provides name resolution for the nodes themselves. There is no DNS-as-a-service for
|
||||
// OpenStack deployments. In order to minimize necessary changes to the
|
||||
// datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames
|
||||
// to the nodes in the cluster.
|
||||
NodeDNSIP string `json:"nodeDNSIP,omitempty"`
|
||||
}
|
||||
|
||||
// OvirtPlatformStatus holds the current status of the oVirt infrastructure provider.
|
||||
type OvirtPlatformStatus struct {
|
||||
// apiServerInternalIP is an IP address to contact the Kubernetes API server that can be used
|
||||
// by components inside the cluster, like kubelets using the infrastructure rather
|
||||
// than Kubernetes networking. It is the IP that the Infrastructure.status.apiServerInternalURI
|
||||
// points to. It is the IP for a self-hosted load balancer in front of the API servers.
|
||||
APIServerInternalIP string `json:"apiServerInternalIP,omitempty"`
|
||||
|
||||
// ingressIP is an external IP which routes to the default ingress controller.
|
||||
// The IP is a suitable target of a wildcard DNS record used to resolve default route host names.
|
||||
IngressIP string `json:"ingressIP,omitempty"`
|
||||
|
||||
// nodeDNSIP is the IP address for the internal DNS used by the
|
||||
// nodes. Unlike the one managed by the DNS operator, `NodeDNSIP`
|
||||
// provides name resolution for the nodes themselves. There is no DNS-as-a-service for
|
||||
// oVirt deployments. In order to minimize necessary changes to the
|
||||
// datacenter DNS, a DNS service is hosted as a static pod to serve those hostnames
|
||||
// to the nodes in the cluster.
|
||||
NodeDNSIP string `json:"nodeDNSIP,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// InfrastructureList is
|
||||
type InfrastructureList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Infrastructure `json:"items"`
|
||||
}
|
46
vendor/github.com/openshift/api/config/v1/types_ingress.go
generated
vendored
46
vendor/github.com/openshift/api/config/v1/types_ingress.go
generated
vendored
@ -1,46 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Ingress holds cluster-wide information about ingress, including the default ingress domain
|
||||
// used for routes. The canonical name is `cluster`.
|
||||
type Ingress struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec IngressSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status IngressStatus `json:"status"`
|
||||
}
|
||||
|
||||
type IngressSpec struct {
|
||||
// domain is used to generate a default host name for a route when the
|
||||
// route's host name is empty. The generated host name will follow this
|
||||
// pattern: "<route-name>.<route-namespace>.<domain>".
|
||||
//
|
||||
// It is also used as the default wildcard domain suffix for ingress. The
|
||||
// default ingresscontroller domain will follow this pattern: "*.<domain>".
|
||||
//
|
||||
// Once set, changing domain is not currently supported.
|
||||
Domain string `json:"domain"`
|
||||
}
|
||||
|
||||
type IngressStatus struct {
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type IngressList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Ingress `json:"items"`
|
||||
}
|
122
vendor/github.com/openshift/api/config/v1/types_network.go
generated
vendored
122
vendor/github.com/openshift/api/config/v1/types_network.go
generated
vendored
@ -1,122 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Network holds cluster-wide information about Network. The canonical name is `cluster`. It is used to configure the desired network configuration, such as: IP address pools for services/pod IPs, network plugin, etc.
|
||||
// Please view network.spec for an explanation on what applies when configuring this resource.
|
||||
type Network struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration.
|
||||
// As a general rule, this SHOULD NOT be read directly. Instead, you should
|
||||
// consume the NetworkStatus, as it indicates the currently deployed configuration.
|
||||
// Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec NetworkSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status NetworkStatus `json:"status"`
|
||||
}
|
||||
|
||||
// NetworkSpec is the desired network configuration.
|
||||
// As a general rule, this SHOULD NOT be read directly. Instead, you should
|
||||
// consume the NetworkStatus, as it indicates the currently deployed configuration.
|
||||
// Currently, most spec fields are immutable after installation. Please view the individual ones for further details on each.
|
||||
type NetworkSpec struct {
|
||||
// IP address pool to use for pod IPs.
|
||||
// This field is immutable after installation.
|
||||
ClusterNetwork []ClusterNetworkEntry `json:"clusterNetwork"`
|
||||
|
||||
// IP address pool for services.
|
||||
// Currently, we only support a single entry here.
|
||||
// This field is immutable after installation.
|
||||
ServiceNetwork []string `json:"serviceNetwork"`
|
||||
|
||||
// NetworkType is the plugin that is to be deployed (e.g. OpenShiftSDN).
|
||||
// This should match a value that the cluster-network-operator understands,
|
||||
// or else no networking will be installed.
|
||||
// Currently supported values are:
|
||||
// - OpenShiftSDN
|
||||
// This field is immutable after installation.
|
||||
NetworkType string `json:"networkType"`
|
||||
|
||||
// externalIP defines configuration for controllers that
|
||||
// affect Service.ExternalIP. If nil, then ExternalIP is
|
||||
// not allowed to be set.
|
||||
// +optional
|
||||
ExternalIP *ExternalIPConfig `json:"externalIP,omitempty"`
|
||||
}
|
||||
|
||||
// NetworkStatus is the current network configuration.
|
||||
type NetworkStatus struct {
|
||||
// IP address pool to use for pod IPs.
|
||||
ClusterNetwork []ClusterNetworkEntry `json:"clusterNetwork,omitempty"`
|
||||
|
||||
// IP address pool for services.
|
||||
// Currently, we only support a single entry here.
|
||||
ServiceNetwork []string `json:"serviceNetwork,omitempty"`
|
||||
|
||||
// NetworkType is the plugin that is deployed (e.g. OpenShiftSDN).
|
||||
NetworkType string `json:"networkType,omitempty"`
|
||||
|
||||
// ClusterNetworkMTU is the MTU for inter-pod networking.
|
||||
ClusterNetworkMTU int `json:"clusterNetworkMTU,omitempty"`
|
||||
}
|
||||
|
||||
// ClusterNetworkEntry is a contiguous block of IP addresses from which pod IPs
|
||||
// are allocated.
|
||||
type ClusterNetworkEntry struct {
|
||||
// The complete block for pod IPs.
|
||||
CIDR string `json:"cidr"`
|
||||
|
||||
// The size (prefix) of block to allocate to each node.
|
||||
// +kubebuilder:validation:Minimum=0
|
||||
HostPrefix uint32 `json:"hostPrefix"`
|
||||
}
|
||||
|
||||
// ExternalIPConfig specifies some IP blocks relevant for the ExternalIP field
|
||||
// of a Service resource.
|
||||
type ExternalIPConfig struct {
|
||||
// policy is a set of restrictions applied to the ExternalIP field.
|
||||
// If nil or empty, then ExternalIP is not allowed to be set.
|
||||
// +optional
|
||||
Policy *ExternalIPPolicy `json:"policy,omitempty"`
|
||||
|
||||
// autoAssignCIDRs is a list of CIDRs from which to automatically assign
|
||||
// Service.ExternalIP. These are assigned when the service is of type
|
||||
// LoadBalancer. In general, this is only useful for bare-metal clusters.
|
||||
// In Openshift 3.x, this was misleadingly called "IngressIPs".
|
||||
// Automatically assigned External IPs are not affected by any
|
||||
// ExternalIPPolicy rules.
|
||||
// Currently, only one entry may be provided.
|
||||
// +optional
|
||||
AutoAssignCIDRs []string `json:"autoAssignCIDRs,omitempty"`
|
||||
}
|
||||
|
||||
// ExternalIPPolicy configures exactly which IPs are allowed for the ExternalIP
|
||||
// field in a Service. If the zero struct is supplied, then none are permitted.
|
||||
// The policy controller always allows automatically assigned external IPs.
|
||||
type ExternalIPPolicy struct {
|
||||
// allowedCIDRs is the list of allowed CIDRs.
|
||||
AllowedCIDRs []string `json:"allowedCIDRs,omitempty"`
|
||||
|
||||
// rejectedCIDRs is the list of disallowed CIDRs. These take precedence
|
||||
// over allowedCIDRs.
|
||||
// +optional
|
||||
RejectedCIDRs []string `json:"rejectedCIDRs,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type NetworkList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Network `json:"items"`
|
||||
}
|
557
vendor/github.com/openshift/api/config/v1/types_oauth.go
generated
vendored
557
vendor/github.com/openshift/api/config/v1/types_oauth.go
generated
vendored
@ -1,557 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// OAuth Server and Identity Provider Config
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// OAuth holds cluster-wide information about OAuth. The canonical name is `cluster`.
|
||||
// It is used to configure the integrated OAuth server.
|
||||
// This configuration is only honored when the top level Authentication config has type set to IntegratedOAuth.
|
||||
type OAuth struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata"`
|
||||
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec OAuthSpec `json:"spec"`
|
||||
// +optional
|
||||
Status OAuthStatus `json:"status"`
|
||||
}
|
||||
|
||||
// OAuthSpec contains desired cluster auth configuration
|
||||
type OAuthSpec struct {
|
||||
// identityProviders is an ordered list of ways for a user to identify themselves.
|
||||
// When this list is empty, no identities are provisioned for users.
|
||||
// +optional
|
||||
IdentityProviders []IdentityProvider `json:"identityProviders,omitempty"`
|
||||
|
||||
// tokenConfig contains options for authorization and access tokens
|
||||
TokenConfig TokenConfig `json:"tokenConfig"`
|
||||
|
||||
// templates allow you to customize pages like the login page.
|
||||
// +optional
|
||||
Templates OAuthTemplates `json:"templates"`
|
||||
}
|
||||
|
||||
// OAuthStatus shows current known state of OAuth server in the cluster
|
||||
type OAuthStatus struct {
|
||||
// TODO Fill in with status of identityProviders and templates (and maybe tokenConfig)
|
||||
}
|
||||
|
||||
// TokenConfig holds the necessary configuration options for authorization and access tokens
|
||||
type TokenConfig struct {
|
||||
// accessTokenMaxAgeSeconds defines the maximum age of access tokens
|
||||
AccessTokenMaxAgeSeconds int32 `json:"accessTokenMaxAgeSeconds"`
|
||||
|
||||
// accessTokenInactivityTimeoutSeconds defines the default token
|
||||
// inactivity timeout for tokens granted by any client.
|
||||
// The value represents the maximum amount of time that can occur between
|
||||
// consecutive uses of the token. Tokens become invalid if they are not
|
||||
// used within this temporal window. The user will need to acquire a new
|
||||
// token to regain access once a token times out.
|
||||
// Valid values are integer values:
|
||||
// x < 0 Tokens time out is enabled but tokens never timeout unless configured per client (e.g. `-1`)
|
||||
// x = 0 Tokens time out is disabled (default)
|
||||
// x > 0 Tokens time out if there is no activity for x seconds
|
||||
// The current minimum allowed value for X is 300 (5 minutes)
|
||||
// +optional
|
||||
AccessTokenInactivityTimeoutSeconds int32 `json:"accessTokenInactivityTimeoutSeconds,omitempty"`
|
||||
}
|
||||
|
||||
const (
|
||||
// LoginTemplateKey is the key of the login template in a secret
|
||||
LoginTemplateKey = "login.html"
|
||||
|
||||
// ProviderSelectionTemplateKey is the key for the provider selection template in a secret
|
||||
ProviderSelectionTemplateKey = "providers.html"
|
||||
|
||||
// ErrorsTemplateKey is the key for the errors template in a secret
|
||||
ErrorsTemplateKey = "errors.html"
|
||||
|
||||
// BindPasswordKey is the key for the LDAP bind password in a secret
|
||||
BindPasswordKey = "bindPassword"
|
||||
|
||||
// ClientSecretKey is the key for the oauth client secret data in a secret
|
||||
ClientSecretKey = "clientSecret"
|
||||
|
||||
// HTPasswdDataKey is the key for the htpasswd file data in a secret
|
||||
HTPasswdDataKey = "htpasswd"
|
||||
)
|
||||
|
||||
// OAuthTemplates allow for customization of pages like the login page
|
||||
type OAuthTemplates struct {
|
||||
// login is the name of a secret that specifies a go template to use to render the login page.
|
||||
// The key "login.html" is used to locate the template data.
|
||||
// If specified and the secret or expected key is not found, the default login page is used.
|
||||
// If the specified template is not valid, the default login page is used.
|
||||
// If unspecified, the default login page is used.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
Login SecretNameReference `json:"login"`
|
||||
|
||||
// providerSelection is the name of a secret that specifies a go template to use to render
|
||||
// the provider selection page.
|
||||
// The key "providers.html" is used to locate the template data.
|
||||
// If specified and the secret or expected key is not found, the default provider selection page is used.
|
||||
// If the specified template is not valid, the default provider selection page is used.
|
||||
// If unspecified, the default provider selection page is used.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
ProviderSelection SecretNameReference `json:"providerSelection"`
|
||||
|
||||
// error is the name of a secret that specifies a go template to use to render error pages
|
||||
// during the authentication or grant flow.
|
||||
// The key "errors.html" is used to locate the template data.
|
||||
// If specified and the secret or expected key is not found, the default error page is used.
|
||||
// If the specified template is not valid, the default error page is used.
|
||||
// If unspecified, the default error page is used.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
Error SecretNameReference `json:"error"`
|
||||
}
|
||||
|
||||
// IdentityProvider provides identities for users authenticating using credentials
|
||||
type IdentityProvider struct {
|
||||
// name is used to qualify the identities returned by this provider.
|
||||
// - It MUST be unique and not shared by any other identity provider used
|
||||
// - It MUST be a valid path segment: name cannot equal "." or ".." or contain "/" or "%" or ":"
|
||||
// Ref: https://godoc.org/github.com/openshift/origin/pkg/user/apis/user/validation#ValidateIdentityProviderName
|
||||
Name string `json:"name"`
|
||||
|
||||
// mappingMethod determines how identities from this provider are mapped to users
|
||||
// Defaults to "claim"
|
||||
// +optional
|
||||
MappingMethod MappingMethodType `json:"mappingMethod,omitempty"`
|
||||
|
||||
IdentityProviderConfig `json:",inline"`
|
||||
}
|
||||
|
||||
// MappingMethodType specifies how new identities should be mapped to users when they log in
|
||||
type MappingMethodType string
|
||||
|
||||
const (
|
||||
// MappingMethodClaim provisions a user with the identity’s preferred user name. Fails if a user
|
||||
// with that user name is already mapped to another identity.
|
||||
// Default.
|
||||
MappingMethodClaim MappingMethodType = "claim"
|
||||
|
||||
// MappingMethodLookup looks up existing users already mapped to an identity but does not
|
||||
// automatically provision users or identities. Requires identities and users be set up
|
||||
// manually or using an external process.
|
||||
MappingMethodLookup MappingMethodType = "lookup"
|
||||
|
||||
// MappingMethodAdd provisions a user with the identity’s preferred user name. If a user with
|
||||
// that user name already exists, the identity is mapped to the existing user, adding to any
|
||||
// existing identity mappings for the user.
|
||||
MappingMethodAdd MappingMethodType = "add"
|
||||
)
|
||||
|
||||
type IdentityProviderType string
|
||||
|
||||
const (
|
||||
// IdentityProviderTypeBasicAuth provides identities for users authenticating with HTTP Basic Auth
|
||||
IdentityProviderTypeBasicAuth IdentityProviderType = "BasicAuth"
|
||||
|
||||
// IdentityProviderTypeGitHub provides identities for users authenticating using GitHub credentials
|
||||
IdentityProviderTypeGitHub IdentityProviderType = "GitHub"
|
||||
|
||||
// IdentityProviderTypeGitLab provides identities for users authenticating using GitLab credentials
|
||||
IdentityProviderTypeGitLab IdentityProviderType = "GitLab"
|
||||
|
||||
// IdentityProviderTypeGoogle provides identities for users authenticating using Google credentials
|
||||
IdentityProviderTypeGoogle IdentityProviderType = "Google"
|
||||
|
||||
// IdentityProviderTypeHTPasswd provides identities from an HTPasswd file
|
||||
IdentityProviderTypeHTPasswd IdentityProviderType = "HTPasswd"
|
||||
|
||||
// IdentityProviderTypeKeystone provides identitities for users authenticating using keystone password credentials
|
||||
IdentityProviderTypeKeystone IdentityProviderType = "Keystone"
|
||||
|
||||
// IdentityProviderTypeLDAP provides identities for users authenticating using LDAP credentials
|
||||
IdentityProviderTypeLDAP IdentityProviderType = "LDAP"
|
||||
|
||||
// IdentityProviderTypeOpenID provides identities for users authenticating using OpenID credentials
|
||||
IdentityProviderTypeOpenID IdentityProviderType = "OpenID"
|
||||
|
||||
// IdentityProviderTypeRequestHeader provides identities for users authenticating using request header credentials
|
||||
IdentityProviderTypeRequestHeader IdentityProviderType = "RequestHeader"
|
||||
)
|
||||
|
||||
// IdentityProviderConfig contains configuration for using a specific identity provider
|
||||
type IdentityProviderConfig struct {
|
||||
// type identifies the identity provider type for this entry.
|
||||
Type IdentityProviderType `json:"type"`
|
||||
|
||||
// Provider-specific configuration
|
||||
// The json tag MUST match the `Type` specified above, case-insensitively
|
||||
// e.g. For `Type: "LDAP"`, the `ldap` configuration should be provided
|
||||
|
||||
// basicAuth contains configuration options for the BasicAuth IdP
|
||||
// +optional
|
||||
BasicAuth *BasicAuthIdentityProvider `json:"basicAuth,omitempty"`
|
||||
|
||||
// github enables user authentication using GitHub credentials
|
||||
// +optional
|
||||
GitHub *GitHubIdentityProvider `json:"github,omitempty"`
|
||||
|
||||
// gitlab enables user authentication using GitLab credentials
|
||||
// +optional
|
||||
GitLab *GitLabIdentityProvider `json:"gitlab,omitempty"`
|
||||
|
||||
// google enables user authentication using Google credentials
|
||||
// +optional
|
||||
Google *GoogleIdentityProvider `json:"google,omitempty"`
|
||||
|
||||
// htpasswd enables user authentication using an HTPasswd file to validate credentials
|
||||
// +optional
|
||||
HTPasswd *HTPasswdIdentityProvider `json:"htpasswd,omitempty"`
|
||||
|
||||
// keystone enables user authentication using keystone password credentials
|
||||
// +optional
|
||||
Keystone *KeystoneIdentityProvider `json:"keystone,omitempty"`
|
||||
|
||||
// ldap enables user authentication using LDAP credentials
|
||||
// +optional
|
||||
LDAP *LDAPIdentityProvider `json:"ldap,omitempty"`
|
||||
|
||||
// openID enables user authentication using OpenID credentials
|
||||
// +optional
|
||||
OpenID *OpenIDIdentityProvider `json:"openID,omitempty"`
|
||||
|
||||
// requestHeader enables user authentication using request header credentials
|
||||
// +optional
|
||||
RequestHeader *RequestHeaderIdentityProvider `json:"requestHeader,omitempty"`
|
||||
}
|
||||
|
||||
// BasicAuthPasswordIdentityProvider provides identities for users authenticating using HTTP basic auth credentials
|
||||
type BasicAuthIdentityProvider struct {
|
||||
// OAuthRemoteConnectionInfo contains information about how to connect to the external basic auth server
|
||||
OAuthRemoteConnectionInfo `json:",inline"`
|
||||
}
|
||||
|
||||
// OAuthRemoteConnectionInfo holds information necessary for establishing a remote connection
|
||||
type OAuthRemoteConnectionInfo struct {
|
||||
// url is the remote URL to connect to
|
||||
URL string `json:"url"`
|
||||
|
||||
// ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// If empty, the default system roots are used.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CA ConfigMapNameReference `json:"ca"`
|
||||
|
||||
// tlsClientCert is an optional reference to a secret by name that contains the
|
||||
// PEM-encoded TLS client certificate to present when connecting to the server.
|
||||
// The key "tls.crt" is used to locate the data.
|
||||
// If specified and the secret or expected key is not found, the identity provider is not honored.
|
||||
// If the specified certificate data is not valid, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
TLSClientCert SecretNameReference `json:"tlsClientCert"`
|
||||
|
||||
// tlsClientKey is an optional reference to a secret by name that contains the
|
||||
// PEM-encoded TLS private key for the client certificate referenced in tlsClientCert.
|
||||
// The key "tls.key" is used to locate the data.
|
||||
// If specified and the secret or expected key is not found, the identity provider is not honored.
|
||||
// If the specified certificate data is not valid, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
TLSClientKey SecretNameReference `json:"tlsClientKey"`
|
||||
}
|
||||
|
||||
// HTPasswdPasswordIdentityProvider provides identities for users authenticating using htpasswd credentials
|
||||
type HTPasswdIdentityProvider struct {
|
||||
// fileData is a required reference to a secret by name containing the data to use as the htpasswd file.
|
||||
// The key "htpasswd" is used to locate the data.
|
||||
// If the secret or expected key is not found, the identity provider is not honored.
|
||||
// If the specified htpasswd data is not valid, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
FileData SecretNameReference `json:"fileData"`
|
||||
}
|
||||
|
||||
// LDAPPasswordIdentityProvider provides identities for users authenticating using LDAP credentials
|
||||
type LDAPIdentityProvider struct {
|
||||
// url is an RFC 2255 URL which specifies the LDAP search parameters to use.
|
||||
// The syntax of the URL is:
|
||||
// ldap://host:port/basedn?attribute?scope?filter
|
||||
URL string `json:"url"`
|
||||
|
||||
// bindDN is an optional DN to bind with during the search phase.
|
||||
// +optional
|
||||
BindDN string `json:"bindDN"`
|
||||
|
||||
// bindPassword is an optional reference to a secret by name
|
||||
// containing a password to bind with during the search phase.
|
||||
// The key "bindPassword" is used to locate the data.
|
||||
// If specified and the secret or expected key is not found, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
// +optional
|
||||
BindPassword SecretNameReference `json:"bindPassword"`
|
||||
|
||||
// insecure, if true, indicates the connection should not use TLS
|
||||
// WARNING: Should not be set to `true` with the URL scheme "ldaps://" as "ldaps://" URLs always
|
||||
// attempt to connect using TLS, even when `insecure` is set to `true`
|
||||
// When `true`, "ldap://" URLS connect insecurely. When `false`, "ldap://" URLs are upgraded to
|
||||
// a TLS connection using StartTLS as specified in https://tools.ietf.org/html/rfc2830.
|
||||
Insecure bool `json:"insecure"`
|
||||
|
||||
// ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// If empty, the default system roots are used.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CA ConfigMapNameReference `json:"ca"`
|
||||
|
||||
// attributes maps LDAP attributes to identities
|
||||
Attributes LDAPAttributeMapping `json:"attributes"`
|
||||
}
|
||||
|
||||
// LDAPAttributeMapping maps LDAP attributes to OpenShift identity fields
|
||||
type LDAPAttributeMapping struct {
|
||||
// id is the list of attributes whose values should be used as the user ID. Required.
|
||||
// First non-empty attribute is used. At least one attribute is required. If none of the listed
|
||||
// attribute have a value, authentication fails.
|
||||
// LDAP standard identity attribute is "dn"
|
||||
ID []string `json:"id"`
|
||||
|
||||
// preferredUsername is the list of attributes whose values should be used as the preferred username.
|
||||
// LDAP standard login attribute is "uid"
|
||||
// +optional
|
||||
PreferredUsername []string `json:"preferredUsername,omitempty"`
|
||||
|
||||
// name is the list of attributes whose values should be used as the display name. Optional.
|
||||
// If unspecified, no display name is set for the identity
|
||||
// LDAP standard display name attribute is "cn"
|
||||
// +optional
|
||||
Name []string `json:"name,omitempty"`
|
||||
|
||||
// email is the list of attributes whose values should be used as the email address. Optional.
|
||||
// If unspecified, no email is set for the identity
|
||||
// +optional
|
||||
Email []string `json:"email,omitempty"`
|
||||
}
|
||||
|
||||
// KeystonePasswordIdentityProvider provides identities for users authenticating using keystone password credentials
|
||||
type KeystoneIdentityProvider struct {
|
||||
// OAuthRemoteConnectionInfo contains information about how to connect to the keystone server
|
||||
OAuthRemoteConnectionInfo `json:",inline"`
|
||||
|
||||
// domainName is required for keystone v3
|
||||
DomainName string `json:"domainName"`
|
||||
|
||||
// TODO if we ever add support for 3.11 to 4.0 upgrades, add this configuration
|
||||
// useUsernameIdentity indicates that users should be authenticated by username, not keystone ID
|
||||
// DEPRECATED - only use this option for legacy systems to ensure backwards compatibility
|
||||
// +optional
|
||||
// UseUsernameIdentity bool `json:"useUsernameIdentity"`
|
||||
}
|
||||
|
||||
// RequestHeaderIdentityProvider provides identities for users authenticating using request header credentials
|
||||
type RequestHeaderIdentityProvider struct {
|
||||
// loginURL is a URL to redirect unauthenticated /authorize requests to
|
||||
// Unauthenticated requests from OAuth clients which expect interactive logins will be redirected here
|
||||
// ${url} is replaced with the current URL, escaped to be safe in a query parameter
|
||||
// https://www.example.com/sso-login?then=${url}
|
||||
// ${query} is replaced with the current query string
|
||||
// https://www.example.com/auth-proxy/oauth/authorize?${query}
|
||||
// Required when login is set to true.
|
||||
LoginURL string `json:"loginURL"`
|
||||
|
||||
// challengeURL is a URL to redirect unauthenticated /authorize requests to
|
||||
// Unauthenticated requests from OAuth clients which expect WWW-Authenticate challenges will be
|
||||
// redirected here.
|
||||
// ${url} is replaced with the current URL, escaped to be safe in a query parameter
|
||||
// https://www.example.com/sso-login?then=${url}
|
||||
// ${query} is replaced with the current query string
|
||||
// https://www.example.com/auth-proxy/oauth/authorize?${query}
|
||||
// Required when challenge is set to true.
|
||||
ChallengeURL string `json:"challengeURL"`
|
||||
|
||||
// ca is a required reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// Specifically, it allows verification of incoming requests to prevent header spoofing.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// The namespace for this config map is openshift-config.
|
||||
ClientCA ConfigMapNameReference `json:"ca"`
|
||||
|
||||
// clientCommonNames is an optional list of common names to require a match from. If empty, any
|
||||
// client certificate validated against the clientCA bundle is considered authoritative.
|
||||
// +optional
|
||||
ClientCommonNames []string `json:"clientCommonNames,omitempty"`
|
||||
|
||||
// headers is the set of headers to check for identity information
|
||||
Headers []string `json:"headers"`
|
||||
|
||||
// preferredUsernameHeaders is the set of headers to check for the preferred username
|
||||
PreferredUsernameHeaders []string `json:"preferredUsernameHeaders"`
|
||||
|
||||
// nameHeaders is the set of headers to check for the display name
|
||||
NameHeaders []string `json:"nameHeaders"`
|
||||
|
||||
// emailHeaders is the set of headers to check for the email address
|
||||
EmailHeaders []string `json:"emailHeaders"`
|
||||
}
|
||||
|
||||
// GitHubIdentityProvider provides identities for users authenticating using GitHub credentials
|
||||
type GitHubIdentityProvider struct {
|
||||
// clientID is the oauth client ID
|
||||
ClientID string `json:"clientID"`
|
||||
|
||||
// clientSecret is a required reference to the secret by name containing the oauth client secret.
|
||||
// The key "clientSecret" is used to locate the data.
|
||||
// If the secret or expected key is not found, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
ClientSecret SecretNameReference `json:"clientSecret"`
|
||||
|
||||
// organizations optionally restricts which organizations are allowed to log in
|
||||
// +optional
|
||||
Organizations []string `json:"organizations,omitempty"`
|
||||
|
||||
// teams optionally restricts which teams are allowed to log in. Format is <org>/<team>.
|
||||
// +optional
|
||||
Teams []string `json:"teams,omitempty"`
|
||||
|
||||
// hostname is the optional domain (e.g. "mycompany.com") for use with a hosted instance of
|
||||
// GitHub Enterprise.
|
||||
// It must match the GitHub Enterprise settings value configured at /setup/settings#hostname.
|
||||
// +optional
|
||||
Hostname string `json:"hostname"`
|
||||
|
||||
// ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// If empty, the default system roots are used.
|
||||
// This can only be configured when hostname is set to a non-empty value.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CA ConfigMapNameReference `json:"ca"`
|
||||
}
|
||||
|
||||
// GitLabIdentityProvider provides identities for users authenticating using GitLab credentials
|
||||
type GitLabIdentityProvider struct {
|
||||
// clientID is the oauth client ID
|
||||
ClientID string `json:"clientID"`
|
||||
|
||||
// clientSecret is a required reference to the secret by name containing the oauth client secret.
|
||||
// The key "clientSecret" is used to locate the data.
|
||||
// If the secret or expected key is not found, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
ClientSecret SecretNameReference `json:"clientSecret"`
|
||||
|
||||
// url is the oauth server base URL
|
||||
URL string `json:"url"`
|
||||
|
||||
// ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// If empty, the default system roots are used.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CA ConfigMapNameReference `json:"ca"`
|
||||
}
|
||||
|
||||
// GoogleIdentityProvider provides identities for users authenticating using Google credentials
|
||||
type GoogleIdentityProvider struct {
|
||||
// clientID is the oauth client ID
|
||||
ClientID string `json:"clientID"`
|
||||
|
||||
// clientSecret is a required reference to the secret by name containing the oauth client secret.
|
||||
// The key "clientSecret" is used to locate the data.
|
||||
// If the secret or expected key is not found, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
ClientSecret SecretNameReference `json:"clientSecret"`
|
||||
|
||||
// hostedDomain is the optional Google App domain (e.g. "mycompany.com") to restrict logins to
|
||||
// +optional
|
||||
HostedDomain string `json:"hostedDomain"`
|
||||
}
|
||||
|
||||
// OpenIDIdentityProvider provides identities for users authenticating using OpenID credentials
|
||||
type OpenIDIdentityProvider struct {
|
||||
// clientID is the oauth client ID
|
||||
ClientID string `json:"clientID"`
|
||||
|
||||
// clientSecret is a required reference to the secret by name containing the oauth client secret.
|
||||
// The key "clientSecret" is used to locate the data.
|
||||
// If the secret or expected key is not found, the identity provider is not honored.
|
||||
// The namespace for this secret is openshift-config.
|
||||
ClientSecret SecretNameReference `json:"clientSecret"`
|
||||
|
||||
// ca is an optional reference to a config map by name containing the PEM-encoded CA bundle.
|
||||
// It is used as a trust anchor to validate the TLS certificate presented by the remote server.
|
||||
// The key "ca.crt" is used to locate the data.
|
||||
// If specified and the config map or expected key is not found, the identity provider is not honored.
|
||||
// If the specified ca data is not valid, the identity provider is not honored.
|
||||
// If empty, the default system roots are used.
|
||||
// The namespace for this config map is openshift-config.
|
||||
// +optional
|
||||
CA ConfigMapNameReference `json:"ca"`
|
||||
|
||||
// extraScopes are any scopes to request in addition to the standard "openid" scope.
|
||||
// +optional
|
||||
ExtraScopes []string `json:"extraScopes,omitempty"`
|
||||
|
||||
// extraAuthorizeParameters are any custom parameters to add to the authorize request.
|
||||
// +optional
|
||||
ExtraAuthorizeParameters map[string]string `json:"extraAuthorizeParameters,omitempty"`
|
||||
|
||||
// issuer is the URL that the OpenID Provider asserts as its Issuer Identifier.
|
||||
// It must use the https scheme with no query or fragment component.
|
||||
Issuer string `json:"issuer"`
|
||||
|
||||
// claims mappings
|
||||
Claims OpenIDClaims `json:"claims"`
|
||||
}
|
||||
|
||||
// UserIDClaim is the claim used to provide a stable identifier for OIDC identities.
|
||||
// Per http://openid.net/specs/openid-connect-core-1_0.html#ClaimStability
|
||||
// "The sub (subject) and iss (issuer) Claims, used together, are the only Claims that an RP can
|
||||
// rely upon as a stable identifier for the End-User, since the sub Claim MUST be locally unique
|
||||
// and never reassigned within the Issuer for a particular End-User, as described in Section 2.
|
||||
// Therefore, the only guaranteed unique identifier for a given End-User is the combination of the
|
||||
// iss Claim and the sub Claim."
|
||||
const UserIDClaim = "sub"
|
||||
|
||||
// OpenIDClaims contains a list of OpenID claims to use when authenticating with an OpenID identity provider
|
||||
type OpenIDClaims struct {
|
||||
// preferredUsername is the list of claims whose values should be used as the preferred username.
|
||||
// If unspecified, the preferred username is determined from the value of the sub claim
|
||||
// +optional
|
||||
PreferredUsername []string `json:"preferredUsername,omitempty"`
|
||||
|
||||
// name is the list of claims whose values should be used as the display name. Optional.
|
||||
// If unspecified, no display name is set for the identity
|
||||
// +optional
|
||||
Name []string `json:"name,omitempty"`
|
||||
|
||||
// email is the list of claims whose values should be used as the email address. Optional.
|
||||
// If unspecified, no email is set for the identity
|
||||
// +optional
|
||||
Email []string `json:"email,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type OAuthList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []OAuth `json:"items"`
|
||||
}
|
78
vendor/github.com/openshift/api/config/v1/types_operatorhub.go
generated
vendored
78
vendor/github.com/openshift/api/config/v1/types_operatorhub.go
generated
vendored
@ -1,78 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// OperatorHubSpec defines the desired state of OperatorHub
|
||||
type OperatorHubSpec struct {
|
||||
// disableAllDefaultSources allows you to disable all the default hub
|
||||
// sources. If this is true, a specific entry in sources can be used to
|
||||
// enable a default source. If this is false, a specific entry in
|
||||
// sources can be used to disable or enable a default source.
|
||||
// +optional
|
||||
DisableAllDefaultSources bool `json:"disableAllDefaultSources,omitempty"`
|
||||
// sources is the list of default hub sources and their configuration.
|
||||
// If the list is empty, it implies that the default hub sources are
|
||||
// enabled on the cluster unless disableAllDefaultSources is true.
|
||||
// If disableAllDefaultSources is true and sources is not empty,
|
||||
// the configuration present in sources will take precedence. The list of
|
||||
// default hub sources and their current state will always be reflected in
|
||||
// the status block.
|
||||
// +optional
|
||||
Sources []HubSource `json:"sources,omitempty"`
|
||||
}
|
||||
|
||||
// OperatorHubStatus defines the observed state of OperatorHub. The current
|
||||
// state of the default hub sources will always be reflected here.
|
||||
type OperatorHubStatus struct {
|
||||
// sources encapsulates the result of applying the configuration for each
|
||||
// hub source
|
||||
Sources []HubSourceStatus `json:"sources,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// OperatorHub is the Schema for the operatorhubs API. It can be used to change
|
||||
// the state of the default hub sources for OperatorHub on the cluster from
|
||||
// enabled to disabled and vice versa.
|
||||
// +kubebuilder:subresource:status
|
||||
// +genclient:nonNamespaced
|
||||
type OperatorHub struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata"`
|
||||
|
||||
Spec OperatorHubSpec `json:"spec"`
|
||||
Status OperatorHubStatus `json:"status"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// OperatorHubList contains a list of OperatorHub
|
||||
type OperatorHubList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
Items []OperatorHub `json:"items"`
|
||||
}
|
||||
|
||||
// HubSource is used to specify the hub source and its configuration
|
||||
type HubSource struct {
|
||||
// name is the name of one of the default hub sources
|
||||
// +kubebuilder:validation:MaxLength=253
|
||||
// +kubebuilder:validation:MinLength=1
|
||||
// +kubebuilder:Required
|
||||
Name string `json:"name"`
|
||||
// disabled is used to disable a default hub source on cluster
|
||||
// +kubebuilder:Required
|
||||
Disabled bool `json:"disabled"`
|
||||
}
|
||||
|
||||
// HubSourceStatus is used to reflect the current state of applying the
|
||||
// configuration to a default source
|
||||
type HubSourceStatus struct {
|
||||
HubSource `json:",omitempty"`
|
||||
// status indicates success or failure in applying the configuration
|
||||
Status string `json:"status,omitempty"`
|
||||
// message provides more information regarding failures
|
||||
Message string `json:"message,omitempty"`
|
||||
}
|
54
vendor/github.com/openshift/api/config/v1/types_project.go
generated
vendored
54
vendor/github.com/openshift/api/config/v1/types_project.go
generated
vendored
@ -1,54 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Project holds cluster-wide information about Project. The canonical name is `cluster`
|
||||
type Project struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ProjectSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status ProjectStatus `json:"status"`
|
||||
}
|
||||
|
||||
// TemplateReference references a template in a specific namespace.
|
||||
// The namespace must be specified at the point of use.
|
||||
type TemplateReference struct {
|
||||
// name is the metadata.name of the referenced project request template
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
// ProjectSpec holds the project creation configuration.
|
||||
type ProjectSpec struct {
|
||||
// projectRequestMessage is the string presented to a user if they are unable to request a project via the projectrequest api endpoint
|
||||
// +optional
|
||||
ProjectRequestMessage string `json:"projectRequestMessage"`
|
||||
|
||||
// projectRequestTemplate is the template to use for creating projects in response to projectrequest.
|
||||
// This must point to a template in 'openshift-config' namespace. It is optional.
|
||||
// If it is not specified, a default template is used.
|
||||
//
|
||||
// +optional
|
||||
ProjectRequestTemplate TemplateReference `json:"projectRequestTemplate"`
|
||||
}
|
||||
|
||||
type ProjectStatus struct {
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type ProjectList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Project `json:"items"`
|
||||
}
|
90
vendor/github.com/openshift/api/config/v1/types_proxy.go
generated
vendored
90
vendor/github.com/openshift/api/config/v1/types_proxy.go
generated
vendored
@ -1,90 +0,0 @@
|
||||
package v1
|
||||
|
||||
import (
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
)
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Proxy holds cluster-wide information on how to configure default proxies for the cluster. The canonical name is `cluster`
|
||||
type Proxy struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// Spec holds user-settable values for the proxy configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec ProxySpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status ProxyStatus `json:"status"`
|
||||
}
|
||||
|
||||
// ProxySpec contains cluster proxy creation configuration.
|
||||
type ProxySpec struct {
|
||||
// httpProxy is the URL of the proxy for HTTP requests. Empty means unset and will not result in an env var.
|
||||
// +optional
|
||||
HTTPProxy string `json:"httpProxy,omitempty"`
|
||||
|
||||
// httpsProxy is the URL of the proxy for HTTPS requests. Empty means unset and will not result in an env var.
|
||||
// +optional
|
||||
HTTPSProxy string `json:"httpsProxy,omitempty"`
|
||||
|
||||
// noProxy is a comma-separated list of hostnames and/or CIDRs for which the proxy should not be used.
|
||||
// Empty means unset and will not result in an env var.
|
||||
// +optional
|
||||
NoProxy string `json:"noProxy,omitempty"`
|
||||
|
||||
// readinessEndpoints is a list of endpoints used to verify readiness of the proxy.
|
||||
// +optional
|
||||
ReadinessEndpoints []string `json:"readinessEndpoints,omitempty"`
|
||||
|
||||
// trustedCA is a reference to a ConfigMap containing a CA certificate bundle used
|
||||
// for client egress HTTPS connections. The certificate bundle must be from the CA
|
||||
// that signed the proxy's certificate and be signed for everything. The trustedCA
|
||||
// field should only be consumed by a proxy validator. The validator is responsible
|
||||
// for reading the certificate bundle from required key "ca-bundle.crt" and copying
|
||||
// it to a ConfigMap named "trusted-ca-bundle" in the "openshift-config-managed"
|
||||
// namespace. The namespace for the ConfigMap referenced by trustedCA is
|
||||
// "openshift-config". Here is an example ConfigMap (in yaml):
|
||||
//
|
||||
// apiVersion: v1
|
||||
// kind: ConfigMap
|
||||
// metadata:
|
||||
// name: user-ca-bundle
|
||||
// namespace: openshift-config
|
||||
// data:
|
||||
// ca-bundle.crt: |
|
||||
// -----BEGIN CERTIFICATE-----
|
||||
// Custom CA certificate bundle.
|
||||
// -----END CERTIFICATE-----
|
||||
//
|
||||
// +optional
|
||||
TrustedCA ConfigMapNameReference `json:"trustedCA,omitempty"`
|
||||
}
|
||||
|
||||
// ProxyStatus shows current known state of the cluster proxy.
|
||||
type ProxyStatus struct {
|
||||
// httpProxy is the URL of the proxy for HTTP requests.
|
||||
// +optional
|
||||
HTTPProxy string `json:"httpProxy,omitempty"`
|
||||
|
||||
// httpsProxy is the URL of the proxy for HTTPS requests.
|
||||
// +optional
|
||||
HTTPSProxy string `json:"httpsProxy,omitempty"`
|
||||
|
||||
// noProxy is a comma-separated list of hostnames and/or CIDRs for which the proxy should not be used.
|
||||
// +optional
|
||||
NoProxy string `json:"noProxy,omitempty"`
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type ProxyList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Proxy `json:"items"`
|
||||
}
|
74
vendor/github.com/openshift/api/config/v1/types_scheduling.go
generated
vendored
74
vendor/github.com/openshift/api/config/v1/types_scheduling.go
generated
vendored
@ -1,74 +0,0 @@
|
||||
package v1
|
||||
|
||||
import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
// +genclient
|
||||
// +genclient:nonNamespaced
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
// Scheduler holds cluster-wide config information to run the Kubernetes Scheduler
|
||||
// and influence its placement decisions. The canonical name for this config is `cluster`.
|
||||
type Scheduler struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ObjectMeta `json:"metadata,omitempty"`
|
||||
|
||||
// spec holds user settable values for configuration
|
||||
// +kubebuilder:validation:Required
|
||||
// +required
|
||||
Spec SchedulerSpec `json:"spec"`
|
||||
// status holds observed values from the cluster. They may not be overridden.
|
||||
// +optional
|
||||
Status SchedulerStatus `json:"status"`
|
||||
}
|
||||
|
||||
type SchedulerSpec struct {
|
||||
// policy is a reference to a ConfigMap containing scheduler policy which has
|
||||
// user specified predicates and priorities. If this ConfigMap is not available
|
||||
// scheduler will default to use DefaultAlgorithmProvider.
|
||||
// The namespace for this configmap is openshift-config.
|
||||
// +optional
|
||||
Policy ConfigMapNameReference `json:"policy"`
|
||||
// defaultNodeSelector helps set the cluster-wide default node selector to
|
||||
// restrict pod placement to specific nodes. This is applied to the pods
|
||||
// created in all namespaces without a specified nodeSelector value.
|
||||
// For example,
|
||||
// defaultNodeSelector: "type=user-node,region=east" would set nodeSelector
|
||||
// field in pod spec to "type=user-node,region=east" to all pods created
|
||||
// in all namespaces. Namespaces having project-wide node selectors won't be
|
||||
// impacted even if this field is set. This adds an annotation section to
|
||||
// the namespace.
|
||||
// For example, if a new namespace is created with
|
||||
// node-selector='type=user-node,region=east',
|
||||
// the annotation openshift.io/node-selector: type=user-node,region=east
|
||||
// gets added to the project. When the openshift.io/node-selector annotation
|
||||
// is set on the project the value is used in preference to the value we are setting
|
||||
// for defaultNodeSelector field.
|
||||
// For instance,
|
||||
// openshift.io/node-selector: "type=user-node,region=west" means
|
||||
// that the default of "type=user-node,region=east" set in defaultNodeSelector
|
||||
// would not be applied.
|
||||
// +optional
|
||||
DefaultNodeSelector string `json:"defaultNodeSelector,omitempty"`
|
||||
// MastersSchedulable allows masters nodes to be schedulable. When this flag is
|
||||
// turned on, all the master nodes in the cluster will be made schedulable,
|
||||
// so that workload pods can run on them. The default value for this field is false,
|
||||
// meaning none of the master nodes are schedulable.
|
||||
// Important Note: Once the workload pods start running on the master nodes,
|
||||
// extreme care must be taken to ensure that cluster-critical control plane components
|
||||
// are not impacted.
|
||||
// Please turn on this field after doing due diligence.
|
||||
// +optional
|
||||
MastersSchedulable bool `json:"mastersSchedulable"`
|
||||
}
|
||||
|
||||
type SchedulerStatus struct {
|
||||
}
|
||||
|
||||
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
||||
|
||||
type SchedulerList struct {
|
||||
metav1.TypeMeta `json:",inline"`
|
||||
metav1.ListMeta `json:"metadata"`
|
||||
|
||||
Items []Scheduler `json:"items"`
|
||||
}
|
260
vendor/github.com/openshift/api/config/v1/types_tlssecurityprofile.go
generated
vendored
260
vendor/github.com/openshift/api/config/v1/types_tlssecurityprofile.go
generated
vendored
@ -1,260 +0,0 @@
|
||||
package v1
|
||||
|
||||
// TLSSecurityProfile defines the schema for a TLS security profile. This object
|
||||
// is used by operators to apply TLS security settings to operands.
|
||||
// +union
|
||||
type TLSSecurityProfile struct {
|
||||
// type is one of Old, Intermediate, Modern or Custom. Custom provides
|
||||
// the ability to specify individual TLS security profile parameters.
|
||||
// Old, Intermediate and Modern are TLS security profiles based on:
|
||||
//
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations
|
||||
//
|
||||
// The profiles are intent based, so they may change over time as new ciphers are developed and existing ciphers
|
||||
// are found to be insecure. Depending on precisely which ciphers are available to a process, the list may be
|
||||
// reduced.
|
||||
//
|
||||
// Note that the Modern profile is currently not supported because it is not
|
||||
// yet well adopted by common software libraries.
|
||||
//
|
||||
// +unionDiscriminator
|
||||
// +optional
|
||||
Type TLSProfileType `json:"type"`
|
||||
// old is a TLS security profile based on:
|
||||
//
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
|
||||
//
|
||||
// and looks like this (yaml):
|
||||
//
|
||||
// ciphers:
|
||||
// - TLS_AES_128_GCM_SHA256
|
||||
// - TLS_AES_256_GCM_SHA384
|
||||
// - TLS_CHACHA20_POLY1305_SHA256
|
||||
// - ECDHE-ECDSA-AES128-GCM-SHA256
|
||||
// - ECDHE-RSA-AES128-GCM-SHA256
|
||||
// - ECDHE-ECDSA-AES256-GCM-SHA384
|
||||
// - ECDHE-RSA-AES256-GCM-SHA384
|
||||
// - ECDHE-ECDSA-CHACHA20-POLY1305
|
||||
// - ECDHE-RSA-CHACHA20-POLY1305
|
||||
// - DHE-RSA-AES128-GCM-SHA256
|
||||
// - DHE-RSA-AES256-GCM-SHA384
|
||||
// - DHE-RSA-CHACHA20-POLY1305
|
||||
// - ECDHE-ECDSA-AES128-SHA256
|
||||
// - ECDHE-RSA-AES128-SHA256
|
||||
// - ECDHE-ECDSA-AES128-SHA
|
||||
// - ECDHE-RSA-AES128-SHA
|
||||
// - ECDHE-ECDSA-AES256-SHA384
|
||||
// - ECDHE-RSA-AES256-SHA384
|
||||
// - ECDHE-ECDSA-AES256-SHA
|
||||
// - ECDHE-RSA-AES256-SHA
|
||||
// - DHE-RSA-AES128-SHA256
|
||||
// - DHE-RSA-AES256-SHA256
|
||||
// - AES128-GCM-SHA256
|
||||
// - AES256-GCM-SHA384
|
||||
// - AES128-SHA256
|
||||
// - AES256-SHA256
|
||||
// - AES128-SHA
|
||||
// - AES256-SHA
|
||||
// - DES-CBC3-SHA
|
||||
// minTLSVersion: TLSv1.0
|
||||
//
|
||||
// +optional
|
||||
// +nullable
|
||||
Old *OldTLSProfile `json:"old,omitempty"`
|
||||
// intermediate is a TLS security profile based on:
|
||||
//
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28recommended.29
|
||||
//
|
||||
// and looks like this (yaml):
|
||||
//
|
||||
// ciphers:
|
||||
// - TLS_AES_128_GCM_SHA256
|
||||
// - TLS_AES_256_GCM_SHA384
|
||||
// - TLS_CHACHA20_POLY1305_SHA256
|
||||
// - ECDHE-ECDSA-AES128-GCM-SHA256
|
||||
// - ECDHE-RSA-AES128-GCM-SHA256
|
||||
// - ECDHE-ECDSA-AES256-GCM-SHA384
|
||||
// - ECDHE-RSA-AES256-GCM-SHA384
|
||||
// - ECDHE-ECDSA-CHACHA20-POLY1305
|
||||
// - ECDHE-RSA-CHACHA20-POLY1305
|
||||
// - DHE-RSA-AES128-GCM-SHA256
|
||||
// - DHE-RSA-AES256-GCM-SHA384
|
||||
// minTLSVersion: TLSv1.2
|
||||
//
|
||||
// +optional
|
||||
// +nullable
|
||||
Intermediate *IntermediateTLSProfile `json:"intermediate,omitempty"`
|
||||
// modern is a TLS security profile based on:
|
||||
//
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
|
||||
//
|
||||
// and looks like this (yaml):
|
||||
//
|
||||
// ciphers:
|
||||
// - TLS_AES_128_GCM_SHA256
|
||||
// - TLS_AES_256_GCM_SHA384
|
||||
// - TLS_CHACHA20_POLY1305_SHA256
|
||||
// minTLSVersion: TLSv1.3
|
||||
//
|
||||
// NOTE: Currently unsupported.
|
||||
//
|
||||
// +optional
|
||||
// +nullable
|
||||
Modern *ModernTLSProfile `json:"modern,omitempty"`
|
||||
// custom is a user-defined TLS security profile. Be extremely careful using a custom
|
||||
// profile as invalid configurations can be catastrophic. An example custom profile
|
||||
// looks like this:
|
||||
//
|
||||
// ciphers:
|
||||
// - ECDHE-ECDSA-CHACHA20-POLY1305
|
||||
// - ECDHE-RSA-CHACHA20-POLY1305
|
||||
// - ECDHE-RSA-AES128-GCM-SHA256
|
||||
// - ECDHE-ECDSA-AES128-GCM-SHA256
|
||||
// minTLSVersion: TLSv1.1
|
||||
//
|
||||
// +optional
|
||||
// +nullable
|
||||
Custom *CustomTLSProfile `json:"custom,omitempty"`
|
||||
}
|
||||
|
||||
// OldTLSProfile is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
|
||||
type OldTLSProfile struct{}
|
||||
|
||||
// IntermediateTLSProfile is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28default.29
|
||||
type IntermediateTLSProfile struct{}
|
||||
|
||||
// ModernTLSProfile is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
|
||||
type ModernTLSProfile struct{}
|
||||
|
||||
// CustomTLSProfile is a user-defined TLS security profile. Be extremely careful
|
||||
// using a custom TLS profile as invalid configurations can be catastrophic.
|
||||
type CustomTLSProfile struct {
|
||||
TLSProfileSpec `json:",inline"`
|
||||
}
|
||||
|
||||
// TLSProfileType defines a TLS security profile type.
|
||||
type TLSProfileType string
|
||||
|
||||
const (
|
||||
// Old is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Old_backward_compatibility
|
||||
TLSProfileOldType TLSProfileType = "Old"
|
||||
// Intermediate is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Intermediate_compatibility_.28default.29
|
||||
TLSProfileIntermediateType TLSProfileType = "Intermediate"
|
||||
// Modern is a TLS security profile based on:
|
||||
// https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility
|
||||
TLSProfileModernType TLSProfileType = "Modern"
|
||||
// Custom is a TLS security profile that allows for user-defined parameters.
|
||||
TLSProfileCustomType TLSProfileType = "Custom"
|
||||
)
|
||||
|
||||
// TLSProfileSpec is the desired behavior of a TLSSecurityProfile.
|
||||
type TLSProfileSpec struct {
|
||||
// ciphers is used to specify the cipher algorithms that are negotiated
|
||||
// during the TLS handshake. Operators may remove entries their operands
|
||||
// do not support. For example, to use DES-CBC3-SHA (yaml):
|
||||
//
|
||||
// ciphers:
|
||||
// - DES-CBC3-SHA
|
||||
//
|
||||
Ciphers []string `json:"ciphers"`
|
||||
// minTLSVersion is used to specify the minimal version of the TLS protocol
|
||||
// that is negotiated during the TLS handshake. For example, to use TLS
|
||||
// versions 1.1, 1.2 and 1.3 (yaml):
|
||||
//
|
||||
// minTLSVersion: TLSv1.1
|
||||
//
|
||||
// NOTE: currently the highest minTLSVersion allowed is VersionTLS12
|
||||
//
|
||||
MinTLSVersion TLSProtocolVersion `json:"minTLSVersion"`
|
||||
}
|
||||
|
||||
// TLSProtocolVersion is a way to specify the protocol version used for TLS connections.
|
||||
// Protocol versions are based on the following most common TLS configurations:
|
||||
//
|
||||
// https://ssl-config.mozilla.org/
|
||||
//
|
||||
// Note that SSLv3.0 is not a supported protocol version due to well known
|
||||
// vulnerabilities such as POODLE: https://en.wikipedia.org/wiki/POODLE
|
||||
type TLSProtocolVersion string
|
||||
|
||||
const (
|
||||
// VersionTLSv10 is version 1.0 of the TLS security protocol.
|
||||
VersionTLS10 TLSProtocolVersion = "VersionTLS10"
|
||||
// VersionTLSv11 is version 1.1 of the TLS security protocol.
|
||||
VersionTLS11 TLSProtocolVersion = "VersionTLS11"
|
||||
// VersionTLSv12 is version 1.2 of the TLS security protocol.
|
||||
VersionTLS12 TLSProtocolVersion = "VersionTLS12"
|
||||
// VersionTLSv13 is version 1.3 of the TLS security protocol.
|
||||
VersionTLS13 TLSProtocolVersion = "VersionTLS13"
|
||||
)
|
||||
|
||||
// TLSProfiles Contains a map of TLSProfileType names to TLSProfileSpec.
|
||||
//
|
||||
// NOTE: The caller needs to make sure to check that these constants are valid for their binary. Not all
|
||||
// entries map to values for all binaries. In the case of ties, the kube-apiserver wins. Do not fail,
|
||||
// just be sure to whitelist only and everything will be ok.
|
||||
var TLSProfiles = map[TLSProfileType]*TLSProfileSpec{
|
||||
TLSProfileOldType: {
|
||||
Ciphers: []string{
|
||||
"TLS_AES_128_GCM_SHA256",
|
||||
"TLS_AES_256_GCM_SHA384",
|
||||
"TLS_CHACHA20_POLY1305_SHA256",
|
||||
"ECDHE-ECDSA-AES128-GCM-SHA256",
|
||||
"ECDHE-RSA-AES128-GCM-SHA256",
|
||||
"ECDHE-ECDSA-AES256-GCM-SHA384",
|
||||
"ECDHE-RSA-AES256-GCM-SHA384",
|
||||
"ECDHE-ECDSA-CHACHA20-POLY1305",
|
||||
"ECDHE-RSA-CHACHA20-POLY1305",
|
||||
"DHE-RSA-AES128-GCM-SHA256",
|
||||
"DHE-RSA-AES256-GCM-SHA384",
|
||||
"DHE-RSA-CHACHA20-POLY1305",
|
||||
"ECDHE-ECDSA-AES128-SHA256",
|
||||
"ECDHE-RSA-AES128-SHA256",
|
||||
"ECDHE-ECDSA-AES128-SHA",
|
||||
"ECDHE-RSA-AES128-SHA",
|
||||
"ECDHE-ECDSA-AES256-SHA384",
|
||||
"ECDHE-RSA-AES256-SHA384",
|
||||
"ECDHE-ECDSA-AES256-SHA",
|
||||
"ECDHE-RSA-AES256-SHA",
|
||||
"DHE-RSA-AES128-SHA256",
|
||||
"DHE-RSA-AES256-SHA256",
|
||||
"AES128-GCM-SHA256",
|
||||
"AES256-GCM-SHA384",
|
||||
"AES128-SHA256",
|
||||
"AES256-SHA256",
|
||||
"AES128-SHA",
|
||||
"AES256-SHA",
|
||||
"DES-CBC3-SHA",
|
||||
},
|
||||
MinTLSVersion: VersionTLS10,
|
||||
},
|
||||
TLSProfileIntermediateType: {
|
||||
Ciphers: []string{
|
||||
"TLS_AES_128_GCM_SHA256",
|
||||
"TLS_AES_256_GCM_SHA384",
|
||||
"TLS_CHACHA20_POLY1305_SHA256",
|
||||
"ECDHE-ECDSA-AES128-GCM-SHA256",
|
||||
"ECDHE-RSA-AES128-GCM-SHA256",
|
||||
"ECDHE-ECDSA-AES256-GCM-SHA384",
|
||||
"ECDHE-RSA-AES256-GCM-SHA384",
|
||||
"ECDHE-ECDSA-CHACHA20-POLY1305",
|
||||
"ECDHE-RSA-CHACHA20-POLY1305",
|
||||
"DHE-RSA-AES128-GCM-SHA256",
|
||||
"DHE-RSA-AES256-GCM-SHA384",
|
||||
},
|
||||
MinTLSVersion: VersionTLS12,
|
||||
},
|
||||
TLSProfileModernType: {
|
||||
Ciphers: []string{
|
||||
"TLS_AES_128_GCM_SHA256",
|
||||
"TLS_AES_256_GCM_SHA384",
|
||||
"TLS_CHACHA20_POLY1305_SHA256",
|
||||
},
|
||||
MinTLSVersion: VersionTLS13,
|
||||
},
|
||||
}
|
3365
vendor/github.com/openshift/api/config/v1/zz_generated.deepcopy.go
generated
vendored
3365
vendor/github.com/openshift/api/config/v1/zz_generated.deepcopy.go
generated
vendored
File diff suppressed because it is too large
Load Diff
1292
vendor/github.com/openshift/api/config/v1/zz_generated.swagger_doc_generated.go
generated
vendored
1292
vendor/github.com/openshift/api/config/v1/zz_generated.swagger_doc_generated.go
generated
vendored
File diff suppressed because it is too large
Load Diff
4
vendor/modules.txt
vendored
4
vendor/modules.txt
vendored
@ -66,7 +66,7 @@ github.com/containernetworking/plugins/pkg/utils/hwaddr
|
||||
github.com/containernetworking/plugins/pkg/utils/sysctl
|
||||
github.com/containernetworking/plugins/plugins/ipam/host-local/backend
|
||||
github.com/containernetworking/plugins/plugins/ipam/host-local/backend/allocator
|
||||
# github.com/containers/buildah v1.14.9-0.20200501175434-42a48f9373d9
|
||||
# github.com/containers/buildah v1.14.9-0.20200523094741-de0f541d9224
|
||||
github.com/containers/buildah
|
||||
github.com/containers/buildah/bind
|
||||
github.com/containers/buildah/chroot
|
||||
@ -425,8 +425,6 @@ github.com/opencontainers/runtime-tools/validate
|
||||
github.com/opencontainers/selinux/go-selinux
|
||||
github.com/opencontainers/selinux/go-selinux/label
|
||||
github.com/opencontainers/selinux/pkg/pwalk
|
||||
# github.com/openshift/api v0.0.0-20200106203948-7ab22a2c8316
|
||||
github.com/openshift/api/config/v1
|
||||
# github.com/openshift/imagebuilder v1.1.4
|
||||
github.com/openshift/imagebuilder
|
||||
github.com/openshift/imagebuilder/dockerfile/command
|
||||
|
Reference in New Issue
Block a user