Skip to content

Commit 4b296aa

Browse files
authored
Merge pull request apache#178 from animationzl/bug-177
Put kubernetes/cloud-provider-openstack source code into k8s.io directory to align with official guidance
2 parents b86dd13 + 74b346e commit 4b296aa

File tree

15 files changed

+163
-148
lines changed
  • playbooks
    • cloud-provider-openstack-acceptance-test-csi-cinder
    • cloud-provider-openstack-acceptance-test-e2e-conformance
    • cloud-provider-openstack-acceptance-test-flexvolume-cinder
    • cloud-provider-openstack-acceptance-test-k8s-cinder
    • cloud-provider-openstack-acceptance-test-keystone-authentication-authorization
    • cloud-provider-openstack-acceptance-test-lb-octavia
    • cloud-provider-openstack-acceptance-test-standalone-cinder
    • cloud-provider-openstack-acceptance-test
    • cloud-provider-openstack-test
    • cloud-provider-openstack-unittest
  • zuul.d

15 files changed

+163
-148
lines changed

playbooks/cloud-provider-openstack-acceptance-test-csi-cinder/post.yaml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
cmd: |
77
set -e
88
set -x
9-
cd ${GOPATH}/src/k8s.io/kubernetes
10-
cluster/kubectl.sh config use-context local
11-
cluster/kubectl.sh delete -f '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/examples/cinder-csi-plugin/nginx.yaml'
12-
cluster/kubectl.sh delete -f '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/manifests/cinder-csi-plugin'
9+
kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
10+
"$kubectl" config use-context local
11+
"$kubectl" delete -f examples/cinder-csi-plugin/nginx.yaml
12+
"$kubectl" delete -f manifests/cinder-csi-plugin
1313
executable: /bin/bash
14+
chdir: '{{ k8s_specific_src_dir }}'
1415
environment: '{{ golang_env }}'

playbooks/cloud-provider-openstack-acceptance-test-csi-cinder/run.yaml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
# DO NOT change the location of the cloud-config file. It is important for the old cinder provider to work
4444
export CLOUD_CONFIG=/etc/kubernetes/cloud-config
4545
# Specify the OCCM binary
46-
export EXTERNAL_CLOUD_PROVIDER_BINARY=./openstack-cloud-controller-manager
46+
export EXTERNAL_CLOUD_PROVIDER_BINARY="$PWD/openstack-cloud-controller-manager"
4747
4848
# location of where the kubernetes processes log their output
4949
mkdir -p '{{ ansible_user_dir }}/workspace/logs/kubernetes'
@@ -59,17 +59,18 @@
5959
export FEATURE_GATES="CSIPersistentVolume=true,MountPropagation=true"
6060
export RUNTIME_CONFIG="storage.k8s.io/v1alpha1=true"
6161
62-
k8s_root="$GOPATH/src/k8s.io/kubernetes"
63-
kubectl="$k8s_root/cluster/kubectl.sh"
6462
# -E preserves the current env vars, but we need to special case PATH
65-
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS "$k8s_root/hack/local-up-cluster.sh" -O
63+
# Must run local-up-cluster.sh under kubernetes root directory
64+
pushd "$GOPATH/src/k8s.io/kubernetes"
65+
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS ./hack/local-up-cluster.sh -O
66+
popd
6667
68+
export kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
6769
# set up the config we need for kubectl to work
6870
"$kubectl" config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
6971
"$kubectl" config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
7072
"$kubectl" config set-context local --cluster=local --user=myself
7173
"$kubectl" config use-context local
72-
7374
# Hack for RBAC for all for the new cloud-controller process, we need to do better than this
7475
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
7576
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
@@ -119,7 +120,7 @@
119120
"$kubectl" create -f manifests/cinder-csi-plugin
120121
sleep 5
121122
# If services up
122-
if kubectl="$kubectl" timeout 300 bash -c '
123+
if timeout 300 bash -c '
123124
while :
124125
do
125126
"$kubectl" get pod | sed "1d" | awk '\''$2 != "2/2" || $3 != "Running" {err = 1} END {exit err}'\'' && break
@@ -138,7 +139,7 @@
138139
# Make test
139140
"$kubectl" create -f examples/cinder-csi-plugin/nginx.yaml
140141
# If test passed
141-
if kubectl="$kubectl" timeout 300 bash -c '
142+
if timeout 300 bash -c '
142143
while :
143144
do
144145
[[ $("$kubectl" describe pod nginx | awk "/^Status:/ {print \$2}") == Running ]] && break
@@ -156,5 +157,5 @@
156157
exit 1
157158
fi
158159
executable: /bin/bash
159-
chdir: '{{ zuul.project.src_dir }}'
160+
chdir: '{{ k8s_specific_src_dir }}'
160161
environment: '{{ golang_env | combine(vexxhost_openrc) }}'

