Is one-time connection to a repository supported with scm tools for RTC 4.0 ?
Albert Mello (16●1●6●6)
| asked Jul 03 '12, 9:39 a.m.
edited Jul 03 '12, 10:37 a.m. by Geoffrey Clemm (30.1k●3●30●35)
It appears that scmtools for RTC 4.0 behaves a little differently than RTC 3.0.1.
We use the one-time connection to a repository with our scm scripts. It appears that with 4.0 that is no longer supported and login is required. e.g. 1 [E:\B_RX4.0] E:\jazz\3.0.1\scmtools\eclipse\scm.exe status -w -u wplcbuilds\@us.ibm.com --password XXXXX Workspace: (5322) "RX4.0 Buildws" <-> (5323) "RX6.2.2_Integ" Component: (5324) "xpd.ws" <-> (5323) "RX6.2.2_Integ" Baseline: (5328) 3 "RX4.0_20120702-1008 (Build Passed)" Unresolved: a-- /xpd.ws/lwp/build a-- /xpd.ws/lwp/build/build_contents.xml a-- /xpd.ws/lwp/build/build_fitness.xml a-- /xpd.ws/lwp/build/dependency_report.log a-- /xpd.ws/lwp/build/javadoc a-- /xpd.ws/lwp/build/list_app_components.log ... 1 [E:\B_RX4.0] E:\jazz\4.0\scmtools\eclipse\scm.exe status -w -u wplcbuilds\@us.ibm.com --password XXXXX Problem running 'status': Could not determine the URI required to connect to the repository. The UUID of the repository is _rv-ho6tEEeG4xsLjU-2Csw. If you know the repository URI run 'login' command providing the repository URI. If not, please contact your administrator. Note: If I use the login command the scm status -w command does work. |
2 answers
In 4.0 there has been a change in the way repository URI is determined by scmTools. Either the user should login to the repository before executing any command or specify the repository URI in the command line using -r option. Logging in once, before executing any command against a repository, should hold good even across sessions, until the user logs out of the repository.
Thanks, Sridevi Jazz SCM CLI Comments
Albert Mello
commented Jul 05 '12, 12:29 p.m.
That is too bad, I guess backward compatibility is not important for jazz. I dont suppose that you now support the use of a password file in RTC 4.0 with the scm login command? I believe this happens only when you have a sandbox that was loaded using 3.x client and now you use the 4.0 client on the same sandbox. As far as I know the sandbox was not loaded with a 3.x client, it is loaded with the 4.x client each time the build is run. Under the "Jazz Source Control" tab I have "Delete directory before loading" checked. |
Shashikant Padur (4.3k●2●7)
| answered Jul 10 '12, 7:05 a.m.
JAZZ DEVELOPER edited Jul 10 '12, 7:07 a.m.
You are right, it will not work with scm.exe because there was a change in behavior (cannot infer the repo uri from the sandbox unless you login explicitly) in 4.0. However, if you use 'lscm' instead of 'scm' the repository info is in memory and the 'status' subcommand will work fine. 'lscm' is same as 'scm' but launches a daemon process in the background so that subsequent command execution is faster.
As far as using the password file there is a workitem 172302 opened to address this issue. By the way, if you are looking to not type the password or store the password in your script, you could run the 'login' subcommand without -P option and with -c option. This will prompt for the password and create a credentials file with the password encrypted in the users config (by default <user_home>/~.jazz-scm) directory. You can then run all the subcommands without specifying the -P option on every subcommand. |
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.
Comments
Hi,
I am getting the same error 4.0.1 client. I don't have control on how scm command line is used (I am using maven release plug-in). What are my options? Is there a new scmtools that works with 4.0.1 using old command syntax?
Thanks,
Robert
https://maven.apache.org/scm/maven-scm-providers/maven-scm-provider-jazz/index.html
Have you configured maven with the login credentials? It looks like it would be able to use those credentials to login for the first time. If that doesn't work, maven will have to update to adopt the change in 4.0.