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
b2e9b2a8
Unverified
Commit
b2e9b2a8
authored
Feb 27, 2019
by
Kubernetes Prow Robot
Committed by
GitHub
Feb 27, 2019
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #74608 from dims/lighter-weight-make-for-conformance-dependencies
Lighter weight make for conformance dependencies, better script and manifest
parents
6e8b5691
23b33f5c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
123 additions
and
43 deletions
+123
-43
Makefile
cluster/images/conformance/Makefile
+9
-5
README.md
cluster/images/conformance/README.md
+11
-38
conformance-e2e.sh
cluster/images/conformance/conformance-e2e.sh
+32
-0
conformance-e2e.yaml
cluster/images/conformance/conformance-e2e.yaml
+71
-0
No files found.
cluster/images/conformance/Makefile
View file @
b2e9b2a8
...
@@ -15,14 +15,18 @@
...
@@ -15,14 +15,18 @@
# Build the conformance image.
# Build the conformance image.
#
#
# Usage:
# Usage:
# [ARCH=amd64] [REGISTRY="
staging-
k8s.gcr.io"] make (build|push) VERSION={some_released_version_of_kubernetes}
# [ARCH=amd64] [REGISTRY="k8s.gcr.io"] make (build|push) VERSION={some_released_version_of_kubernetes}
REGISTRY
?=
staging-
k8s.gcr.io
REGISTRY
?=
k8s.gcr.io
ARCH
?=
amd64
ARCH
?=
amd64
OUT_DIR
?=
_output
OUT_DIR
?=
_output
GINKGO_BIN
?=
$(
shell
pwd
)
/../../../
$(OUT_DIR)
/dockerized/bin/linux/
$(ARCH)
/ginkgo
KUBECTL_BIN
?=
$(
shell
pwd
)
/../../../
$(OUT_DIR)
/dockerized/bin/linux/
$(ARCH)
/kubectl
OUTPUT_PATH
=
$(
shell
pwd
)
/../../../
$(OUT_DIR)
E2E_TEST_BIN
?=
$(
shell
pwd
)
/../../../
$(OUT_DIR)
/dockerized/bin/linux/
$(ARCH)
/e2e.test
BINARY_PATH
=
$(
shell
test
-d
$(OUTPUT_PATH)
/local
&&
echo
$(OUTPUT_PATH)
/local
||
echo
$(OUTPUT_PATH)
/dockerized
)
GINKGO_BIN
?=
$(BINARY_PATH)
/bin/linux/
$(ARCH)
/ginkgo
KUBECTL_BIN
?=
$(BINARY_PATH)
/bin/linux/
$(ARCH)
/kubectl
E2E_TEST_BIN
?=
$(BINARY_PATH)
/bin/linux/
$(ARCH)
/e2e.test
CLUSTER_DIR
?=
$(
shell
pwd
)
/../../../cluster/
CLUSTER_DIR
?=
$(
shell
pwd
)
/../../../cluster/
BASEIMAGE
=
k8s.gcr.io/debian-hyperkube-base-
$(ARCH)
:0.12.1
BASEIMAGE
=
k8s.gcr.io/debian-hyperkube-base-
$(ARCH)
:0.12.1
...
...
cluster/images/conformance/README.md
View file @
b2e9b2a8
...
@@ -6,63 +6,36 @@
...
@@ -6,63 +6,36 @@
#### How to release by hand
#### How to release by hand
```
console
```
console
#
First, build the binaries
#
First, build the binaries
by running make from the root directory
$
build/run.sh make cross
$
make
WHAT
=
"test/e2e/e2e.test vendor/github.com/onsi/ginkgo/ginkgo cmd/kubectl"
#
Build
for
linux/amd64
(
default
)
#
Build
for
linux/amd64
(
default
)
#
export
REGISTRY
=
$HOST
/
$ORG
to switch from
staging-
k8s.gcr.io
#
export
REGISTRY
=
$HOST
/
$ORG
to switch from k8s.gcr.io
$
make push
VERSION
={
target_version
}
ARCH
=
amd64
$
make push
VERSION
={
target_version
}
ARCH
=
amd64
#
---
>
staging-
k8s.gcr.io/conformance-amd64:VERSION
#
---
>
k8s.gcr.io/conformance-amd64:VERSION
#
---
>
staging-
k8s.gcr.io/conformance:VERSION
(
image with backwards-compatible naming
)
#
---
>
k8s.gcr.io/conformance:VERSION
(
image with backwards-compatible naming
)
$
make push
VERSION
={
target_version
}
ARCH
=
arm
$
make push
VERSION
={
target_version
}
ARCH
=
arm
#
---
>
staging-
k8s.gcr.io/conformance-arm:VERSION
#
---
>
k8s.gcr.io/conformance-arm:VERSION
$
make push
VERSION
={
target_version
}
ARCH
=
arm64
$
make push
VERSION
={
target_version
}
ARCH
=
arm64
#
---
>
staging-
k8s.gcr.io/conformance-arm64:VERSION
#
---
>
k8s.gcr.io/conformance-arm64:VERSION
$
make push
VERSION
={
target_version
}
ARCH
=
ppc64le
$
make push
VERSION
={
target_version
}
ARCH
=
ppc64le
#
---
>
staging-
k8s.gcr.io/conformance-ppc64le:VERSION
#
---
>
k8s.gcr.io/conformance-ppc64le:VERSION
$
make push
VERSION
={
target_version
}
ARCH
=
s390x
$
make push
VERSION
={
target_version
}
ARCH
=
s390x
#
---
>
staging-
k8s.gcr.io/conformance-s390x:VERSION
#
---
>
k8s.gcr.io/conformance-s390x:VERSION
```
```
If you don't want to push the images, run
`make`
or
`make build`
instead
If you don't want to push the images, run
`make`
or
`make build`
instead
#### How to
setup RBAC needed
#### How to
run tests
```
```
kubectl create
clusterrolebinding add-on-cluster-admin --clusterrole=cluster-admin --serviceaccount=default:default
kubectl create
-f conformance-e2e.yaml
```
```
#### How to run a single test
```
apiVersion: v1
kind: Pod
metadata:
name: e2e-producer-consumer-test
spec:
containers:
- name: conformance-container
image: gcr.io/heptio-images/kube-conformance:latest
image: staging-k8s.gcr.io/conformance-amd64:v1.12.1
imagePullPolicy: IfNotPresent
env:
- name: E2E_FOCUS
value: "Pods should be submitted and removed"
volumeMounts:
- name: output-volume
mountPath: /tmp/results
volumes:
- name: output-volume
hostPath:
path: /tmp/results
restartPolicy: Never
```
[

]()
[

]()
cluster/images/conformance/conformance-e2e.sh
0 → 100755
View file @
b2e9b2a8
#!/usr/bin/env bash
# Copyright 2018 The Kubernetes Authors.
#
# 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.
set
-o
errexit
set
-o
nounset
set
-o
pipefail
kubectl create
-f
conformance-e2e.yaml
while
true
;
do
STATUS
=
$(
kubectl
-n
conformance get pods e2e-conformance-test
-o
jsonpath
=
"{.status.phase}"
)
timestamp
=
$(
date
+
"[%H:%M:%S]"
)
echo
"
$timestamp
Pod status is:
${
STATUS
}
"
if
[[
"
$STATUS
"
==
"Succeeded"
]]
;
then
echo
"
$timestamp
Done."
break
else
sleep
5
fi
done
echo
"Please use 'kubectl logs -n conformance e2e-conformance-test' to view the results"
cluster/images/conformance/conformance-e2e.yaml
0 → 100644
View file @
b2e9b2a8
---
apiVersion
:
v1
kind
:
Namespace
metadata
:
name
:
conformance
---
apiVersion
:
v1
kind
:
ServiceAccount
metadata
:
labels
:
component
:
conformance
name
:
conformance-serviceaccount
namespace
:
conformance
---
apiVersion
:
rbac.authorization.k8s.io/v1
kind
:
ClusterRoleBinding
metadata
:
labels
:
component
:
conformance
name
:
conformance-serviceaccount-role
roleRef
:
apiGroup
:
rbac.authorization.k8s.io
kind
:
ClusterRole
name
:
conformance-serviceaccount
subjects
:
-
kind
:
ServiceAccount
name
:
conformance-serviceaccount
namespace
:
conformance
---
apiVersion
:
rbac.authorization.k8s.io/v1
kind
:
ClusterRole
metadata
:
labels
:
component
:
conformance
name
:
conformance-serviceaccount
rules
:
-
apiGroups
:
-
'
*'
resources
:
-
'
*'
verbs
:
-
'
*'
-
nonResourceURLs
:
-
'
/metrics'
-
'
/logs'
-
'
/logs/*'
verbs
:
-
'
get'
---
apiVersion
:
v1
kind
:
Pod
metadata
:
name
:
e2e-conformance-test
namespace
:
conformance
spec
:
containers
:
-
name
:
conformance-container
image
:
k8s.gcr.io/conformance-amd64:v1.14
imagePullPolicy
:
IfNotPresent
env
:
-
name
:
E2E_FOCUS
value
:
"
Pods
should
be
submitted
and
removed"
volumeMounts
:
-
name
:
output-volume
mountPath
:
/tmp/results
volumes
:
-
name
:
output-volume
hostPath
:
path
:
/tmp/results
restartPolicy
:
Never
serviceAccountName
:
conformance-serviceaccount
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