@@ -35,17 +35,32 @@ scaffold_test_project() {
35
35
cd test/$project
36
36
# untar Gopkg.lock and vendor directory for appropriate project version
37
37
tar -zxf ../vendor.v$version .tgz
38
- ../../bin/kubebuilder init --project-version $version --domain testproject.org --license apache2 --owner " The Kubernetes authors" --dep=false
39
- ../../bin/kubebuilder create api --group crew --version v1 --kind FirstMate --controller=true --resource=true --make=false
40
- ../../bin/kubebuilder alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=create,update --make=false
41
- ../../bin/kubebuilder alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=delete --make=false
42
- ../../bin/kubebuilder create api --group ship --version v1beta1 --kind Frigate --example=false --controller=true --resource=true --make=false
43
- ../../bin/kubebuilder alpha webhook --group ship --version v1beta1 --kind Frigate --type=validating --operations=update --make=false
44
- ../../bin/kubebuilder create api --group creatures --version v2alpha1 --kind Kraken --namespaced=false --example=false --controller=true --resource=true --make=false
45
- ../../bin/kubebuilder alpha webhook --group creatures --version v2alpha1 --kind Kraken --type=validating --operations=create --make=false
46
- ../../bin/kubebuilder create api --group core --version v1 --kind Namespace --example=false --controller=true --resource=false --namespaced=false --make=false
47
- ../../bin/kubebuilder alpha webhook --group core --version v1 --kind Namespace --type=mutating --operations=update --make=false
48
- ../../bin/kubebuilder create api --group policy --version v1beta1 --kind HealthCheckPolicy --example=false --controller=true --resource=true --namespaced=false --make=false
38
+
39
+ kb=../../bin/kubebuilder
40
+
41
+ $kb init --project-version $version --domain testproject.org --license apache2 --owner " The Kubernetes authors" --dep=false
42
+ if [ $version == " 1" ]; then
43
+ $kb create api --group crew --version v1 --kind FirstMate --controller=true --resource=true --make=false
44
+ $kb alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=create,update --make=false
45
+ $kb alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=delete --make=false
46
+ $kb create api --group ship --version v1beta1 --kind Frigate --example=false --controller=true --resource=true --make=false
47
+ $kb alpha webhook --group ship --version v1beta1 --kind Frigate --type=validating --operations=update --make=false
48
+ $kb create api --group creatures --version v2alpha1 --kind Kraken --namespaced=false --example=false --controller=true --resource=true --make=false
49
+ $kb alpha webhook --group creatures --version v2alpha1 --kind Kraken --type=validating --operations=create --make=false
50
+ $kb create api --group core --version v1 --kind Namespace --example=false --controller=true --resource=false --namespaced=false --make=false
51
+ $kb alpha webhook --group core --version v1 --kind Namespace --type=mutating --operations=update --make=false
52
+ $kb create api --group policy --version v1beta1 --kind HealthCheckPolicy --example=false --controller=true --resource=true --namespaced=false --make=false
53
+ elif [ $version == " 2" ]; then
54
+ $kb create api --group crew --version v1 --kind FirstMate --controller=true --resource=true --make=false
55
+ $kb alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=create,update --make=false
56
+ $kb alpha webhook --group crew --version v1 --kind FirstMate --type=mutating --operations=delete --make=false
57
+ # TODO(droot): Adding a second group is a valid test case and kubebuilder is expected to report an error in this case. It
58
+ # doesn't do that currently so leaving it commented so that we can enable it later.
59
+ # $kb create api --group ship --version v1beta1 --kind Frigate --example=false --controller=true --resource=true --make=false
60
+ $kb create api --group core --version v1 --kind Namespace --example=false --controller=true --resource=false --namespaced=false --make=false
61
+ $kb alpha webhook --group core --version v1 --kind Namespace --type=mutating --operations=update --make=false
62
+ # $kb create api --group policy --version v1beta1 --kind HealthCheckPolicy --example=false --controller=true --resource=true --namespaced=false --make=false
63
+ fi
49
64
make
50
65
rm -f Gopkg.lock
51
66
rm -rf ./vendor
0 commit comments