Message ID | 20171122220019.16041-1-vishal.l.verma@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Nov 22, 2017 at 2:00 PM, Vishal Verma <vishal.l.verma@intel.com> wrote: > The rpmbuild and make-git-snapshot assume that the various ~/rpmbuild/* > directories are present. In case they weren't, git-archive would fail > with something like: > > /root/rpmbuild/SOURCES/ndctl-58.2.38.g8ad8f4c.tar.gz: No such file or directory > > Add a 'mkdir -p' to make sure these directories are present. > > Cc: Dan Williams <dan.j.williams@intel.com> > Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> > --- > rpmbuild.sh | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/rpmbuild.sh b/rpmbuild.sh > index 4535b46..1dd1709 100755 > --- a/rpmbuild.sh > +++ b/rpmbuild.sh > @@ -1,5 +1,6 @@ > #!/bin/bash > pushd $(dirname $0) >/dev/null > +mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} Hmm, I'd rather run rpmdev-setuptree than create this directories manually, and going further I'd rather just keep the assumption that rpmdev-setuptree has already been run before this script is run.
On Wed, 2017-11-22 at 14:13 -0800, Dan Williams wrote: > On Wed, Nov 22, 2017 at 2:00 PM, Vishal Verma <vishal.l.verma@intel.c > om> wrote: > > The rpmbuild and make-git-snapshot assume that the various > > ~/rpmbuild/* > > directories are present. In case they weren't, git-archive would > > fail > > with something like: > > > > /root/rpmbuild/SOURCES/ndctl-58.2.38.g8ad8f4c.tar.gz: No such > > file or directory > > > > Add a 'mkdir -p' to make sure these directories are present. > > > > Cc: Dan Williams <dan.j.williams@intel.com> > > Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> > > --- > > rpmbuild.sh | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/rpmbuild.sh b/rpmbuild.sh > > index 4535b46..1dd1709 100755 > > --- a/rpmbuild.sh > > +++ b/rpmbuild.sh > > @@ -1,5 +1,6 @@ > > #!/bin/bash > > pushd $(dirname $0) >/dev/null > > +mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} > > Hmm, I'd rather run rpmdev-setuptree than create this directories > manually, and going further I'd rather just keep the assumption that > rpmdev-setuptree has already been run before this script is run. We could do a test -d ~/rpmbuild/SOURCES or so, and if not found, then run rpmdev-setuptree? We know we are about to write to that path, so if it doesn't exist, why not create it?
On Wed, Nov 22, 2017 at 2:15 PM, Verma, Vishal L <vishal.l.verma@intel.com> wrote: > > On Wed, 2017-11-22 at 14:13 -0800, Dan Williams wrote: >> On Wed, Nov 22, 2017 at 2:00 PM, Vishal Verma <vishal.l.verma@intel.c >> om> wrote: >> > The rpmbuild and make-git-snapshot assume that the various >> > ~/rpmbuild/* >> > directories are present. In case they weren't, git-archive would >> > fail >> > with something like: >> > >> > /root/rpmbuild/SOURCES/ndctl-58.2.38.g8ad8f4c.tar.gz: No such >> > file or directory >> > >> > Add a 'mkdir -p' to make sure these directories are present. >> > >> > Cc: Dan Williams <dan.j.williams@intel.com> >> > Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> >> > --- >> > rpmbuild.sh | 1 + >> > 1 file changed, 1 insertion(+) >> > >> > diff --git a/rpmbuild.sh b/rpmbuild.sh >> > index 4535b46..1dd1709 100755 >> > --- a/rpmbuild.sh >> > +++ b/rpmbuild.sh >> > @@ -1,5 +1,6 @@ >> > #!/bin/bash >> > pushd $(dirname $0) >/dev/null >> > +mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} >> >> Hmm, I'd rather run rpmdev-setuptree than create this directories >> manually, and going further I'd rather just keep the assumption that >> rpmdev-setuptree has already been run before this script is run. > > We could do a test -d ~/rpmbuild/SOURCES or so, and if not found, then > run rpmdev-setuptree? > We know we are about to write to that path, so if it doesn't exist, why > not create it? Because we expect to build into an initialized rpmbuild tree, and if it's not initialized failing seems appropriate. That said, I'm ok with your "test and call rpmdev-setuptree" proposal. >
On Wed, 2017-11-22 at 15:49 -0800, Dan Williams wrote: > On Wed, Nov 22, 2017 at 2:15 PM, Verma, Vishal L > <vishal.l.verma@intel.com> wrote: > > > > On Wed, 2017-11-22 at 14:13 -0800, Dan Williams wrote: > > > On Wed, Nov 22, 2017 at 2:00 PM, Vishal Verma <vishal.l.verma@int > > > el.c > > > om> wrote: > > > > The rpmbuild and make-git-snapshot assume that the various > > > > ~/rpmbuild/* > > > > directories are present. In case they weren't, git-archive > > > > would > > > > fail > > > > with something like: > > > > > > > > /root/rpmbuild/SOURCES/ndctl-58.2.38.g8ad8f4c.tar.gz: No such > > > > file or directory > > > > > > > > Add a 'mkdir -p' to make sure these directories are present. > > > > > > > > Cc: Dan Williams <dan.j.williams@intel.com> > > > > Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> > > > > --- > > > > rpmbuild.sh | 1 + > > > > 1 file changed, 1 insertion(+) > > > > > > > > diff --git a/rpmbuild.sh b/rpmbuild.sh > > > > index 4535b46..1dd1709 100755 > > > > --- a/rpmbuild.sh > > > > +++ b/rpmbuild.sh > > > > @@ -1,5 +1,6 @@ > > > > #!/bin/bash > > > > pushd $(dirname $0) >/dev/null > > > > +mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} > > > > > > Hmm, I'd rather run rpmdev-setuptree than create this directories > > > manually, and going further I'd rather just keep the assumption > > > that > > > rpmdev-setuptree has already been run before this script is run. > > > > We could do a test -d ~/rpmbuild/SOURCES or so, and if not found, > > then > > run rpmdev-setuptree? > > We know we are about to write to that path, so if it doesn't exist, > > why > > not create it? > > Because we expect to build into an initialized rpmbuild tree, and if > it's not initialized failing seems appropriate. That said, I'm ok > with > your "test and call rpmdev-setuptree" proposal. > > Actually rpmdev-setuptree will overwrite any rpmmacros file, so maybe it is best not to call it and risk changing users environments. I'll send a patch to check for it though, and if not found, print an error message and exit out.
diff --git a/rpmbuild.sh b/rpmbuild.sh index 4535b46..1dd1709 100755 --- a/rpmbuild.sh +++ b/rpmbuild.sh @@ -1,5 +1,6 @@ #!/bin/bash pushd $(dirname $0) >/dev/null +mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} ./make-git-snapshot.sh popd > /dev/null rpmbuild -ba $(dirname $0)/rhel/ndctl.spec
The rpmbuild and make-git-snapshot assume that the various ~/rpmbuild/* directories are present. In case they weren't, git-archive would fail with something like: /root/rpmbuild/SOURCES/ndctl-58.2.38.g8ad8f4c.tar.gz: No such file or directory Add a 'mkdir -p' to make sure these directories are present. Cc: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Vishal Verma <vishal.l.verma@intel.com> --- rpmbuild.sh | 1 + 1 file changed, 1 insertion(+)