playbooks/cloud-provider-openstack-acceptance-test-e2e-conformance/run.yaml

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@
2929
ignore-volume-az = yes
3030
EOF
3131
32-
# Go where we cloned kubernetes repository
33-
cd $GOPATH/src/k8s.io/kubernetes/
3432
export API_HOST_IP=$(ip route get 1.1.1.1 | awk '{print $7}')
3533
export KUBELET_HOST="0.0.0.0"
3634
export ALLOW_SECURITY_CONTEXT=true
@@ -47,7 +45,7 @@
4745
# DO NOT change the location of the cloud-config file. It is important for the old cinder provider to work
4846
export CLOUD_CONFIG=/etc/kubernetes/cloud-config
4947
# Specify the OCCM binary
50-
export EXTERNAL_CLOUD_PROVIDER_BINARY='{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/openstack-cloud-controller-manager'
48+
export EXTERNAL_CLOUD_PROVIDER_BINARY="$PWD/openstack-cloud-controller-manager"
5149
5250
# location of where the kubernetes processes log their output
5351
mkdir -p '{{ ansible_user_dir }}/workspace/logs/kubernetes'
@@ -74,21 +72,24 @@
7472
sudo cat /etc/hosts
7573
7674
# -E preserves the current env vars, but we need to special case PATH
75+
# Must run local-up-cluster.sh under kubernetes root directory
76+
pushd "$GOPATH/src/k8s.io/kubernetes"
7777
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS ./hack/local-up-cluster.sh -O
78+
popd
7879
80+
export kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
7981
# set up the config we need for kubectl to work
80-
cluster/kubectl.sh config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
81-
cluster/kubectl.sh config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
82-
cluster/kubectl.sh config set-context local --cluster=local --user=myself
83-
cluster/kubectl.sh config use-context local
84-
82+
"$kubectl" config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
83+
"$kubectl" config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
84+
"$kubectl" config set-context local --cluster=local --user=myself
85+
"$kubectl" config use-context local
8586
# Hack for RBAC for all for the new cloud-controller process, we need to do better than this
86-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
87-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
88-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:cloud-node-controller kube-system-cluster-admin-3 --clusterrole cluster-admin
89-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:cloud-controller-manager kube-system-cluster-admin-4 --clusterrole cluster-admin
90-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:shared-informers kube-system-cluster-admin-5 --clusterrole cluster-admin
91-
cluster/kubectl.sh create clusterrolebinding --user system:kube-controller-manager kube-system-cluster-admin-6 --clusterrole cluster-admin
87+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
88+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
89+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:cloud-node-controller kube-system-cluster-admin-3 --clusterrole cluster-admin
90+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:cloud-controller-manager kube-system-cluster-admin-4 --clusterrole cluster-admin
91+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:shared-informers kube-system-cluster-admin-5 --clusterrole cluster-admin
92+
"$kubectl" create clusterrolebinding --user system:kube-controller-manager kube-system-cluster-admin-6 --clusterrole cluster-admin
9293
9394
# Sleep to wait for creating serviceaccount default/default complete
9495
sleep 5
@@ -112,5 +113,5 @@
112113
--test_args="--ginkgo.focus=\\[Conformance\\] --ginkgo.noColor=true" \
113114
--timeout=120m | tee $LOG_DIR/e2e.log
114115
executable: /bin/bash
115-
chdir: '{{ zuul.project.src_dir }}'
116+
chdir: '{{ k8s_specific_src_dir }}'
116117
environment: '{{ golang_env | combine(vexxhost_openrc) }}'

