Uploaded image for project: 'OpenNMS'
  1. OpenNMS
  2. NMS-10834

[circleci] Building container images fails intermittently

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 24.0.0
    • Fix Version/s: 25.0.0
    • Component/s: None
    • Security Level: Default (Default Security Scheme)
    • Labels:
      None
    • Epic Link:
    • Sprint:
      Horizon - May 1st 2019, Horizon 2019 - 19, Horizon 2019 - May 15th 2019, Horizon 2019 - May 22nd 2019

      Description

      I've seen errors like the following when building the Horizon container image:

      Step 13/24 : SHELL /bin/bash -c
       ---> Running in 11942ed93c33
       ---> 94b72f033ef5
      Removing intermediate container 11942ed93c33
      Step 14/24 : RUN yum -y install epel-release &&     rpm --import "${REPO_KEY_URL}" &&     yum -y install ${REPO_RPM} &&     yum -y install ${PACKAGES} &&     if [ "$(ls -1 /tmp/rpms/*.rpm 2>/dev/null | wc -l)" != 0 ]; then yum -y localinstall /tmp/rpms/*.rpm; else yum -y install ${ONMS_PACKAGES}; fi &&     rm -rf /tmp/rpms &&     yum clean all &&     rm -rf /var/cache/yum &&     rm -rf /opt/opennms/logs            /var/opennms/rrd            /var/opennms/reports &&     mkdir -p /opennms-data/logs              /opennms-data/rrd              /opennms-data/reports &&     ln -s /opennms-data/logs /opt/opennms/logs &&     ln -s /opennms-data/rrd /var/opennms/rrd &&     ln -s /opennms-data/reports /var/opennms/reports
       ---> Running in 94cc49299d9d
      Loaded plugins: fastestmirror, ovl
      Determining fastest mirrors
      
      
       One of the configured repositories failed (Unknown),
       and yum doesn't have enough cached data to continue. At this point the only
       safe thing yum can do is fail. There are a few ways to work "fix" this:
      
           1. Contact the upstream for the repository and get them to fix the problem.
      
           2. Reconfigure the baseurl/etc. for the repository, to point to a working
              upstream. This is most often useful if you are using a newer
              distribution release than is supported by the repository (and the
              packages for the previous distribution release still work).
      
           3. Run the command with the repository temporarily disabled
                  yum --disablerepo=<repoid> ...
      
           4. Disable the repository permanently, so yum won't use it by default. Yum
              will then just ignore the repository until you permanently enable it
              again or use --enablerepo for temporary usage:
      
                  yum-config-manager --disable <repoid>
              or
                  subscription-manager repos --disable=<repoid>
      
           5. Configure the failing repository to be skipped, if it is unavailable.
              Note that yum will try to contact the repo. when it runs most commands,
              so will have to try and fail each time (and thus. yum will be be much
              slower). If it is a very temporary problem though, this is often a nice
              compromise:
      
                  yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true
      
      Cannot find a valid baseurl for repo: base/7/x86_64
      Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=container error was
      14: curl#56 - "Recv failure: Connection reset by peer"
      The command '/bin/bash -c yum -y install epel-release &&     rpm --import "${REPO_KEY_URL}" &&     yum -y install ${REPO_RPM} &&     yum -y install ${PACKAGES} &&     if [ "$(ls -1 /tmp/rpms/*.rpm 2>/dev/null | wc -l)" != 0 ]; then yum -y localinstall /tmp/rpms/*.rpm; else yum -y install ${ONMS_PACKAGES}; fi &&     rm -rf /tmp/rpms &&     yum clean all &&     rm -rf /var/cache/yum &&     rm -rf /opt/opennms/logs            /var/opennms/rrd            /var/opennms/reports &&     mkdir -p /opennms-data/logs              /opennms-data/rrd              /opennms-data/reports &&     ln -s /opennms-data/logs /opt/opennms/logs &&     ln -s /opennms-data/rrd /var/opennms/rrd &&     ln -s /opennms-data/reports /var/opennms/reports' returned a non-zero code: 1
      Exited with code 1
      

      It would be nice to rework the image so that we could reuse existing layers and wouldn't need to install packages from remote repositories.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                indigo Ronny Trommer
                Reporter:
                j-white Jesse White
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: