Add custom Jump Host image
This change introduces a custom Jump Host image to include jq and the DMTF Redfish tool. This will enable SIP to provide sub-cluster virtual machine reboot capabilities. Signed-off-by: Drew Walters <andrew.walters@att.com> Change-Id: Ic38a13707a28ef7a7ea868d35b58df9b619c7b15
This commit is contained in:
parent
6fa7c3f141
commit
9fcfae7107
49
Makefile
49
Makefile
@ -1,15 +1,17 @@
|
||||
# Docker Image Options
|
||||
DOCKER_REGISTRY ?= quay.io
|
||||
DOCKER_FORCE_CLEAN ?= true
|
||||
DOCKER_IMAGE_NAME ?= sip
|
||||
DOCKER_IMAGE_PREFIX ?= airshipit
|
||||
DOCKER_IMAGE_TAG ?= latest
|
||||
DOCKER_TARGET_STAGE ?= release
|
||||
PUBLISH ?= false
|
||||
DOCKER_REGISTRY ?= quay.io
|
||||
DOCKER_FORCE_CLEAN ?= true
|
||||
DOCKER_IMAGE_PREFIX ?= airshipit
|
||||
DOCKER_IMAGE_TAG ?= latest
|
||||
DOCKER_TARGET_STAGE ?= release
|
||||
PUBLISH ?= false
|
||||
|
||||
# Image URL to use all building/pushing image targets
|
||||
#IMG ?= controller:latest
|
||||
IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_IMAGE_PREFIX)/$(DOCKER_IMAGE_NAME):$(DOCKER_IMAGE_TAG)
|
||||
JUMP_HOST_IMAGE_NAME ?= jump-host
|
||||
SIP_IMAGE_NAME ?= sip
|
||||
|
||||
# Image URLs to build/publish images
|
||||
JUMP_HOST_IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_IMAGE_PREFIX)/$(JUMP_HOST_IMAGE_NAME):$(DOCKER_IMAGE_TAG)
|
||||
SIP_IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_IMAGE_PREFIX)/$(SIP_IMAGE_NAME):$(DOCKER_IMAGE_TAG)
|
||||
|
||||
# Produce CRDs that work back to Kubernetes 1.11 (no version conversion)
|
||||
CRD_OPTIONS ?= "crd:trivialVersions=true"
|
||||
@ -59,7 +61,7 @@ uninstall: manifests
|
||||
|
||||
# Deploy controller in the configured Kubernetes cluster in ~/.kube/config
|
||||
deploy: manifests
|
||||
cd config/manager && kustomize edit set image controller=${IMG}
|
||||
cd config/manager && kustomize edit set image controller=${SIP_IMG}
|
||||
kustomize build config/default | kubectl apply -f -
|
||||
|
||||
# Generate manifests e.g. CRD, RBAC etc.
|
||||
@ -78,14 +80,23 @@ vet:
|
||||
generate: controller-gen
|
||||
$(CONTROLLER_GEN) object:headerFile="hack/boilerplate.go.txt" paths="./..."
|
||||
|
||||
# Build the docker image
|
||||
# If DOCKER_PROXY_FLAGS values are empty, we are fine with that
|
||||
docker-build:
|
||||
docker build ${DOCKER_PROXY_FLAGS} . -t ${IMG}
|
||||
images: docker-build-controller docker-build-jump-host
|
||||
|
||||
# Push the docker image
|
||||
docker-push:
|
||||
docker push ${IMG}
|
||||
# Build the SIP Docker image
|
||||
# NOTE: DOCKER_PROXY_FLAGS can be empty.
|
||||
docker-build-controller:
|
||||
docker build ${DOCKER_PROXY_FLAGS} . -t ${SIP_IMG}
|
||||
|
||||
# Build the Jump Host Docker image
|
||||
# NOTE: DOCKER_PROXY_FLAGS can be empty.
|
||||
docker-build-jump-host:
|
||||
docker build ${DOCKER_PROXY_FLAGS} -f images/jump-host/Dockerfile . -t ${JUMP_HOST_IMG}
|
||||
|
||||
docker-push-controller:
|
||||
docker push ${SIP_IMG}
|
||||
|
||||
docker-push-jump-host:
|
||||
docker push ${JUMP_HOST_IMG}
|
||||
|
||||
# Generate API reference documentation
|
||||
api-docs: gen-crd-api-reference-docs
|
||||
@ -139,4 +150,4 @@ $(TOOLBINDIR):
|
||||
|
||||
.PHONY: check-git-diff
|
||||
check-git-diff:
|
||||
@./tools/git_diff_check
|
||||
@./tools/git_diff_check
|
||||
|
@ -111,7 +111,7 @@ USE_PROXY=true
|
||||
### Deploy SIP
|
||||
|
||||
```
|
||||
# make docker-build
|
||||
# make docker-build-controller
|
||||
# kubectl get nodes
|
||||
# make deploy
|
||||
```
|
||||
|
9
images/jump-host/Dockerfile
Normal file
9
images/jump-host/Dockerfile
Normal file
@ -0,0 +1,9 @@
|
||||
ARG BASE_IMAGE=gcr.io/google-appengine/python
|
||||
FROM ${BASE_IMAGE}
|
||||
|
||||
RUN apt-get update
|
||||
RUN apt-get install -y --no-install-recommends jq
|
||||
|
||||
RUN pip3 install requests python-dateutil redfishtool
|
||||
|
||||
CMD ["/bin/bash"]
|
@ -63,7 +63,11 @@
|
||||
make:
|
||||
chdir: "{{ zuul.project.src_dir }}"
|
||||
target: check-git-diff
|
||||
- name: Build Docker image
|
||||
- name: Build SIP Docker image
|
||||
make:
|
||||
chdir: "{{ zuul.project.src_dir }}"
|
||||
target: docker-build
|
||||
target: docker-build-controller
|
||||
- name: Build Jump Host Docker image
|
||||
make:
|
||||
chdir: "{{ zuul.project.src_dir }}"
|
||||
target: docker-build-jump-host
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
set -xe
|
||||
sudo snap install kustomize && sudo snap install go --classic
|
||||
make docker-build
|
||||
make images
|
||||
kubectl wait --for=condition=Ready pods --all -A --timeout=180s
|
||||
make deploy
|
||||
#Wait for sip controller manager Pod
|
||||
@ -15,4 +15,4 @@ until [[ $(kubectl -n sipcluster-system get pod -l control-plane=controller-mana
|
||||
sleep 2
|
||||
done
|
||||
kubectl wait -n sipcluster-system pod -l control-plane=controller-manager --for=condition=ready --timeout=240s
|
||||
kubectl get po -A
|
||||
kubectl get po -A
|
||||
|
Loading…
x
Reference in New Issue
Block a user