rabbah closed pull request #233: update docker-pull-runtimes for upstream
change #3680
URL: https://github.com/apache/incubator-openwhisk-deploy-kube/pull/233
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git a/docker/docker-pull/pull_images.yml
b/docker/docker-pull/pull_images.yml
index bc1dc85..c588e70 100644
--- a/docker/docker-pull/pull_images.yml
+++ b/docker/docker-pull/pull_images.yml
@@ -2,38 +2,47 @@
# license agreements; and to You under the Apache License, Version 2.0.
---
-# Playbook to prefetch runtime action images from a docker registry for an
invoker node.
+# Playbook to prefetch runtime action images from a docker registry for an
invoker node
+# as specified by the RUNTIMES_MANIFEST environment variable
+# Note: If RUNTIMES_REGISTRY is not "", it must include a trailing '/'
- hosts: localhost
vars:
docker_pull_retries: 10
docker_pull_delay: 10
- docker_registry:
- runtimesManifest: "{{ lookup('env', 'RUNTIMES_MANIFEST') | from_json }}"
- dip: "{{ lookup('env', 'DEFAULT_IMAGE_PREFIX') }}"
- defaultImagePrefix: "{{ dip if dip != '' else 'openwhisk'}}"
- dit: "{{ lookup('env', 'DEFAULT_IMAGE_TAG') }}"
- defaultImageTag: "{{ dit if dit != '' else 'latest' }}"
+ runtimes_registry: "{{ lookup('env', 'RUNTIMES_REGISTRY') | default() }}"
+ runtimes_registry_username: "{{ lookup('env',
'RUNTIMES_REGISTRY_USERNAME') | default() }}"
+ runtimes_registry_password: "{{ lookup('env',
'RUNTIMES_REGISTRY_PASSWORD') | default() }}"
+ runtimes_manifest: "{{ lookup('env', 'RUNTIMES_MANIFEST') }}"
+ runtimes_manifest_json: "{{ lookup('env', 'RUNTIMES_MANIFEST') | from_json
}}"
tasks:
- name: docker login
docker_login:
- registry: "{{ docker_registry }}"
- username: "{{ docker_registry_username }}"
- password: "{{ docker_registry_password }}"
- when: docker_registry != "" and docker_registry_password is defined
+ registry: "{{ runtimes_registry }}"
+ username: "{{ runtimes_registry_username }}"
+ password: "{{ runtimes_registry_password }}"
+ when: runtimes_registry != "" and runtimes_registry_password is defined
- - name: "pull runtime action images with tag {{defaultImageTag}}"
- shell: "docker pull
{{docker_registry}}{{defaultImagePrefix}}/{{item}}:{{defaultImageTag}}"
- with_items: "{{ runtimesManifest.runtimes.values() | sum(start=[]) |
selectattr('deprecated', 'equalto',false) | map(attribute='image.name') | list
| unique }}"
- when: docker_registry != ""
+ - name: "Display runtime manifest"
+ debug:
+ var: runtimes_manifest
+
+ - name: "Process runtime manifest"
+ set_fact:
+ docker_images_managed: "{{ runtimes_manifest_json.runtimes.values() |
sum(start=[]) | selectattr('deprecated', 'equalto', false) |
map(attribute='image') | list | unique }}"
+ docker_images_blackbox: "{{ runtimes_manifest_json.blackboxes }}"
+
+ - name: "pull runtime action images per manifest"
+ shell: "docker pull
{{runtimes_registry}}{{item.prefix}}/{{item.name}}:{{item.tag | default()}}"
+ with_items:
+ - "{{ docker_images_managed }}"
retries: "{{ docker_pull_retries }}"
delay: "{{ docker_pull_delay }}"
- - name: "pull blackboxes action images with tag {{defaultImageTag}}"
- shell: "docker pull
{{docker_registry}}{{defaultImagePrefix}}/{{item.name}}:{{defaultImageTag}}"
+ - name: "pull blackboxes action images per manifest"
+ shell: "docker pull
{{runtimes_registry}}{{item.prefix}}/{{item.name}}:{{item.tag | default()}}"
with_items:
- - "{{ runtimesManifest.blackboxes }}"
- when: docker_registry != ""
+ - "{{ docker_images_blackbox }}"
retries: "{{ docker_pull_retries }}"
delay: "{{ docker_pull_delay }}"
diff --git a/helm/templates/_invokerHelpers.tpl
b/helm/templates/_invokerHelpers.tpl
index 7e7b2f3..35ac441 100644
--- a/helm/templates/_invokerHelpers.tpl
+++ b/helm/templates/_invokerHelpers.tpl
@@ -38,21 +38,19 @@
# action runtimes
- name: "RUNTIMES_MANIFEST"
value: {{ template "runtimes_manifest" . }}
- - name: "DOCKER_REGISTRY"
- value: {{ .Values.docker.registry.name | quote }}
- - name: "DOCKER_IMAGE_PREFIX"
- value: {{ .Values.docker.image.prefix | quote }}
- - name: "DOCKER_IMAGE_TAG"
- value: {{ .Values.docker.image.tag | quote }}
- - name: "DOCKER_REGISTRY_USERNAME"
+{{- if ne .Values.docker.registry.name "" }}
+ - name: "RUNTIMES_REGISTRY"
+ value: "{{- .Values.docker.registry.name -}}/"
+ - name: "RUNTIMES_REGISTRY_USERNAME"
valueFrom:
secretKeyRef:
name: docker.registry.auth
key: docker_registry_username
- - name: "DOCKER_REGISTRY_PASSWORD"
+ - name: "RUNTIMES_REGISTRY_PASSWORD"
valueFrom:
secretKeyRef:
name: docker.registry.auth
key: docker_registry_password
{{- end -}}
+{{- end -}}
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services