Uploaded image for project: 'integration-packaging'
  1. integration-packaging
  2. INTPAK-214

RPM verify fails on random find cmd with /proc/PID no such file

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Medium Medium
    • None

      I'm seeing what I imagine is an intermittent, random error in a seemingly arbitrary find command in the test-rpm-deps.sh script used in the rpm-verify-full job.

      This code:

      1. Verify exactly 1 RPM is in the path we expect
        set – $HOME/rpmbuild/RPMS/noarch/*.rpm
        if [ $# -eq 1 ]; then
        echo "Found one RPM in build out dir, as expected"
        else
        echo "Expected 1 RPM, found $#"
        echo 1
        fi

      ls -l $HOME/rpmbuild/RPMS/noarch/

      1. If path is globbed (/path/to/*.rpm), expand it
        path=$(sudo find / -wholename $HOME/rpmbuild/RPMS/noarch/*.rpm)

      https://git.opendaylight.org/gerrit/gitweb?p=releng/builder.git;a=blob;f=jjb/packaging/test-rpm-deps.sh;h=982fb5c27c564d8c12e0a0254cc406ccef895286;hb=refs/heads/master#l9

      Creates in the log:

      + set – /home/jenkins/rpmbuild/RPMS/noarch/opendaylight-10.0.0-0.1.20181003rel2393.el7.noarch.rpm
      + '[' 1 -eq 1 ']'
      + echo 'Found one RPM in build out dir, as expected'
      Found one RPM in build out dir, as expected
      ++ sudo find / -wholename /home/jenkins/rpmbuild/RPMS/noarch/opendaylight-10.0.0-0.1.20181003rel2393.el7.noarch.rpm
      find: ‘/proc/31551’: No such file or directory
      + path=/home/jenkins/rpmbuild/RPMS/noarch/opendaylight-10.0.0-0.1.20181003rel2393.el7.noarch.rpm
      Build step 'Execute shell' marked build as failure

      https://logs.opendaylight.org/sandbox/vex-yul-odl-jenkins-2/packaging-verify-full-rpm-master/1/console.log.gz

      Which looks like it's totally unrelated to the test itself, as the RPM clearly does exist (the result of set, the value path ends up set to). I think it's something like a process terminating at an inconvenient time for find, where it looks for the process' /proc/PID but doesn't find it.

      Maybe can rework logic to not search from root, but still give the -wholename. At least exclude /proc/.

            dfarrell07 Daniel Farrell
            dfarrell07 Daniel Farrell
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: