Skip to content

Commit

Permalink
Merge pull request kubernetes#30092 from mbruzek/juju-util-fixes
Browse files Browse the repository at this point in the history
Automatic merge from submit-queue

Juju util fixes

The util.sh file was out of date and caused the kube-up script to error out. This work fixes kubernetes#23198
```release-note
* Updating the util.sh for the juju provider kube-up.sh 
```

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30092)
<!-- Reviewable:end -->
  • Loading branch information
Kubernetes Submit Queue authored Aug 11, 2016
2 parents 1d4e0ea + 1d3b52f commit ea69570
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 14 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ network_closure.sh

# Juju Stuff
/cluster/juju/charms/*
/cluster/juju/bundles/local.yaml

# Downloaded Kubernetes binary release
/kubernetes/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
services:
kubernetes:
charm: local:trusty/kubernetes
charm: __CHARM_DIR__/builds/kubernetes
annotations:
"gui-x": "600"
"gui-y": "0"
expose: true
num_units: 2
etcd:
charm: cs:~containers/trusty/etcd
charm: cs:~containers/etcd
annotations:
"gui-x": "300"
"gui-y": "0"
num_units: 1
relations:
- - "kubernetes:etcd"
- "etcd:db"
series: trusty
series: xenial
14 changes: 8 additions & 6 deletions cluster/juju/identify-leaders.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,15 @@
from subprocess import check_output
import yaml

out = check_output(['juju', 'status', 'kubernetes', '--format=yaml'])

cmd = ['juju', 'run', '--application', 'kubernetes', '--format=yaml', 'is-leader']
out = check_output(cmd)
try:
parsed_output = yaml.safe_load(out)
model = parsed_output['services']['kubernetes']['units']
for unit in model:
if 'workload-status' in model[unit].keys():
if 'leader' in model[unit]['workload-status']['message']:
print(unit)
for unit in parsed_output:
standard_out = unit['Stdout'].rstrip()
unit_id = unit['UnitId']
if 'True' in standard_out:
print(unit_id)
except:
pass
2 changes: 1 addition & 1 deletion cluster/juju/layers/kubernetes/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ requires:
etcd:
interface: etcd
series:
- 'trusty'
- xenial
11 changes: 7 additions & 4 deletions cluster/juju/util.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ function build-local() {
# This used to build the kubernetes project. Now it rebuilds the charm(s)
# living in `cluster/juju/layers`

charm build -o $JUJU_REPOSITORY -s trusty ${JUJU_PATH}/layers/kubernetes
charm build ${JUJU_PATH}/layers/kubernetes -o $JUJU_REPOSITORY -r --no-local-layers
}

function detect-master() {
Expand All @@ -54,7 +54,7 @@ function detect-master() {
function detect-nodes() {
# Run the Juju command that gets the minion private IP addresses.
local ipoutput
ipoutput=$(juju run --service kubernetes "unit-get private-address" --format=json)
ipoutput=$(juju run --application kubernetes "unit-get private-address" --format=json)
# [
# {"MachineId":"2","Stdout":"192.168.122.188\n","UnitId":"kubernetes/0"},
# {"MachineId":"3","Stdout":"192.168.122.166\n","UnitId":"kubernetes/1"}
Expand All @@ -69,6 +69,9 @@ function detect-nodes() {
function kube-up() {
build-local

# Replace the charm directory in the bundle.
sed "s|__CHARM_DIR__|${JUJU_REPOSITORY}|" < ${KUBE_BUNDLE_PATH}.base > ${KUBE_BUNDLE_PATH}

# The juju-deployer command will deploy the bundle and can be run
# multiple times to continue deploying the parts that fail.
juju deploy ${KUBE_BUNDLE_PATH}
Expand All @@ -88,7 +91,7 @@ function kube-up() {
tar xfz ${KUBECTL_DIR}/kubectl_package.tar.gz -C ${KUBECTL_DIR}
)
# Export the location of the kubectl configuration file.
export KUBECONFIG="${KUBECTL_DIR}/config"
export KUBECONFIG="${KUBECTL_DIR}/kubeconfig"
}

function kube-down() {
Expand Down Expand Up @@ -117,7 +120,7 @@ function sleep-status() {

while [[ $i < $maxtime && -z $jujustatus ]]; do
sleep 15
i+=15
i=$((i + 15))
jujustatus=$(${JUJU_PATH}/identify-leaders.py)
export KUBE_MASTER_NAME=${jujustatus}
done
Expand Down

0 comments on commit ea69570

Please sign in to comment.