Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
d94307b7
Commit
d94307b7
authored
Oct 10, 2015
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #15042 from JanetKuo/test-loop-add-rclist-svclist
Auto commit by PR queue bot
parents
688b7840
ee0ce327
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
308 additions
and
23 deletions
+308
-23
test-cmd.sh
hack/test-cmd.sh
+82
-23
multi-resource-rclist-modify.json
hack/testdata/multi-resource-rclist-modify.json
+70
-0
multi-resource-rclist.json
hack/testdata/multi-resource-rclist.json
+70
-0
multi-resource-svclist-modify.json
hack/testdata/multi-resource-svclist-modify.json
+44
-0
multi-resource-svclist.json
hack/testdata/multi-resource-svclist.json
+42
-0
No files found.
hack/test-cmd.sh
View file @
d94307b7
...
...
@@ -748,7 +748,9 @@ __EOF__
FILES
=
"hack/testdata/multi-resource-yaml
hack/testdata/multi-resource-list
hack/testdata/multi-resource-json"
hack/testdata/multi-resource-json
hack/testdata/multi-resource-rclist
hack/testdata/multi-resource-svclist"
YAML
=
".yaml"
JSON
=
".json"
for
file
in
$FILES
;
do
...
...
@@ -761,40 +763,97 @@ __EOF__
replace_file
=
"
${
file
%.json
}
-modify.json"
fi
### Create, get, describe, replace, label, annotate, and then delete service nginxsvc and replication controller my-nginx from 3 types of files:
has_svc
=
true
has_rc
=
true
two_rcs
=
false
two_svcs
=
false
if
[[
"
${
file
}
"
==
*
rclist
*
]]
;
then
has_svc
=
false
two_rcs
=
true
fi
if
[[
"
${
file
}
"
==
*
svclist
*
]]
;
then
has_rc
=
false
two_svcs
=
true
fi
### Create, get, describe, replace, label, annotate, and then delete service nginxsvc and replication controller my-nginx from 5 types of files:
### 1) YAML, separated by ---; 2) JSON, with a List type; 3) JSON, with JSON object concatenation
### 4) JSON, with a ReplicationControllerList type; 5) JSON, with a ServiceList type
echo
"Testing with file
${
file
}
and replace with file
${
replace_file
}
"
# Pre-condition: no service (other than default kubernetes services) or replication controller is running
kube::test::get_object_assert services
"{{range.items}}{{
$id_field
}}:{{end}}"
'kubernetes:'
kube::test::get_object_assert rc
"{{range.items}}{{
$id_field
}}:{{end}}"
''
# Command
# TODO: remove --validate=false when PR "Add validate support for list kind #14726" is merged
kubectl create
-f
$file
--validate
=
false
"
${
kube_flags
[@]
}
"
# Post-condition: mock service is running
kube::test::get_object_assert services
"{{range.items}}{{
$id_field
}}:{{end}}"
'kubernetes:mock:'
# Post-condition: mock rc is running
kube::test::get_object_assert rc
"{{range.items}}{{
$id_field
}}:{{end}}"
'mock:'
kubectl create
-f
"
${
file
}
"
--validate
=
false
"
${
kube_flags
[@]
}
"
# Post-condition: mock service (and mock2) is running
if
[
"
$has_svc
"
=
true
]
;
then
if
[
"
$two_svcs
"
=
true
]
;
then
kube::test::get_object_assert services
"{{range.items}}{{
$id_field
}}:{{end}}"
'kubernetes:mock:mock2:'
else
kube::test::get_object_assert services
"{{range.items}}{{
$id_field
}}:{{end}}"
'kubernetes:mock:'
fi
fi
# Post-condition: mock rc (and mock2) is running
if
[
"
$has_rc
"
=
true
]
;
then
if
[
"
$two_rcs
"
=
true
]
;
then
kube::test::get_object_assert rc
"{{range.items}}{{
$id_field
}}:{{end}}"
'mock:mock2:'
else
kube::test::get_object_assert rc
"{{range.items}}{{
$id_field
}}:{{end}}"
'mock:'
fi
fi
# Command
# kubectl create -f
$file
"${kube_flags[@]}" # test fails here now
kubectl get
-f
$file
"
${
kube_flags
[@]
}
"
kubectl describe
-f
$file
"
${
kube_flags
[@]
}
"
# kubectl create -f
"${file}"
"${kube_flags[@]}" # test fails here now
kubectl get
-f
"
${
file
}
"
"
${
kube_flags
[@]
}
"
kubectl describe
-f
"
${
file
}
"
"
${
kube_flags
[@]
}
"
# Command
# TODO: remove --validate=false when PR "Add validate support for list kind #14726" is merged
kubectl replace
-f
$replace_file
--force
--validate
=
false
"
${
kube_flags
[@]
}
"
# Post-condition: mock service and mock rc are replaced
kube::test::get_object_assert
'services mock'
"{{
${
labels_field
}
.status}}"
'replaced'
kube::test::get_object_assert
'rc mock'
"{{
${
labels_field
}
.status}}"
'replaced'
# Post-condition: mock service (and mock2) and mock rc (and mock2) are replaced
if
[
"
$has_svc
"
=
true
]
;
then
kube::test::get_object_assert
'services mock'
"{{
${
labels_field
}
.status}}"
'replaced'
if
[
"
$two_svcs
"
=
true
]
;
then
kube::test::get_object_assert
'services mock2'
"{{
${
labels_field
}
.status}}"
'replaced'
fi
fi
if
[
"
$has_rc
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock'
"{{
${
labels_field
}
.status}}"
'replaced'
if
[
"
$two_rcs
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock2'
"{{
${
labels_field
}
.status}}"
'replaced'
fi
fi
# Command
kubectl label
-f
$file
labeled
=
true
"
${
kube_flags
[@]
}
"
# Post-condition: mock service and mock rc are labeled
kube::test::get_object_assert
'services mock'
"{{
${
labels_field
}
.labeled}}"
'true'
kube::test::get_object_assert
'rc mock'
"{{
${
labels_field
}
.labeled}}"
'true'
kubectl label
-f
"
${
file
}
"
labeled
=
true
"
${
kube_flags
[@]
}
"
# Post-condition: mock service and mock rc (and mock2) are labeled
if
[
"
$has_svc
"
=
true
]
;
then
kube::test::get_object_assert
'services mock'
"{{
${
labels_field
}
.labeled}}"
'true'
if
[
"
$two_svcs
"
=
true
]
;
then
kube::test::get_object_assert
'services mock2'
"{{
${
labels_field
}
.labeled}}"
'true'
fi
fi
if
[
"
$has_rc
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock'
"{{
${
labels_field
}
.labeled}}"
'true'
if
[
"
$two_rcs
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock2'
"{{
${
labels_field
}
.labeled}}"
'true'
fi
fi
# Command
kubectl annotate
-f
$file
annotated
=
true
"
${
kube_flags
[@]
}
"
# Post-condition: mock service and mock rc are annotated
kube::test::get_object_assert
'services mock'
"{{
${
annotations_field
}
.annotated}}"
'true'
kube::test::get_object_assert
'rc mock'
"{{
${
annotations_field
}
.annotated}}"
'true'
# Cleanup services and rc
kubectl delete
-f
$file
"
${
kube_flags
[@]
}
"
kubectl annotate
-f
"
${
file
}
"
annotated
=
true
"
${
kube_flags
[@]
}
"
# Post-condition: mock service (and mock2) and mock rc (and mock2) are annotated
if
[
"
$has_svc
"
=
true
]
;
then
kube::test::get_object_assert
'services mock'
"{{
${
annotations_field
}
.annotated}}"
'true'
if
[
"
$two_svcs
"
=
true
]
;
then
kube::test::get_object_assert
'services mock2'
"{{
${
annotations_field
}
.annotated}}"
'true'
fi
fi
if
[
"
$has_rc
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock'
"{{
${
annotations_field
}
.annotated}}"
'true'
if
[
"
$two_rcs
"
=
true
]
;
then
kube::test::get_object_assert
'rc mock2'
"{{
${
annotations_field
}
.annotated}}"
'true'
fi
fi
# Cleanup resources created
kubectl delete
-f
"
${
file
}
"
"
${
kube_flags
[@]
}
"
done
######################
...
...
hack/testdata/multi-resource-rclist-modify.json
0 → 100644
View file @
d94307b7
{
"kind"
:
"ReplicationControllerList"
,
"apiVersion"
:
"v1"
,
"items"
:[
{
"metadata"
:{
"name"
:
"mock"
,
"labels"
:{
"app"
:
"mock"
,
"status"
:
"replaced"
}
},
"spec"
:{
"replicas"
:
1
,
"selector"
:{
"app"
:
"mock"
},
"template"
:{
"metadata"
:{
"labels"
:{
"app"
:
"mock"
}
},
"spec"
:{
"containers"
:[{
"name"
:
"mock-container"
,
"image"
:
"kubernetes/pause"
,
"ports"
:[{
"containerPort"
:
9949
,
"protocol"
:
"TCP"
}]
}]
}
}
}
},
{
"metadata"
:{
"name"
:
"mock2"
,
"labels"
:{
"app"
:
"mock2"
,
"status"
:
"replaced"
}
},
"spec"
:{
"replicas"
:
1
,
"selector"
:{
"app"
:
"mock2"
},
"template"
:{
"metadata"
:{
"labels"
:{
"app"
:
"mock2"
}
},
"spec"
:{
"containers"
:[{
"name"
:
"mock-container"
,
"image"
:
"kubernetes/pause"
,
"ports"
:[{
"containerPort"
:
9949
,
"protocol"
:
"TCP"
}]
}]
}
}
}
}
]
}
hack/testdata/multi-resource-rclist.json
0 → 100644
View file @
d94307b7
{
"kind"
:
"ReplicationControllerList"
,
"apiVersion"
:
"v1"
,
"items"
:[
{
"metadata"
:{
"name"
:
"mock"
,
"labels"
:{
"app"
:
"mock"
,
"status"
:
"replaced"
}
},
"spec"
:{
"replicas"
:
1
,
"selector"
:{
"app"
:
"mock"
},
"template"
:{
"metadata"
:{
"labels"
:{
"app"
:
"mock"
}
},
"spec"
:{
"containers"
:[{
"name"
:
"mock-container"
,
"image"
:
"kubernetes/pause"
,
"ports"
:[{
"containerPort"
:
9949
,
"protocol"
:
"TCP"
}]
}]
}
}
}
},
{
"metadata"
:{
"name"
:
"mock2"
,
"labels"
:{
"app"
:
"mock2"
,
"status"
:
"replaced"
}
},
"spec"
:{
"replicas"
:
1
,
"selector"
:{
"app"
:
"mock2"
},
"template"
:{
"metadata"
:{
"labels"
:{
"app"
:
"mock2"
}
},
"spec"
:{
"containers"
:[{
"name"
:
"mock-container"
,
"image"
:
"kubernetes/pause"
,
"ports"
:[{
"containerPort"
:
9949
,
"protocol"
:
"TCP"
}]
}]
}
}
}
}
]
}
hack/testdata/multi-resource-svclist-modify.json
0 → 100644
View file @
d94307b7
{
"kind"
:
"ServiceList"
,
"apiVersion"
:
"v1"
,
"items"
:[
{
"metadata"
:{
"name"
:
"mock"
,
"labels"
:{
"app"
:
"mock"
,
"status"
:
"replaced"
}
},
"spec"
:{
"ports"
:
[{
"protocol"
:
"TCP"
,
"port"
:
99
,
"targetPort"
:
9949
}],
"selector"
:{
"app"
:
"mock"
}
}
},
{
"metadata"
:{
"name"
:
"mock2"
,
"labels"
:{
"app"
:
"mock2"
,
"status"
:
"replaced"
}
},
"spec"
:{
"ports"
:
[{
"protocol"
:
"TCP"
,
"port"
:
99
,
"targetPort"
:
9949
}],
"selector"
:{
"app"
:
"mock2"
}
}
}
]
}
hack/testdata/multi-resource-svclist.json
0 → 100644
View file @
d94307b7
{
"kind"
:
"ServiceList"
,
"apiVersion"
:
"v1"
,
"items"
:[
{
"metadata"
:{
"name"
:
"mock"
,
"labels"
:{
"app"
:
"mock"
}
},
"spec"
:{
"ports"
:
[{
"protocol"
:
"TCP"
,
"port"
:
99
,
"targetPort"
:
9949
}],
"selector"
:{
"app"
:
"mock"
}
}
},
{
"metadata"
:{
"name"
:
"mock2"
,
"labels"
:{
"app"
:
"mock2"
}
},
"spec"
:{
"ports"
:
[{
"protocol"
:
"TCP"
,
"port"
:
99
,
"targetPort"
:
9949
}],
"selector"
:{
"app"
:
"mock2"
}
}
}
]
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment