With a colleague of mine, we were testing migration of a ServiceNow – system provisioning ansible workflow from Ansible 2.9 -> Ansible Automation platform 2.x and hit an issue.
No such file or directory: '/usr/share/zoneinfo/zone.tab
My immediate thought would be that “tzdata” pkg is not installed on the UBI.
So added “tzdata” into bindep.txt and rebuild the EE image, but it didn’t work with error saying that nothing to install. (i.e. its already installed, just the file is not available, tested this with “append” in execution-environment.yml
[3/3] STEP 6/6: RUN ls -la /usr/share/zoneinfo/zone.tab ls: cannot access '/usr/share/zoneinfo/zone.tab': No such file or directory Error: error building at STEP "RUN ls -la /usr/share/zoneinfo/zone.tab": error while running runtime: exit status 2
To get rid of this issue, I had to just use append to “reinstall” using microdnf tzdata as below;
$ cat execution-environment.yml --- version: 1 dependencies: galaxy: requirements.yml system: bindep.txt additional_build_steps: prepend: append: - RUN microdnf reinstall -y tzdata - RUN ls -la /usr/share/zoneinfo/zone.tab
[3/3] STEP 6/7: RUN microdnf reinstall -y tzdata Downloading metadata... Downloading metadata... Downloading metadata... Downloading metadata... Downloading metadata... Package Repository Size Reinstalling: tzdata-2021e-1.el8.noarch ubi-8-baseos 485.0 kB replacing tzdata-2021e-1.el8.noarch Transaction Summary: Installing: 0 packages Reinstalling: 1 packages Upgrading: 0 packages Obsoleting: 0 packages Removing: 0 packages Downgrading: 0 packages Downloading packages... Running transaction test... Reinstalling: tzdata;2021e-1.el8;noarch;ubi-8-baseos Complete. --> 0a9e9e0a1ed [3/3] STEP 7/7: RUN ls -la /usr/share/zoneinfo/zone.tab -rw-r--r--. 1 root root 19419 Sep 20 16:34 /usr/share/zoneinfo/zone.tab [3/3] COMMIT servicenow-ee-29