playbooks/cloud-provider-openstack-acceptance-test-flexvolume-cinder/run.yaml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,17 +67,18 @@
6767
mkdir -p /usr/libexec/kubernetes/kubelet-plugins/volume/exec/cinder.io~cinder-flex-volume-driver/
6868
cp cinder-flex-volume-driver /usr/libexec/kubernetes/kubelet-plugins/volume/exec/cinder.io~cinder-flex-volume-driver/
6969
70-
export k8s_root="$GOPATH/src/k8s.io/kubernetes"
71-
export kubectl="$k8s_root/cluster/kubectl.sh"
7270
# -E preserves the current env vars, but we need to special case PATH
73-
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS "$k8s_root/hack/local-up-cluster.sh" -O
71+
# Must run local-up-cluster.sh under kubernetes root directory
72+
pushd "$GOPATH/src/k8s.io/kubernetes"
73+
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS ./hack/local-up-cluster.sh -O
74+
popd
7475
76+
export kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
7577
# set up the config we need for kubectl to work
7678
"$kubectl" config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
7779
"$kubectl" config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
7880
"$kubectl" config set-context local --cluster=local --user=myself
7981
"$kubectl" config use-context local
80-
8182
# Hack for RBAC for all for the new cloud-controller process, we need to do better than this
8283
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
8384
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
@@ -114,5 +115,5 @@
114115
exit 1
115116
fi
116117
executable: /bin/bash
117-
chdir: '{{ zuul.project.src_dir }}'
118+
chdir: '{{ k8s_specific_src_dir }}'
118119
environment: '{{ golang_env }}'

playbooks/cloud-provider-openstack-acceptance-test-k8s-cinder/post.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@
66
cmd: |
77
set -e
88
set -x
9-
cd ${GOPATH}/src/k8s.io/kubernetes
10-
cluster/kubectl.sh config use-context local
11-
cluster/kubectl.sh delete -f '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/examples/persistent-volume-provisioning/cinder/cinder-in-tree-full.yaml'
9+
kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
10+
"$kubectl" config use-context local
11+
"$kubectl" delete -f examples/persistent-volume-provisioning/cinder/cinder-in-tree-full.yaml
1212
executable: /bin/bash
13+
chdir: '{{ k8s_specific_src_dir }}'
1314
environment: '{{ golang_env }}'

