Skaffold kind (#1700)

This commit is contained in:
Vishal
2020-09-04 17:37:07 +05:30
committed by GitHub
parent 1755d3a017
commit 70b01eb9c8
5 changed files with 64 additions and 27 deletions
@@ -38,8 +38,16 @@ This template generates the image name for the deployment depending on the value
*/}}
{{- define "fission-bundleImage" -}}
{{- if .Values.repository -}}
{{- if eq .Values.imageTag "" -}}
{{ .Values.repository }}/{{ .Values.image }}
{{- else -}}
{{ .Values.repository }}/{{ .Values.image }}:{{ .Values.imageTag }}
{{- end }}
{{- else -}}
{{- if eq .Values.imageTag "" -}}
{{ .Values.image }}
{{- else -}}
{{ .Values.image }}:{{ .Values.imageTag }}
{{- end }}
{{- end }}
{{- end -}}
@@ -210,7 +210,11 @@ spec:
args: ["--executorPort", "8888", "--namespace", "{{ .Values.functionNamespace }}"]
env:
- name: FETCHER_IMAGE
{{- if eq .Values.fetcher.imageTag "" }}
value: "{{ .Values.fetcher.image }}"
{{- else }}
value: "{{ .Values.fetcher.image }}:{{ .Values.fetcher.imageTag }}"
{{- end }}
- name: FETCHER_IMAGE_PULL_POLICY
value: "{{ .Values.pullPolicy }}"
- name: RUNTIME_IMAGE_PULL_POLICY
@@ -282,7 +286,11 @@ spec:
args: ["--builderMgr", "--storageSvcUrl", "http://storagesvc.{{ .Release.Namespace }}", "--envbuilder-namespace", "{{ .Values.builderNamespace }}"]
env:
- name: FETCHER_IMAGE
{{- if eq .Values.fetcher.imageTag "" }}
value: "{{ .Values.fetcher.image }}"
{{- else }}
value: "{{ .Values.fetcher.image }}:{{ .Values.fetcher.imageTag }}"
{{- end }}
- name: FETCHER_IMAGE_PULL_POLICY
value: "{{ .Values.pullPolicy }}"
- name: BUILDER_IMAGE_PULL_POLICY
@@ -642,7 +650,11 @@ spec:
spec:
containers:
- name: mqtrigger
{{- if eq .Values.imageTag "" }}
image: "{{ .Values.image }}"
{{- else }}
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
{{- end }}
imagePullPolicy: {{ .Values.pullPolicy }}
command: ["/fission-bundle"]
args: ["--mqt", "--routerUrl", "http://router.{{ .Release.Namespace }}"]
@@ -732,7 +744,11 @@ spec:
spec:
containers:
- name: mqtrigger
{{- if eq .Values.imageTag "" }}
image: "{{ .Values.image }}"
{{- else }}
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
{{- end }}
imagePullPolicy: {{ .Values.pullPolicy }}
command: ["/fission-bundle"]
args: ["--mqt", "--routerUrl", "http://router.{{ .Release.Namespace }}"]
+1 -5
View File
@@ -109,11 +109,7 @@ spec:
{{- end }}
containers:
- name: logger
{{ if .Values.repository }}
image: "{{ .Values.repository }}/{{ .Values.image }}:{{ .Values.imageTag }}"
{{ else }}
image: "{{ .Values.image }}:{{ .Values.imageTag }}"
{{ end }}
image: {{ include "fission-bundleImage" . | quote }}
imagePullPolicy: {{ .Values.pullPolicy }}
env:
- name: NODE_NAME
@@ -26,7 +26,11 @@ spec:
restartPolicy: Never
containers:
- name: pre-upgrade-job
{{- if .Values.imageTag }}
image: {{ .Values.preUpgradeChecksImage }}:{{ .Values.imageTag }}
{{- else }}
image: {{ .Values.preUpgradeChecksImage }}
{{- end }}
imagePullPolicy: {{ .Values.pullPolicy }}
command: [ "/pre-upgrade-checks" ]
args: ["--fn-pod-namespace", "{{ .Values.functionNamespace }}", "--envbuilder-namespace", "{{ .Values.builderNamespace }}"]
+33 -20
View File
@@ -1,53 +1,66 @@
####################################
# This file can be used with Skaffold (https://github.com/GoogleContainerTools/skaffold) to
# build and deploy Fission to Kubernetes cluster.
# Skaffold version v1.10.1 is used for this configuration.
############## Usage ##############
# Skaffold CLI should be installed on your machine.
# Replace <DOCKERHUB_REPO> with your registry repo/org name
# Run `TAG=1313 skaffold run` to build and deploy with helm - where replace value of tag to what you want to use as tag for image
# Run`skaffold build` to only build and push images
############## Future Improvement/Limitations ##############
# 1) [LOW] Add profiles to suit various deployment needs
# For building & deploying to Cloud Provider
# $ `skaffold run`
# For building & deploying to Kind cluster use Kind profile
# $ `skaffold run -p kind`
####################################
apiVersion: skaffold/v2beta1
apiVersion: skaffold/v2beta4
kind: Config
build:
artifacts:
- image: <DOCKERHUB_REPO>/fission
- image: fission
context: .
docker:
dockerfile: cmd/fission-bundle/Dockerfile.fission-bundle
- image: <DOCKERHUB_REPO>/fetcher
- image: fetcher
docker:
dockerfile: cmd/fetcher/Dockerfile.fission-fetcher
- image: <DOCKERHUB_REPO>/preupgradechecks
- image: preupgradechecks
docker:
dockerfile: cmd/preupgradechecks/Dockerfile.fission-preupgradechecks
tagPolicy:
envTemplate:
template: "{{.IMAGE_NAME}}:{{.TAG}}"
deploy:
helm:
flags:
upgrade:
["--timeout=3m", "--install", "--force", "--debug"]
install:
["--timeout=3m","--debug"]
releases:
- name: fission
chartPath: ./charts/fission-all
valuesFiles:
- ./charts/fission-all/values.yaml
namespace: "fission"
artifactOverrides:
image: "fission"
preUpgradeChecksImage: "preupgradechecks"
fetcher.image: "fetcher"
setValues:
namespace: fission
repository: index.docker.io
# The env template values only should go in setValueTemplates, all other overrides in setValues
setValueTemplates:
image: <DOCKERHUB_REPO>/fission
preUpgradeChecksImage: <DOCKERHUB_REPO>/preupgradechecks
fetcher.image: <DOCKERHUB_REPO>/fetcher
fetcher.imageTag: "{{.TAG}}"
imageTag: "{{.TAG}}"
repository: "index.docker.io"
routerServiceType: LoadBalancer
fetcher.imageTag: ""
imageTag: ""
prometheus.enable: false
wait: true
recreatePods: false
packaged: null
imageStrategy:
fqn: null
helm: null
profiles:
- name: kind
patches:
- op: replace
path: /deploy/helm/releases/0/setValues/repository
value: ""
- op: replace
path: /deploy/helm/releases/0/setValues/routerServiceType
value: "NodePort"