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
b6fb1572
Unverified
Commit
b6fb1572
authored
Jan 18, 2019
by
Kubernetes Prow Robot
Committed by
GitHub
Jan 18, 2019
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #72861 from BenTheElder/slightly-less-bash-fire
fix bugs in get-kube scripts
parents
193f659a
7cc6eaa4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
33 additions
and
37 deletions
+33
-37
get-kube-binaries.sh
cluster/get-kube-binaries.sh
+12
-10
get-kube-local.sh
cluster/get-kube-local.sh
+16
-14
get-kube.sh
cluster/get-kube.sh
+5
-10
.shellcheck_failures
hack/.shellcheck_failures
+0
-3
No files found.
cluster/get-kube-binaries.sh
View file @
b6fb1572
...
...
@@ -39,7 +39,7 @@ set -o errexit
set
-o
nounset
set
-o
pipefail
KUBE_ROOT
=
$(
cd
$(
dirname
"
${
BASH_SOURCE
}
"
)
/..
&&
pwd
)
KUBE_ROOT
=
$(
cd
"
$(
dirname
"
${
BASH_SOURCE
[0]
}
"
)
/.."
&&
pwd
)
KUBERNETES_RELEASE_URL
=
"
${
KUBERNETES_RELEASE_URL
:-
https
://dl.k8s.io
}
"
...
...
@@ -50,7 +50,7 @@ function detect_kube_release() {
if
[[
!
-e
"
${
KUBE_ROOT
}
/version"
]]
;
then
echo
"Can't determine Kubernetes release."
>
&2
echo
"
${
BASH_SOURCE
}
should only be run from a prebuilt Kubernetes release."
>
&2
echo
"
${
BASH_SOURCE
[0]
}
should only be run from a prebuilt Kubernetes release."
>
&2
echo
"Did you mean to use get-kube.sh instead?"
>
&2
exit
1
fi
...
...
@@ -59,7 +59,8 @@ function detect_kube_release() {
}
function
detect_client_info
()
{
local
kernel
=
$(
uname
-s
)
local
kernel machine
kernel
=
"
$(
uname
-s
)
"
case
"
${
kernel
}
"
in
Darwin
)
CLIENT_PLATFORM
=
"darwin"
...
...
@@ -76,7 +77,7 @@ function detect_client_info() {
# TODO: migrate the kube::util::host_platform function out of hack/lib and
# use it here.
local
machine
=
$(
uname
-m
)
machine
=
"
$(
uname
-m
)
"
case
"
${
machine
}
"
in
x86_64
*
|
i?86_64
*
|
amd64
*
)
CLIENT_ARCH
=
"amd64"
...
...
@@ -92,7 +93,7 @@ function detect_client_info() {
;;
s390x
*
)
CLIENT_ARCH
=
"s390x"
;;
;;
*
)
echo
"Unknown, unsupported architecture (
${
machine
}
)."
>
&2
echo
"Supported architectures x86_64, i686, arm, arm64, s390x."
>
&2
...
...
@@ -132,9 +133,10 @@ function download_tarball() {
exit
4
fi
echo
local md5sum
=
$(
md5sum_file
"
${
download_path
}
/
${
file
}
"
)
local md5sum sha1sum
md5sum
=
$(
md5sum_file
"
${
download_path
}
/
${
file
}
"
)
echo
"md5sum(
${
file
}
)=
${
md5sum
}
"
local
sha1sum
=
$(
sha1sum_file
"
${
download_path
}
/
${
file
}
"
)
sha1sum
=
$(
sha1sum_file
"
${
download_path
}
/
${
file
}
"
)
echo
"sha1sum(
${
file
}
)=
${
sha1sum
}
"
echo
# TODO: add actual verification
...
...
@@ -151,8 +153,8 @@ function extract_arch_tarball() {
# Tarball looks like kubernetes/{client,server}/bin/BINARY"
tar
-xzf
"
${
tarfile
}
"
--strip-components
3
-C
"
${
platforms_dir
}
"
# Create convenience symlink
ln
-sf
"
${
platforms_dir
}
"
"
$(
dirname
${
tarfile
}
)
/bin"
echo
"Add '
$(
dirname
${
tarfile
}
)
/bin' to your PATH to use newly-installed binaries."
ln
-sf
"
${
platforms_dir
}
"
"
$(
dirname
"
${
tarfile
}
"
)
/bin"
echo
"Add '
$(
dirname
"
${
tarfile
}
"
)
/bin' to your PATH to use newly-installed binaries."
}
detect_kube_release
...
...
@@ -213,7 +215,7 @@ fi
if
[[
-z
"
${
KUBERNETES_SKIP_CONFIRM
-
}
"
]]
;
then
echo
"Is this ok? [Y]/n"
read
confirm
read
-r
confirm
if
[[
"
${
confirm
}
"
=
~ ^[nN]
$
]]
;
then
echo
"Aborting."
exit
1
...
...
cluster/get-kube-local.sh
View file @
b6fb1572
...
...
@@ -23,9 +23,9 @@ set -o pipefail
KUBE_HOST
=
${
KUBE_HOST
:-
localhost
}
KUBELET_KUBECONFIG
=
${
KUBELET_KUBECONFIG
:-
"/var/run/kubernetes/kubelet.kubeconfig"
}
declare
-r
RED
=
"
\0
33[0;31m"
declare
-r
GREEN
=
"
\0
33[0;32m"
declare
-r
YELLOW
=
"
\0
33[0;33m"
declare
-r
RED
=
"
\
\
033[0;31m"
declare
-r
GREEN
=
"
\
\
033[0;32m"
declare
-r
YELLOW
=
"
\
\
033[0;33m"
function
echo_green
{
echo
-e
"
${
GREEN
}
$1
"
;
tput sgr0
...
...
@@ -49,7 +49,7 @@ function run {
echo_green
"SUCCESS"
else
echo_red
"FAILED"
echo
$output
>
&2
echo
"
${
output
}
"
>
&2
exit
1
fi
}
...
...
@@ -58,13 +58,14 @@ function run {
# Args: the IP address of the API server (e.g. "http://localhost:8080"), destination file path
function
create-kubelet-kubeconfig
()
{
#local api_addr="${1}"
local
destination
=
"
${
2
}
"
local
destination dest_dir
destination
=
"
${
2
}
"
if
[[
-z
"
${
destination
}
"
]]
;
then
echo
"Must provide destination path to create Kubelet kubeconfig file!"
exit
1
fi
echo
"Creating Kubelet kubeconfig file"
local
dest_dir
=
"
$(
dirname
"
${
destination
}
"
)
"
dest_dir
=
"
$(
dirname
"
${
destination
}
"
)
"
mkdir
-p
"
${
dest_dir
}
"
&>/dev/null
||
sudo mkdir
-p
"
${
dest_dir
}
"
sudo
=
$(
test
-w
"
${
dest_dir
}
"
||
echo
"sudo -E"
)
cat
<<
EOF
|
${
sudo
}
tee "
${
destination
}
" > /dev/null
...
...
@@ -85,7 +86,7 @@ EOF
function
create_cluster
{
echo
"Creating a local cluster:"
echo
-e
-n
"
\t
Starting kubelet..."
echo
-e
-n
"
\
\
tStarting kubelet..."
create-kubelet-kubeconfig
"http://localhost:8080"
"
${
KUBELET_KUBECONFIG
}
"
run
"docker run
\
--volume=/:/rootfs:ro
\
...
...
@@ -102,8 +103,8 @@ function create_cluster {
k8s.gcr.io/hyperkube-
${
arch
}
:
${
release
}
\
/hyperkube kubelet
\
--containerized
\
--hostname-override=
"
127.0.0.1
"
\
--address=
"
0.0.0.0
"
\
--hostname-override=
127.0.0.1
\
--address=
0.0.0.0
\
--kubeconfig=
${
KUBELET_KUBECONFIG
}
\
--pod-manifest-path=/etc/kubernetes/manifests
\
--allow-privileged=true
\
...
...
@@ -113,7 +114,8 @@ function create_cluster {
echo
-e
-n
"
\t
Waiting for master components to start..."
while
true
;
do
local
running_count
=
$(
kubectl
-s
=
http://
${
KUBE_HOST
}
:8080 get pods
--no-headers
--namespace
=
kube-system 2>/dev/null |
grep
"Running"
|
wc
-l
)
local
running_count
running_count
=
$(
kubectl
"-s=http://
${
KUBE_HOST
}
:8080"
get pods
--no-headers
--namespace
=
kube-system 2>/dev/null |
grep
-c
"Running"
)
# We expect to have 3 running pods - etcd, master and kube-proxy.
if
[
"
$running_count
"
-ge
3
]
;
then
break
...
...
@@ -124,7 +126,7 @@ function create_cluster {
echo_green
"SUCCESS"
echo_green
"Cluster created!"
echo
""
kubectl
-s
http://
${
KUBE_HOST
}
:8080
clusterinfo
kubectl
-s
"http://
${
KUBE_HOST
}
:8080"
clusterinfo
}
function
get_latest_version_number
{
...
...
@@ -172,7 +174,7 @@ fi
kubectl_url
=
"https://storage.googleapis.com/kubernetes-release/release/
${
release
}
/bin/
${
platform
}
/
${
arch
}
/kubectl"
if
[[
$(
ls
.
|
grep
^kubectl
$
|
wc
-l
)
-lt
1
]]
;
then
if
[[
!
-f
./kubectl
]]
;
then
echo
-n
"Downloading kubectl binary..."
if
[[
$(
which wget
)
]]
;
then
run
"wget
${
kubectl_url
}
"
...
...
@@ -195,7 +197,7 @@ create_cluster
echo
""
echo
""
echo
"To list the nodes in your cluster run"
echo_yellow
"
\t
kubectl -s=http://
${
KUBE_HOST
}
:8080 get nodes"
echo_yellow
"
\
\
tkubectl -s=http://
${
KUBE_HOST
}
:8080 get nodes"
echo
""
echo
"To run your first pod run"
echo_yellow
"
\t
kubectl -s http://
${
KUBE_HOST
}
:8080 run nginx --image=nginx --port=80"
echo_yellow
"
\
\
tkubectl -s http://
${
KUBE_HOST
}
:8080 run nginx --image=nginx --port=80"
cluster/get-kube.sh
View file @
b6fb1572
...
...
@@ -85,10 +85,11 @@ KUBE_CI_VERSION_REGEX="^v(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)\\.(0|[1-9][0-9]*)-([a
# KUBE_VERSION
function
set_binary_version
()
{
if
[[
"
${
1
}
"
=
~
"/"
]]
;
then
export
KUBE_VERSION
=
$(
curl
-fsSL
--retry
5
"https://dl.k8s.io/
${
1
}
.txt"
)
KUBE_VERSION
=
$(
curl
-fsSL
--retry
5
"https://dl.k8s.io/
${
1
}
.txt"
)
else
export
KUBE_VERSION
=
${
1
}
KUBE_VERSION
=
${
1
}
fi
export
KUBE_VERSION
}
# Use the script from inside the Kubernetes tarball to fetch the client and
...
...
@@ -129,7 +130,7 @@ fi
if
[[
-d
"./kubernetes"
]]
;
then
if
[[
-z
"
${
KUBERNETES_SKIP_CONFIRM
-
}
"
]]
;
then
echo
"'kubernetes' directory already exist. Should we skip download step and start to create cluster based on it? [Y]/n"
read
confirm
read
-r
confirm
if
[[
!
"
${
confirm
}
"
=
~ ^[nN]
$
]]
;
then
echo
"Skipping download step."
create_cluster
...
...
@@ -143,10 +144,8 @@ fi
kernel
=
$(
uname
-s
)
case
"
${
kernel
}
"
in
Darwin
)
platform
=
"darwin"
;;
Linux
)
platform
=
"linux"
;;
*
)
echo
"Unknown, unsupported platform:
${
kernel
}
."
>
&2
...
...
@@ -158,16 +157,12 @@ esac
machine
=
$(
uname
-m
)
case
"
${
machine
}
"
in
x86_64
*
|
i?86_64
*
|
amd64
*
)
arch
=
"amd64"
;;
aarch64
*
|
arm64
*
)
arch
=
"arm64"
;;
arm
*
)
arch
=
"arm"
;;
i?86
*
)
arch
=
"386"
;;
*
)
echo
"Unknown, unsupported architecture (
${
machine
}
)."
>
&2
...
...
@@ -224,7 +219,7 @@ fi
if
[[
-z
"
${
KUBERNETES_SKIP_CONFIRM
-
}
"
]]
;
then
echo
"Is this ok? [Y]/n"
read
confirm
read
-r
confirm
if
[[
"
${
confirm
}
"
=
~ ^[nN]
$
]]
;
then
echo
"Aborting."
exit
0
...
...
hack/.shellcheck_failures
View file @
b6fb1572
...
...
@@ -31,9 +31,6 @@
./cluster/gce/upgrade-aliases.sh
./cluster/gce/upgrade.sh
./cluster/gce/util.sh
./cluster/get-kube-binaries.sh
./cluster/get-kube-local.sh
./cluster/get-kube.sh
./cluster/images/conformance/run_e2e.sh
./cluster/images/etcd-empty-dir-cleanup/etcd-empty-dir-cleanup.sh
./cluster/juju/prereqs/ubuntu-juju.sh
...
...
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