playbooks/cloud-provider-openstack-acceptance-test-k8s-cinder/run.yaml

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,6 @@
2929
ignore-volume-az = yes
3030
EOF
3131
32-
# Go where we cloned kubernetes repository
33-
cd $GOPATH/src/k8s.io/kubernetes/
3432
export API_HOST_IP=$(ip route get 1.1.1.1 | awk '{print $7}')
3533
export KUBELET_HOST="0.0.0.0"
3634
export ALLOW_SECURITY_CONTEXT=true
@@ -46,7 +44,7 @@
4644
# DO NOT change the location of the cloud-config file. It is important for the old cinder provider to work
4745
export CLOUD_CONFIG=/etc/kubernetes/cloud-config
4846
# Specify the OCCM binary
49-
export EXTERNAL_CLOUD_PROVIDER_BINARY='{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/openstack-cloud-controller-manager'
47+
export EXTERNAL_CLOUD_PROVIDER_BINARY="$PWD/openstack-cloud-controller-manager"
5048
5149
# location of where the kubernetes processes log their output
5250
mkdir -p '{{ ansible_user_dir }}/workspace/logs/kubernetes'
@@ -59,45 +57,48 @@
5957
export MAX_TIME_FOR_URL_API_SERVER=5
6058
6159
# -E preserves the current env vars, but we need to special case PATH
60+
# Must run local-up-cluster.sh under kubernetes root directory
61+
pushd "$GOPATH/src/k8s.io/kubernetes"
6262
sudo -E PATH=$PATH SHELLOPTS=$SHELLOPTS ./hack/local-up-cluster.sh -O
63-
nohup '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/cinder-provisioner' --cloud-config "$CLOUD_CONFIG" --kubeconfig /var/run/kubernetes/admin.kubeconfig --id cinder > "$LOG_DIR/cinder-provisioner.log" 2>&1 &
63+
popd
64+
nohup ./cinder-provisioner --cloud-config "$CLOUD_CONFIG" --kubeconfig /var/run/kubernetes/admin.kubeconfig --id cinder > "$LOG_DIR/cinder-provisioner.log" 2>&1 &
6465
66+
export kubectl="$GOPATH/src/k8s.io/kubernetes/cluster/kubectl.sh"
6567
# set up the config we need for kubectl to work
66-
cluster/kubectl.sh config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
67-
cluster/kubectl.sh config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
68-
cluster/kubectl.sh config set-context local --cluster=local --user=myself
69-
cluster/kubectl.sh config use-context local
70-
68+
"$kubectl" config set-cluster local --server=https://localhost:6443 --certificate-authority=/var/run/kubernetes/server-ca.crt
69+
"$kubectl" config set-credentials myself --client-key=/var/run/kubernetes/client-admin.key --client-certificate=/var/run/kubernetes/client-admin.crt
70+
"$kubectl" config set-context local --cluster=local --user=myself
71+
"$kubectl" config use-context local
7172
# Hack for RBAC for all for the new cloud-controller process, we need to do better than this
72-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
73-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
74-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:cloud-node-controller kube-system-cluster-admin-3 --clusterrole cluster-admin
75-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:cloud-controller-manager kube-system-cluster-admin-4 --clusterrole cluster-admin
76-
cluster/kubectl.sh create clusterrolebinding --user system:serviceaccount:kube-system:shared-informers kube-system-cluster-admin-5 --clusterrole cluster-admin
77-
cluster/kubectl.sh create clusterrolebinding --user system:kube-controller-manager kube-system-cluster-admin-6 --clusterrole cluster-admin
73+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:default kube-system-cluster-admin-1 --clusterrole cluster-admin
74+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:pvl-controller kube-system-cluster-admin-2 --clusterrole cluster-admin
75+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:cloud-node-controller kube-system-cluster-admin-3 --clusterrole cluster-admin
76+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:cloud-controller-manager kube-system-cluster-admin-4 --clusterrole cluster-admin
77+
"$kubectl" create clusterrolebinding --user system:serviceaccount:kube-system:shared-informers kube-system-cluster-admin-5 --clusterrole cluster-admin
78+
"$kubectl" create clusterrolebinding --user system:kube-controller-manager kube-system-cluster-admin-6 --clusterrole cluster-admin
7879
7980
# Sleep to wait for creating serviceaccount default/default complete
8081
sleep 5
8182
# Remove node taint
82-
cluster/kubectl.sh taint nodes "$HOSTNAME_OVERRIDE" node.cloudprovider.kubernetes.io/uninitialized- || true
83+
"$kubectl" taint nodes "$HOSTNAME_OVERRIDE" node.cloudprovider.kubernetes.io/uninitialized- || true
8384
# Cinder test
84-
cluster/kubectl.sh apply -f '{{ ansible_user_dir }}/{{ zuul.project.src_dir }}/examples/persistent-volume-provisioning/cinder/cinder-in-tree-full.yaml'
85+
"$kubectl" apply -f examples/persistent-volume-provisioning/cinder/cinder-in-tree-full.yaml
8586
8687
# If test passed
8788
if timeout 300 bash -c '
8889
while :
8990
do
90-
[[ $(cluster/kubectl.sh describe pods web | awk "/^Status:/ {print \$2}") == Running ]] && break
91+
[[ $("$kubectl" describe pods web | awk "/^Status:/ {print \$2}") == Running ]] && break
9192
sleep 1
9293
done
9394
'
9495
then
9596
echo 'Run test successful'
9697
else
9798
echo 'Run test failed'
98-
cluster/kubectl.sh describe pods web
99+
"$kubectl" describe pods web
99100
exit 1
100101
fi
101102
executable: /bin/bash
102-
chdir: '{{ zuul.project.src_dir }}'
103+
chdir: '{{ k8s_specific_src_dir }}'
103104
environment: '{{ golang_env | combine(vexxhost_openrc) }}'

0 commit comments

Comments
 (0)