[CentOS] Nodejs010 Packages giving unresolved dependency error when building the nodejs packages

Wed Mar 29 08:53:18 UTC 2017
Maheshwari, Shagun <Shagun.Maheshwari at Harman.com>

Hi,

I am trying to built an ISO with nodejs010 packages but when I run the command "repoclosure -a x86_64 -r <local-repository-name>" to check its further dependencies, it is giving unresolved dependencies error.
Example:
package: nodejs010-node-gyp-3.2.0-2.el7.centos.noarch from Harman (it's a local repo name)
  unresolved deps:
     npm(minimatch) < 0:4
     npm(minimatch) >= 0:3
     nodejs(engine) >= 0:0.8.0

In ISO we have nodejs010-nodejs-minimatch-3.0.2-1.el7 but it is giving error that npm(minimatch) < 0.4 or npm(minimatch) >= 0:3 and on mirror.centos.org latest version of this package is 3.0.2-1.
It was an example, there are many errors like this. So, Please find the attached nodejs-unresolved-dep-erre.log file.
I have also attached the list of nodejs's RPMs which I want to include in my ISO.

Steps to reproduce this issue:

1.      Built all nodejs packages using mock

Mock -r centos-7-x86_64 rebuild -define 'scl nodejs010' nodejs010-x.x.x.src.rpm

2.      Copy all nodejs rpms in a folder

3.      Make a local repository in /etc/yum.repos.d/ folder
e.g.
1. cd /etc/yum.repos.d/
2. mkdir dep.repo
3. copy following lines in dep.repo file:
    [harman]
    name=harman
    baseurl=file:///path of the folder where you have copied your nodejs rpms/
    enabled=1

4.      Run the following command in that folder where you have copied your rpms:

createrepo .

5.      Then run repoclosure -a x86_64 -r harman

But when I download all nodejs rpms from http://mirror.centos.org/centos-7/7.3.1611/sclo/x86_64/rh/nodejs010/ site and repeat the same steps then it is not giving any unresolved dependency errors.
Why it is happening ? or There is any problem with our rpm building process ? Please response and help.

Regards,
Shagun Maheshwari