~/src/github.com/openstack-k8s-operators/install_yamls/devsetup ~/ci-framework-data/artifacts ANSIBLE_FORCE_COLOR=true ansible-playbook \ -v -i hosts --tags all \ download_tools.yaml Using /home/zuul-worker/src/github.com/openstack-k8s-operators/ci-framework/ansible.cfg as config file PLAY [Download tools] ********************************************************** TASK [download_tools : Install build dependencies name=['jq', 'skopeo', 'sqlite', 'httpd-tools', 'virt-install', 'gcc', 'python3-jinja2', 'xmlstarlet', 'openssl']] *** Friday 20 February 2026 16:29:48 +0000 (0:00:00.044) 0:00:00.044 ******* Friday 20 February 2026 16:29:48 +0000 (0:00:00.043) 0:00:00.043 ******* changed: [localhost] =>   changed: true  msg: ''  rc: 0  results:  - 'Installed: xmlstarlet-1.6.1-27.el10.x86_64'  - 'Installed: virt-install-5.0.0-1.el10.noarch'  - 'Installed: virt-manager-common-5.0.0-1.el10.noarch'  - 'Installed: apr-util-openssl-1.6.3-23.el10.x86_64'  - 'Installed: libsoup3-3.6.5-5.el10.x86_64'  - 'Installed: skopeo-2:1.22.0-1.el10.x86_64'  - 'Installed: libburn-1.5.6-6.el10.x86_64'  - 'Installed: libvirt-client-11.10.0-4.el10.x86_64'  - 'Installed: osinfo-db-20250606-1.el10.noarch'  - 'Installed: osinfo-db-tools-1.11.0-8.el10.x86_64'  - 'Installed: xorriso-1.5.6-6.el10.x86_64'  - 'Installed: httpd-tools-2.4.63-13.el10.x86_64'  - 'Installed: libisoburn-1.5.6-6.el10.x86_64'  - 'Installed: libisofs-1.5.6-6.el10.x86_64'  - 'Installed: apr-1.7.5-3.el10.x86_64'  - 'Installed: python3-argcomplete-3.2.2-4.el10.noarch'  - 'Installed: apr-util-1.6.3-23.el10.x86_64'  - 'Installed: libosinfo-1.11.0-8.el10.x86_64'  - 'Installed: sqlite-3.46.1-5.el10.x86_64'  - 'Installed: apr-util-lmdb-1.6.3-23.el10.x86_64' TASK [download_tools : Set opm download url suffix opm_url_suffix=latest/download] *** Friday 20 February 2026 16:29:51 +0000 (0:00:03.307) 0:00:03.352 ******* Friday 20 February 2026 16:29:51 +0000 (0:00:03.307) 0:00:03.350 ******* skipping: [localhost] =>   changed: false  false_condition: opm_version is undefined or opm_version == "latest"  skip_reason: Conditional result was False TASK [download_tools : Set opm download url suffix opm_url_suffix=download/{{ opm_version }}] *** Friday 20 February 2026 16:29:51 +0000 (0:00:00.039) 0:00:03.391 ******* Friday 20 February 2026 16:29:51 +0000 (0:00:00.039) 0:00:03.390 ******* ok: [localhost] =>   ansible_facts:  opm_url_suffix: download/v1.30.0  changed: false TASK [download_tools : Create $HOME/bin dir path={{ lookup('env', 'HOME') }}/bin, state=directory, mode=0755] *** Friday 20 February 2026 16:29:51 +0000 (0:00:00.043) 0:00:03.435 ******* Friday 20 February 2026 16:29:51 +0000 (0:00:00.043) 0:00:03.433 ******* ok: [localhost] =>   changed: false  gid: 1000  group: zuul-worker  mode: '0755'  owner: zuul-worker  path: /home/zuul-worker/bin  secontext: unconfined_u:object_r:home_bin_t:s0  size: 48  state: directory  uid: 1000 TASK [download_tools : Download opm url=https://github.com/operator-framework/operator-registry/releases/{{ opm_url_suffix }}/linux-amd64-opm, dest={{ lookup('env', 'HOME') }}/bin/opm, mode=0755, timeout=30] *** Friday 20 February 2026 16:29:51 +0000 (0:00:00.356) 0:00:03.791 ******* Friday 20 February 2026 16:29:51 +0000 (0:00:00.356) 0:00:03.790 ******* changed: [localhost] =>   changed: true  checksum_dest: null  checksum_src: 9238abd6903e2fbbb4e1077b6ae3ada340867a32  dest: /home/zuul-worker/bin/opm  elapsed: 0  gid: 1000  group: zuul-worker  md5sum: 7012baf74b8eb8252ce3d768e06f5400  mode: '0755'  msg: OK (54879432 bytes)  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 54879432  src: /home/zuul-worker/.ansible/tmp/ansible-moduletmp-1771604992.344227-sm0sg4zj/tmpkglp3h97  state: file  status_code: 200  uid: 1000  url: https://github.com/operator-framework/operator-registry/releases/download/v1.30.0/linux-amd64-opm TASK [download_tools : Set oc-mirror download url oc_mirror_url=https://mirror.openshift.com/pub/openshift-v4/clients/ocp/{{ oc_mirror_version }}/oc-mirror.tar.gz] *** Friday 20 February 2026 16:29:53 +0000 (0:00:01.216) 0:00:05.008 ******* Friday 20 February 2026 16:29:53 +0000 (0:00:01.216) 0:00:05.007 ******* ok: [localhost] =>   ansible_facts:  oc_mirror_url: https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/oc-mirror.tar.gz  changed: false TASK [download_tools : Download and extract oc-mirror src={{ oc_mirror_url }}, dest={{ lookup('env', 'HOME') }}/bin/, remote_src=True] *** Friday 20 February 2026 16:29:53 +0000 (0:00:00.033) 0:00:05.042 ******* Friday 20 February 2026 16:29:53 +0000 (0:00:00.033) 0:00:05.040 ******* changed: [localhost] =>   changed: true  dest: /home/zuul-worker/bin/  extract_results:  cmd:  - /usr/bin/gtar  - --extract  - -C  - /home/zuul-worker/bin  - -z  - -f  - /home/zuul-worker/.ansible/tmp/ansible-tmp-1771604993.2111158-13027-206072304108447/oc-mirrotxl1hxa8.tar.gz  err: ''  out: ''  rc: 0  gid: 1000  group: zuul-worker  handler: TgzArchive  mode: '0755'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 76  src: /home/zuul-worker/.ansible/tmp/ansible-tmp-1771604993.2111158-13027-206072304108447/oc-mirrotxl1hxa8.tar.gz  state: directory  uid: 1000 TASK [download_tools : Make oc-mirror executable path={{ lookup('env', 'HOME') }}/bin/oc-mirror, mode=0755] *** Friday 20 February 2026 16:30:01 +0000 (0:00:08.093) 0:00:13.136 ******* Friday 20 February 2026 16:30:01 +0000 (0:00:08.093) 0:00:13.134 ******* changed: [localhost] =>   changed: true  gid: 1000  group: zuul-worker  mode: '0755'  owner: zuul-worker  path: /home/zuul-worker/bin/oc-mirror  secontext: unconfined_u:object_r:home_bin_t:s0  size: 314996368  state: file  uid: 1000 TASK [download_tools : Get version from sdk_version _sdk_version={{ sdk_version | regex_search('v(.*)', '\1') | first }}] *** Friday 20 February 2026 16:30:01 +0000 (0:00:00.191) 0:00:13.328 ******* Friday 20 February 2026 16:30:01 +0000 (0:00:00.192) 0:00:13.326 ******* ok: [localhost] =>   ansible_facts:  _sdk_version: 1.41.1  changed: false TASK [download_tools : Set operator-sdk file for version < 1.3.0 _operator_sdk_file=operator-sdk-{{ sdk_version }}-x86_64-linux-gnu] *** Friday 20 February 2026 16:30:01 +0000 (0:00:00.062) 0:00:13.391 ******* Friday 20 February 2026 16:30:01 +0000 (0:00:00.062) 0:00:13.389 ******* skipping: [localhost] =>   changed: false  false_condition: _sdk_version is version('1.3.0', 'lt', strict=True )  skip_reason: Conditional result was False TASK [download_tools : Set operator-sdk file for version >= 1.3.0 _operator_sdk_file=operator-sdk_linux_amd64] *** Friday 20 February 2026 16:30:01 +0000 (0:00:00.041) 0:00:13.432 ******* Friday 20 February 2026 16:30:01 +0000 (0:00:00.041) 0:00:13.431 ******* ok: [localhost] =>   ansible_facts:  _operator_sdk_file: operator-sdk_linux_amd64  changed: false TASK [download_tools : Download operator-sdk url=https://github.com/operator-framework/operator-sdk/releases/download/{{ sdk_version }}/{{ _operator_sdk_file }}, dest={{ lookup('env', 'HOME') }}/bin/operator-sdk, mode=0755, force=True, timeout=30] *** Friday 20 February 2026 16:30:01 +0000 (0:00:00.050) 0:00:13.483 ******* Friday 20 February 2026 16:30:01 +0000 (0:00:00.050) 0:00:13.482 ******* changed: [localhost] =>   changed: true  checksum_dest: null  checksum_src: b29fbaf7b88d11c0fc7b56fc7468cc20bbb00875  dest: /home/zuul-worker/bin/operator-sdk  elapsed: 0  gid: 1000  group: zuul-worker  md5sum: f288351121b669bf298bab2daeb0d4de  mode: '0755'  msg: OK (120534604 bytes)  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 120534604  src: /home/zuul-worker/.ansible/tmp/ansible-moduletmp-1771605001.8940935-t2d7s_nx/tmp188or1_t  state: file  status_code: 200  uid: 1000  url: https://github.com/operator-framework/operator-sdk/releases/download/v1.41.1/operator-sdk_linux_amd64 TASK [download_tools : Download and extract kustomize src=https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2F{{ kustomize_version }}/kustomize_{{ kustomize_version }}_linux_amd64.tar.gz, dest={{ lookup('env', 'HOME') }}/bin/, remote_src=True] *** Friday 20 February 2026 16:30:02 +0000 (0:00:01.278) 0:00:14.761 ******* Friday 20 February 2026 16:30:02 +0000 (0:00:01.278) 0:00:14.760 ******* changed: [localhost] =>   changed: true  dest: /home/zuul-worker/bin/  extract_results:  cmd:  - /usr/bin/gtar  - --extract  - -C  - /home/zuul-worker/bin  - -z  - -f  - /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605002.9214315-13071-58615090610107/kustomize_v5.0.3_linux_amd644x0k660y.tar.gz  err: ''  out: ''  rc: 0  gid: 1000  group: zuul-worker  handler: TgzArchive  mode: '0755'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 113  src: /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605002.9214315-13071-58615090610107/kustomize_v5.0.3_linux_amd644x0k660y.tar.gz  state: directory  uid: 1000 TASK [download_tools : Download kubectl url=https://dl.k8s.io/release/{{ kubectl_version }}/bin/linux/amd64/kubectl, dest={{ lookup('env', 'HOME') }}/bin/kubectl, mode=0755, timeout=30] *** Friday 20 February 2026 16:30:04 +0000 (0:00:01.197) 0:00:15.959 ******* Friday 20 February 2026 16:30:04 +0000 (0:00:01.197) 0:00:15.958 ******* ok: [localhost] =>   changed: false  dest: /home/zuul-worker/bin/kubectl  elapsed: 0  gid: 1000  group: zuul-worker  mode: '0755'  msg: 'HTTP Error 304: Not Modified'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 197726784  state: hard  status_code: 304  uid: 1000  url: https://dl.k8s.io/release/v1.25.7/bin/linux/amd64/kubectl TASK [download_tools : Download kuttl url=https://github.com/kudobuilder/kuttl/releases/download/v{{ kuttl_version }}/kubectl-kuttl_{{ kuttl_version }}_linux_x86_64, dest={{ lookup('env', 'HOME') }}/bin/kubectl-kuttl, mode=0755, timeout=30] *** Friday 20 February 2026 16:30:04 +0000 (0:00:00.352) 0:00:16.312 ******* Friday 20 February 2026 16:30:04 +0000 (0:00:00.352) 0:00:16.311 ******* changed: [localhost] =>   changed: true  checksum_dest: null  checksum_src: b6a31d1f3601af01fcce998d721a8e71df2fddc2  dest: /home/zuul-worker/bin/kubectl-kuttl  elapsed: 0  gid: 1000  group: zuul-worker  md5sum: 3ff8e2099b841f8ef0766ebc22057376  mode: '0755'  msg: OK (39207064 bytes)  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 39207064  src: /home/zuul-worker/.ansible/tmp/ansible-moduletmp-1771605004.7163496-m6gqu9vv/tmp783eg8ib  state: file  status_code: 200  uid: 1000  url: https://github.com/kudobuilder/kuttl/releases/download/v0.20.0/kubectl-kuttl_0.20.0_linux_x86_64 TASK [download_tools : Download chainsaw src=https://github.com/kyverno/chainsaw/releases/download/v{{ chainsaw_version }}/chainsaw_linux_amd64.tar.gz, dest={{ lookup('env', 'HOME') }}/bin/, remote_src=True, extra_opts=['--exclude', 'README.md', '--exclude', 'LICENSE']] *** Friday 20 February 2026 16:30:05 +0000 (0:00:00.830) 0:00:17.142 ******* Friday 20 February 2026 16:30:05 +0000 (0:00:00.830) 0:00:17.141 ******* changed: [localhost] =>   changed: true  dest: /home/zuul-worker/bin/  extract_results:  cmd:  - /usr/bin/gtar  - --extract  - -C  - /home/zuul-worker/bin  - -z  - --show-transformed-names  - --exclude  - README.md  - --exclude  - LICENSE  - -f  - /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605005.3085299-13109-196176539338429/chainsaw_linux_amd64csea5k5v.tar.gz  err: ''  out: ''  rc: 0  gid: 1000  group: zuul-worker  handler: TgzArchive  mode: '0755'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 150  src: /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605005.3085299-13109-196176539338429/chainsaw_linux_amd64csea5k5v.tar.gz  state: directory  uid: 1000 TASK [download_tools : Download and extract yq src=https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64.tar.gz, dest={{ lookup('env', 'HOME') }}/bin/, remote_src=True, mode=0755] *** Friday 20 February 2026 16:30:08 +0000 (0:00:03.239) 0:00:20.382 ******* Friday 20 February 2026 16:30:08 +0000 (0:00:03.239) 0:00:20.381 ******* changed: [localhost] =>   changed: true  dest: /home/zuul-worker/bin/  extract_results:  cmd:  - /usr/bin/gtar  - --extract  - -C  - /home/zuul-worker/bin  - -z  - -f  - /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605008.5430474-13139-227890699326634/yq_linux_amd64p_yyozn1.tar.gz  err: ''  out: ''  rc: 0  gid: 1000  group: zuul-worker  handler: TgzArchive  mode: '0755'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 4096  src: /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605008.5430474-13139-227890699326634/yq_linux_amd64p_yyozn1.tar.gz  state: directory  uid: 1000 TASK [download_tools : Link yq_linux_amd64 as yq src={{ lookup('env', 'HOME') }}/bin/yq_linux_amd64, dest={{ lookup('env', 'HOME') }}/bin/yq, state=link] *** Friday 20 February 2026 16:30:09 +0000 (0:00:01.270) 0:00:21.653 ******* Friday 20 February 2026 16:30:09 +0000 (0:00:01.270) 0:00:21.651 ******* changed: [localhost] =>   changed: true  dest: /home/zuul-worker/bin/yq  gid: 1000  group: zuul-worker  mode: '0777'  owner: zuul-worker  secontext: unconfined_u:object_r:home_bin_t:s0  size: 36  src: /home/zuul-worker/bin/yq_linux_amd64  state: link  uid: 1000 TASK [download_tools : Deinstall golang state=absent, name=['golang-bin', 'golang-src', 'golang']] *** Friday 20 February 2026 16:30:10 +0000 (0:00:00.258) 0:00:21.911 ******* Friday 20 February 2026 16:30:10 +0000 (0:00:00.258) 0:00:21.909 ******* ok: [localhost] =>   changed: false  msg: Nothing to do  rc: 0  results: [] TASK [download_tools : Delete old go version installed from upstream path={{ item }}, state=absent] *** Friday 20 February 2026 16:30:11 +0000 (0:00:00.965) 0:00:22.876 ******* Friday 20 February 2026 16:30:11 +0000 (0:00:00.965) 0:00:22.875 ******* ok: [localhost] => (item=/usr/local/go) =>   ansible_loop_var: item  changed: false  item: /usr/local/go  path: /usr/local/go  state: absent ok: [localhost] => (item=/home/zuul-worker/bin/go) =>   ansible_loop_var: item  changed: false  item: /home/zuul-worker/bin/go  path: /home/zuul-worker/bin/go  state: absent ok: [localhost] => (item=/home/zuul-worker/bin/gofmt) =>   ansible_loop_var: item  changed: false  item: /home/zuul-worker/bin/gofmt  path: /home/zuul-worker/bin/gofmt  state: absent ok: [localhost] => (item=/usr/local/bin/go) =>   ansible_loop_var: item  changed: false  item: /usr/local/bin/go  path: /usr/local/bin/go  state: absent ok: [localhost] => (item=/usr/local/bin/gofmt) =>   ansible_loop_var: item  changed: false  item: /usr/local/bin/gofmt  path: /usr/local/bin/gofmt  state: absent TASK [download_tools : Download and extract golang src=https://golang.org/dl/go{{ go_version }}.linux-amd64.tar.gz, dest=/usr/local, remote_src=True, extra_opts=['--exclude', 'go/misc', '--exclude', 'go/pkg/linux_amd64_race', '--exclude', 'go/test']] *** Friday 20 February 2026 16:30:12 +0000 (0:00:01.046) 0:00:23.922 ******* Friday 20 February 2026 16:30:12 +0000 (0:00:01.046) 0:00:23.921 ******* changed: [localhost] =>   changed: true  dest: /usr/local  extract_results:  cmd:  - /bin/gtar  - --extract  - -C  - /usr/local  - -z  - --show-transformed-names  - --exclude  - go/misc  - --exclude  - go/pkg/linux_amd64_race  - --exclude  - go/test  - -f  - /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605012.0904875-13202-22365725612225/go1.24.6.linux-amd64few9c6fo.tar.gz  err: ''  out: ''  rc: 0  gid: 0  group: root  handler: TgzArchive  mode: '0755'  owner: root  secontext: system_u:object_r:usr_t:s0  size: 141  src: /home/zuul-worker/.ansible/tmp/ansible-tmp-1771605012.0904875-13202-22365725612225/go1.24.6.linux-amd64few9c6fo.tar.gz  state: directory  uid: 0 TASK [download_tools : Set alternatives link to installed go version _raw_params=set -e update-alternatives --install /usr/local/bin/{{ item }} {{ item }} /usr/local/go/bin/{{ item }} 1 ] *** Friday 20 February 2026 16:30:22 +0000 (0:00:10.482) 0:00:34.405 ******* Friday 20 February 2026 16:30:22 +0000 (0:00:10.482) 0:00:34.404 ******* changed: [localhost] => (item=go) =>   ansible_loop_var: item  changed: true  cmd: |  set -e  update-alternatives --install /usr/local/bin/go go /usr/local/go/bin/go 1  delta: '0:00:00.005076'  end: '2026-02-20 16:30:22.895262'  item: go  msg: ''  rc: 0  start: '2026-02-20 16:30:22.890186'  stderr: ''  stderr_lines: []  stdout: ''  stdout_lines: [] changed: [localhost] => (item=gofmt) =>   ansible_loop_var: item  changed: true  cmd: |  set -e  update-alternatives --install /usr/local/bin/gofmt gofmt /usr/local/go/bin/gofmt 1  delta: '0:00:00.004205'  end: '2026-02-20 16:30:23.110144'  item: gofmt  msg: ''  rc: 0  start: '2026-02-20 16:30:23.105939'  stderr: ''  stderr_lines: []  stdout: ''  stdout_lines: [] TASK [download_tools : Clean bash cache msg=When move from rpm to upstream version, make sure to clean bash cache using `hash -d go`] *** Friday 20 February 2026 16:30:23 +0000 (0:00:00.596) 0:00:35.002 ******* Friday 20 February 2026 16:30:23 +0000 (0:00:00.596) 0:00:35.001 ******* ok: [localhost] =>   msg: When move from rpm to upstream version, make sure to clean bash cache using `hash  -d go` PLAY RECAP ********************************************************************* localhost : ok=21  changed=12  unreachable=0 failed=0 skipped=2  rescued=0 ignored=0 Friday 20 February 2026 16:30:23 +0000 (0:00:00.072) 0:00:35.075 ******* =============================================================================== download_tools : Download and extract golang --------------------------- 10.48s download_tools : Download and extract oc-mirror ------------------------- 8.09s download_tools : Install build dependencies ----------------------------- 3.31s download_tools : Download chainsaw -------------------------------------- 3.24s download_tools : Download operator-sdk ---------------------------------- 1.28s download_tools : Download and extract yq -------------------------------- 1.27s download_tools : Download opm ------------------------------------------- 1.22s download_tools : Download and extract kustomize ------------------------- 1.20s download_tools : Delete old go version installed from upstream ---------- 1.05s download_tools : Deinstall golang --------------------------------------- 0.97s download_tools : Download kuttl ----------------------------------------- 0.83s download_tools : Set alternatives link to installed go version ---------- 0.60s download_tools : Create $HOME/bin dir ----------------------------------- 0.36s download_tools : Download kubectl --------------------------------------- 0.35s download_tools : Link yq_linux_amd64 as yq ------------------------------ 0.26s download_tools : Make oc-mirror executable ------------------------------ 0.19s download_tools : Clean bash cache --------------------------------------- 0.07s download_tools : Get version from sdk_version --------------------------- 0.06s download_tools : Set operator-sdk file for version >= 1.3.0 ------------- 0.05s download_tools : Set opm download url suffix ---------------------------- 0.04s Friday 20 February 2026 16:30:23 +0000 (0:00:00.073) 0:00:35.074 ******* =============================================================================== download_tools --------------------------------------------------------- 35.03s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ total ------------------------------------------------------------------ 35.03s ~/ci-framework-data/artifacts