Bug 924120

Summary: RFE: provide delimiter between collections and command
Product: [Fedora] Fedora Reporter: Miroslav Suchý <msuchy>
Component: scl-utilsAssignee: Jan Zeleny <jzeleny>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: rawhideCC: bkabrda, eli.heady, fweimer, hhorak, jzeleny, stewartbrodie49
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: scl-utils-20131017-1.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1029517 (view as bug list) Environment:
Last Closed: 2013-11-10 07:18:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 953462, 965565, 1029517, 1032460, 1040861, 1074575    

Description Miroslav Suchý 2013-03-21 09:10:03 UTC
Description of problem:
scl has syntax:
  scl <action> [<collection1> <collection2> ...] <command>
So only last param is evaluated as command.

Now imagine real life situation of porting application to SC. I have command in init.d script:
THIN="/usr/bin/thin"
$THIN start --user foreman --environment production --group foreman --config /etc/foreman/thin.yml --rackup /usr/share/foreman/config.ru

I can easily replace THIN in %build phase of spec file. So I will get
THIN="scl enable ruby193"
But then the command is evaluated to:
scl enable ruby193 thin start --user foreman --environment production --group foreman --config /etc/foreman/thin.yml --rackup /usr/share/foreman/config.ru
But that means that "thin" and "start" etc. are treated as collection names.
Resulting in error:
Unable to open /etc/scl/prefixes/thin!

I learn that I have to run
scl enable ruby193 'thin start --user foreman --environment production --group foreman --config /etc/foreman/thin.yml --rackup /usr/share/foreman/config.ru'
But this is much harder to do automatically.

Life would be much easier if scl would have some delimiter. I.e. if the syntax would be:
 scl <action> [<collection1> <collection2> ...] [--] <command>
So I can write something like
 scl enable ruby193 -- echo ahoj
Where everything after "--" would be taken as command.

Comment 1 Jan Zeleny 2013-06-19 08:10:36 UTC
*** Bug 956618 has been marked as a duplicate of this bug. ***

Comment 2 Fedora Update System 2013-10-16 07:42:18 UTC
scl-utils-20131015-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/scl-utils-20131015-1.fc20

Comment 3 Fedora Update System 2013-10-16 07:43:00 UTC
scl-utils-20131015-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/scl-utils-20131015-1.fc19

Comment 4 Miroslav Suchý 2013-10-16 07:56:37 UTC
FAILQA

[root@dri//tmp]# rpm -Uvh ruby193-runtime-1-9.el6.x86_64.rpm ruby193-1-9.el6.x86_64.rpm --nodeps
Preparing...                          ################################# [100%]
Updating / installing...
   1:ruby193-1-9.el6                  ################################# [ 50%]
   2:ruby193-runtime-1-9.el6          ################################# [100%]
[root@dri//tmp]# scl enable ruby193 -- echo ahoj
Unable to open /etc/scl/conf/--!
[root@dri//tmp]# scl enable ruby193  echo ahoj
Unable to open /etc/scl/conf/echo!


[root@dri//tmp]# rpm -q scl-utils
scl-utils-20131015-1.fc19.x86_64

Comment 5 Jan Zeleny 2013-10-16 08:53:49 UTC
My bad, sorry. New update on the way.

Comment 6 Jan Zeleny 2013-10-16 10:32:01 UTC
The new update is here:
https://admin.fedoraproject.org/updates/scl-utils-20131016-1.fc19

Comment 7 Jan Zeleny 2013-10-17 14:22:21 UTC
While testing on real-life collections I found one unrelated issue in scl-utils, a new update has been issued:

https://admin.fedoraproject.org/updates/scl-utils-20131017-1.fc19

Comment 8 Fedora Update System 2013-10-17 20:32:20 UTC
Package scl-utils-20131017-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing scl-utils-20131017-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-19205/scl-utils-20131017-1.fc20
then log in and leave karma (feedback).

Comment 9 Fedora Update System 2013-11-10 07:18:59 UTC
scl-utils-20131017-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2014-01-10 07:42:07 UTC
scl-utils-20131017-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.