# Copyright 2017 The Openstack-Helm Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: set zuul_site_mirror_fqdn from env var if not defined when: zuul_site_mirror_fqdn is not defined set_fact: zuul_site_mirror_fqdn: "{{ lookup('env','zuul_site_mirror_fqdn') }}" #NOTE(portdirect): Untill https://github.com/ansible/ansible/issues/21433 is # reolved, we build with a shell script to make use of the host network. - name: Kubeadm-AIO build block: #NOTE(portdirect): we do this to ensure we are feeding the docker build # a clean path to work with. - name: Kubeadm-AIO image build path shell: cd "{{ work_dir }}"; pwd register: kubeadm_aio_path # - name: build the Kubeadm-AIO image # docker_image: # path: "{{ kubeadm_aio_path.stdout }}/" # name: "{{ images.kubernetes.kubeadm_aio }}" # dockerfile: "tools/images/kubeadm-aio/Dockerfile" # force: yes # pull: yes # state: present # rm: yes # buildargs: # KUBE_VERSION: "{{ version.kubernetes }}" # CNI_VERSION: "{{ version.cni }}" # HELM_VERSION: "{{ version.helm }}" # CHARTS: "calico,flannel,tiller,kube-dns" - name: Kubeadm-AIO image build path with proxy when: proxy.http shell: |- set -e docker build \ --network host \ --force-rm \ --tag "{{ images.kubernetes.kubeadm_aio }}" \ --file tools/images/kubeadm-aio/Dockerfile \ --build-arg KUBE_VERSION="{{ version.kubernetes }}" \ --build-arg CNI_VERSION="{{ version.cni }}" \ --build-arg HELM_VERSION="{{ version.helm }}" \ --build-arg CHARTS="calico,flannel,tiller,kube-dns,kubernetes-keystone-webhook" \ --build-arg GOOGLE_KUBERNETES_REPO_URL="{{ url.google_kubernetes_repo }}" \ --build-arg GOOGLE_HELM_REPO_URL="{{ url.google_helm_repo }}" \ --build-arg CNI_REPO_URL="{{ url.cni_repo }}" \ --build-arg HTTP_PROXY="{{ proxy.http }}" \ --build-arg HTTPS_PROXY="{{ proxy.https }}" \ --build-arg NO_PROXY="{{ proxy.noproxy }}" \ {% if zuul_site_mirror_fqdn is defined and zuul_site_mirror_fqdn %} --build-arg UBUNTU_URL="http://{{ zuul_site_mirror_fqdn }}/ubuntu/" \ --build-arg ALLOW_UNAUTHENTICATED="true" \ --build-arg PIP_INDEX_URL="http://{{ zuul_site_mirror_fqdn }}/pypi/simple" \ --build-arg PIP_TRUSTED_HOST="{{ zuul_site_mirror_fqdn }}" \ {% endif %} . args: chdir: "{{ kubeadm_aio_path.stdout }}/" executable: /bin/bash - name: Kubeadm-AIO image build path when: not proxy.http shell: |- set -e docker build \ --network host \ --force-rm \ --tag "{{ images.kubernetes.kubeadm_aio }}" \ --file tools/images/kubeadm-aio/Dockerfile \ --build-arg KUBE_VERSION="{{ version.kubernetes }}" \ --build-arg CNI_VERSION="{{ version.cni }}" \ --build-arg HELM_VERSION="{{ version.helm }}" \ --build-arg CHARTS="calico,flannel,tiller,kube-dns,kubernetes-keystone-webhook" \ --build-arg GOOGLE_KUBERNETES_REPO_URL="{{ url.google_kubernetes_repo }}" \ --build-arg GOOGLE_HELM_REPO_URL="{{ url.google_helm_repo }}" \ --build-arg CNI_REPO_URL="{{ url.cni_repo }}" \ {% if zuul_site_mirror_fqdn is defined and zuul_site_mirror_fqdn %} --build-arg UBUNTU_URL="http://{{ zuul_site_mirror_fqdn }}/ubuntu/" \ --build-arg ALLOW_UNAUTHENTICATED="true" \ --build-arg PIP_INDEX_URL="http://{{ zuul_site_mirror_fqdn }}/pypi/simple" \ --build-arg PIP_TRUSTED_HOST="{{ zuul_site_mirror_fqdn }}" \ {% endif %} . args: chdir: "{{ kubeadm_aio_path.stdout }}/" executable: /bin/bash