From 4e58cde6373a0ba71c61fe7dd7856d154d966189 Mon Sep 17 00:00:00 2001 From: thejsj Date: Wed, 17 May 2017 14:43:15 -0700 Subject: [PATCH 1/7] Fix tagging of image builder --- ansible/roles/image-builder/tasks/main.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/ansible/roles/image-builder/tasks/main.yml b/ansible/roles/image-builder/tasks/main.yml index 1a29a3aa..7504c07c 100644 --- a/ansible/roles/image-builder/tasks/main.yml +++ b/ansible/roles/image-builder/tasks/main.yml @@ -9,8 +9,3 @@ tags: deploy become: true command: docker build --no-cache --tag="{{ image_builder_docker_namespace }}:{{ git_branch }}" /opt/runnable/image-builder - -- name: tag the image-builder with registry.runnable.com - tags: deploy - become: true - command: docker tag {{ image_builder_docker_namespace }}:{{ git_branch }} registry.runnable.com/{{ image_builder_docker_namespace }}:{{ git_branch }} From 7ccf31c641366e853839df53db19f91e13ee37db Mon Sep 17 00:00:00 2001 From: thejsj Date: Wed, 17 May 2017 16:23:15 -0700 Subject: [PATCH 2/7] Change way we deploy image-builder --- ansible/delta-hosts/hosts | 3 +++ ansible/gamma-hosts/hosts | 3 +++ ansible/group_vars/alpha-image-builder.yml | 8 +++++--- ansible/image-builder.yml | 11 +++++++---- ansible/roles/builder/tasks/main.yml | 2 +- ansible/roles/image-builder/tasks/main.yml | 11 ----------- ansible/roles/pull-image/tasks/main.yml | 15 +++++++++++++++ 7 files changed, 34 insertions(+), 19 deletions(-) delete mode 100644 ansible/roles/image-builder/tasks/main.yml create mode 100644 ansible/roles/pull-image/tasks/main.yml diff --git a/ansible/delta-hosts/hosts b/ansible/delta-hosts/hosts index c5b14919..578174b6 100644 --- a/ansible/delta-hosts/hosts +++ b/ansible/delta-hosts/hosts @@ -37,6 +37,9 @@ delta-consul-c [user-vault] localhost +[user-local] +localhost + [worker] localhost diff --git a/ansible/gamma-hosts/hosts b/ansible/gamma-hosts/hosts index a7fd1d5a..f0dfffa2 100644 --- a/ansible/gamma-hosts/hosts +++ b/ansible/gamma-hosts/hosts @@ -41,6 +41,9 @@ gamma-consul-c [user-vault] localhost +[user-local] +localhost + [worker] localhost diff --git a/ansible/group_vars/alpha-image-builder.yml b/ansible/group_vars/alpha-image-builder.yml index 4824df73..af0e7a56 100644 --- a/ansible/group_vars/alpha-image-builder.yml +++ b/ansible/group_vars/alpha-image-builder.yml @@ -1,8 +1,10 @@ app_name: image-builder name: "{{ app_name }}" -# namespace (can include "registry.runnable.com:") -image_builder_docker_namespace: "{{ registry_host }}/runnable/image-builder" -app_repo: git@github.com:CodeNow/{{ app_name }}.git + +inject_ca: false +repo: git@github.com:CodeNow/{{ name }}.git +node_version: "4.8.0" +npm_version: "2.15.11" # consul values consul_values: diff --git a/ansible/image-builder.yml b/ansible/image-builder.yml index 6710e62a..3b23f673 100644 --- a/ansible/image-builder.yml +++ b/ansible/image-builder.yml @@ -1,10 +1,13 @@ --- +- hosts: api + vars_files: + - group_vars/alpha-image-builder.yml + roles: + - { role: builder } + - hosts: "{{ dock | default('docks') }}" vars_files: - group_vars/alpha-image-builder.yml roles: - - { role: notify, tags: [notify] } - - { role: node, tags: [setup] } - - { role: git_repo } - - { role: image-builder } + - { role: pull-image } - { role: consul_value, tags: [consul_value] } diff --git a/ansible/roles/builder/tasks/main.yml b/ansible/roles/builder/tasks/main.yml index ae163e76..74a0a5fc 100644 --- a/ansible/roles/builder/tasks/main.yml +++ b/ansible/roles/builder/tasks/main.yml @@ -192,4 +192,4 @@ tags: deploy, build when: build_image become: yes - command: docker logout + command: docker logout {{ registry_host }} diff --git a/ansible/roles/image-builder/tasks/main.yml b/ansible/roles/image-builder/tasks/main.yml deleted file mode 100644 index 7504c07c..00000000 --- a/ansible/roles/image-builder/tasks/main.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -- name: npm install - tags: deploy - npm: - path=/opt/runnable/image-builder - state=latest - -- name: build the image-builder - tags: deploy - become: true - command: docker build --no-cache --tag="{{ image_builder_docker_namespace }}:{{ git_branch }}" /opt/runnable/image-builder diff --git a/ansible/roles/pull-image/tasks/main.yml b/ansible/roles/pull-image/tasks/main.yml new file mode 100644 index 00000000..088a7143 --- /dev/null +++ b/ansible/roles/pull-image/tasks/main.yml @@ -0,0 +1,15 @@ +--- +- name: login to registry + tags: deploy + become: yes + command: docker login -u {{ registry_username }} -p {{ registry_token }} -e "info@runnable.com" {{ registry_host }} + +- name: pull image + tags: deploy + become: true + command: docker pull {{ container_image }}:{{ container_tag }} + +- name: logout of registry + tags: deploy + become: yes + command: docker logout {{ registry_host }} From d0eda673b742741335730bb37e83d7c9a7e385e2 Mon Sep 17 00:00:00 2001 From: thejsj Date: Wed, 17 May 2017 16:46:54 -0700 Subject: [PATCH 3/7] Change host. Add comment --- ansible/image-builder.yml | 2 +- ansible/roles/builder/tasks/main.yml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ansible/image-builder.yml b/ansible/image-builder.yml index 3b23f673..f1469828 100644 --- a/ansible/image-builder.yml +++ b/ansible/image-builder.yml @@ -1,5 +1,5 @@ --- -- hosts: api +- hosts: user-local vars_files: - group_vars/alpha-image-builder.yml roles: diff --git a/ansible/roles/builder/tasks/main.yml b/ansible/roles/builder/tasks/main.yml index 74a0a5fc..f330c086 100644 --- a/ansible/roles/builder/tasks/main.yml +++ b/ansible/roles/builder/tasks/main.yml @@ -31,6 +31,7 @@ - name: set number of images built tags: deploy, build set_fact: + # Quay IO includes deleted images in this query through the `end_ts` property no_images_found: "{{ currently_built_tags|json_query('json.tags')|length == 0 }}" - name: set number of images built From 691eeb57fff96f37eb6e8a73a7ec6eba46c43e01 Mon Sep 17 00:00:00 2001 From: Anton Podviaznikov Date: Wed, 17 May 2017 17:19:07 -0700 Subject: [PATCH 4/7] update node version to the tested one --- ansible/group_vars/alpha-image-builder.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/group_vars/alpha-image-builder.yml b/ansible/group_vars/alpha-image-builder.yml index af0e7a56..6b065bc7 100644 --- a/ansible/group_vars/alpha-image-builder.yml +++ b/ansible/group_vars/alpha-image-builder.yml @@ -3,7 +3,7 @@ name: "{{ app_name }}" inject_ca: false repo: git@github.com:CodeNow/{{ name }}.git -node_version: "4.8.0" +node_version: "4.2.2" npm_version: "2.15.11" # consul values From 0bddbc67d5d09f17acbc7a79722abc8199ffdfb4 Mon Sep 17 00:00:00 2001 From: thejsj Date: Wed, 17 May 2017 17:48:39 -0700 Subject: [PATCH 5/7] Add ability to add default dockerfile --- ansible/group_vars/alpha-image-builder.yml | 1 + ansible/roles/builder/tasks/main.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ansible/group_vars/alpha-image-builder.yml b/ansible/group_vars/alpha-image-builder.yml index af0e7a56..11e216bd 100644 --- a/ansible/group_vars/alpha-image-builder.yml +++ b/ansible/group_vars/alpha-image-builder.yml @@ -5,6 +5,7 @@ inject_ca: false repo: git@github.com:CodeNow/{{ name }}.git node_version: "4.8.0" npm_version: "2.15.11" +use_default_dockerfile: true # consul values consul_values: diff --git a/ansible/roles/builder/tasks/main.yml b/ansible/roles/builder/tasks/main.yml index f330c086..3df49a74 100644 --- a/ansible/roles/builder/tasks/main.yml +++ b/ansible/roles/builder/tasks/main.yml @@ -91,7 +91,7 @@ - name: copy dockerfile to build folder delegate_to: "{{ builder }}" tags: deploy, build - when: build_image + when: build_image and use_default_dockerfile is not defined become: true template: src: "{{ dockerfile }}" From b4abbc91824e169715ab0438c7c00b0602bb9a5f Mon Sep 17 00:00:00 2001 From: thejsj Date: Thu, 18 May 2017 11:06:06 -0700 Subject: [PATCH 6/7] Change role to just use build_with_dockerfile --- ansible/image-builder.yml | 2 +- ansible/roles/build_with_dockerfile/tasks/main.yml | 13 ++++++++++++- ansible/roles/builder/tasks/main.yml | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/ansible/image-builder.yml b/ansible/image-builder.yml index f1469828..3fca438c 100644 --- a/ansible/image-builder.yml +++ b/ansible/image-builder.yml @@ -3,7 +3,7 @@ vars_files: - group_vars/alpha-image-builder.yml roles: - - { role: builder } + - { role: build_with_dockerfile } - hosts: "{{ dock | default('docks') }}" vars_files: diff --git a/ansible/roles/build_with_dockerfile/tasks/main.yml b/ansible/roles/build_with_dockerfile/tasks/main.yml index d7453048..f2e76689 100644 --- a/ansible/roles/build_with_dockerfile/tasks/main.yml +++ b/ansible/roles/build_with_dockerfile/tasks/main.yml @@ -30,9 +30,20 @@ become: yes command: docker build {{ build_args | default("") }} --tag="{{ container_image }}:{{ container_tag }}" "{{ build_dir }}/{{ name }}/repo" +- name: login to registry + delegate_to: "{{ builder }}" + tags: deploy, build + become: yes + command: docker login -u {{ registry_username }} -p {{ registry_token }} -e "info@runnable.com" {{ registry_host }} + - name: push docker image delegate_to: "{{ builder }}" tags: deploy, build become: yes - ignore_errors: True command: docker push {{ container_image }}:{{ container_tag }} + +- name: logout of registry + delegate_to: "{{ builder }}" + tags: deploy, build + become: yes + command: docker logout {{ registry_host }} diff --git a/ansible/roles/builder/tasks/main.yml b/ansible/roles/builder/tasks/main.yml index 3df49a74..f330c086 100644 --- a/ansible/roles/builder/tasks/main.yml +++ b/ansible/roles/builder/tasks/main.yml @@ -91,7 +91,7 @@ - name: copy dockerfile to build folder delegate_to: "{{ builder }}" tags: deploy, build - when: build_image and use_default_dockerfile is not defined + when: build_image become: true template: src: "{{ dockerfile }}" From c5808455bb85f286bffb033cbf3b862024aebb01 Mon Sep 17 00:00:00 2001 From: thejsj Date: Thu, 18 May 2017 14:26:24 -0700 Subject: [PATCH 7/7] Remove unused vars --- ansible/group_vars/alpha-image-builder.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ansible/group_vars/alpha-image-builder.yml b/ansible/group_vars/alpha-image-builder.yml index 83118f17..d2a1e158 100644 --- a/ansible/group_vars/alpha-image-builder.yml +++ b/ansible/group_vars/alpha-image-builder.yml @@ -1,11 +1,7 @@ app_name: image-builder name: "{{ app_name }}" -inject_ca: false repo: git@github.com:CodeNow/{{ name }}.git -node_version: "4.2.2" -npm_version: "2.15.11" -use_default_dockerfile: true # consul values consul_values: