ARAT workspace apply import not using server workspace path

Posted by cverbiest on 28-Jan-2016 05:11

Hi,

I'm not sure if I configured something wrong or if ARAT is unaware of the server path.

  • Roundtable TSMS release 11.5.1
  • appSolute RTB Automation Toolkit 11.5.01
  • Jenkins, RTB, ARAT are all running on the same linux server.
  • workspace path is set correctly for the windows clients : /cce/rel16plus
  • workspace server path is set correct for the linux server /usr2/cce/rel16lus

I get error Cannot create directory: /cce/rel16plus in the logfile. it should be using /usr2/cce/rel16plus

log

11:56:34 [EnvInject] - Loading node environment variables.
11:56:34 Building on master in workspace /var/lib/jenkins/jobs/Roundtable 16plus Import/workspace
11:56:34 [ant] $ ant -file build_rtb_import.xml -DBuildJsonProps=/usr2/rtb/current/automation/cce.json -DRtbImportApplyImport=true -DRtbImportWspaceId=rel16plus
11:56:34 Buildfile: /usr2/rtb/rtb115_01/automation/ant/build_rtb_import.xml
11:56:35 
11:56:35 start:
11:56:35      [echo] Looking for ${build.props} result ${BuildPropsAvailable}
11:56:35      [echo] Looking for /usr2/rtb/current/automation/cce.json result true
11:56:35 
11:56:35 JsonProperties:
11:56:35      [echo] Loading /usr2/rtb/current/automation/cce.json properties file from JSON
11:56:35 
11:56:35 readJSonProps:
11:56:35      [echo] Reading JSON properties file: /usr2/rtb/current/automation/cce.json
11:56:36      [echo] JSON properties loaded
11:56:36 
11:56:36 setLogFilename:
11:56:36 
11:56:36 startlogging:
11:56:36      [echo] BuildLogDir=/usr2/rtb/rtbbuild/buildlogs
11:56:36      [echo] Log (info) being written to: /usr2/rtb/rtbbuild/buildlogs/build_rtbimport_development_20160128_115635.log
11:56:36 
11:56:36 default:
11:56:36 
11:56:36 RTBImportPrompts:
11:56:36      [echo] Checking RTB Import parameters
11:56:36 
11:56:36 RTBUserPrompt:
11:56:36 
11:56:36 checkRTBProps:
11:56:36 
11:56:36 checkRTBImportProps:
11:56:36      [echo] Import properties complete: true
11:56:36 
11:56:36 checkTaskList:
11:56:36      [echo] Task list: 
11:56:36 
11:56:36 rtbImportProcessing:
11:56:36      [echo] Building import table...
11:56:36    [PCTRun] Input command line truncated at 1024 bytes.
11:56:36    [PCTRun] Starting Roundtable API for user : sysop...
11:56:36    [PCTRun] Logging into Roundtable API...
11:56:36    [PCTRun] Session ID : 148
11:56:36    [PCTRun] Setting paths in RTB API...
11:56:36    [PCTRun] Mode: Client only (148)...
11:56:36    [PCTRun]   Number of workspaces specified: 1,  Maximum allowed workspaces: 8
11:56:36    [PCTRun] 
11:56:36    [PCTRun]   Processing workspace: rel16plus...
11:56:36    [PCTRun]   /*****************************************/
11:56:36    [PCTRun]    Setting workspace in RTB session to 'rel16plus'...
11:56:36    [PCTRun]    Building workspace import list for workspace : rel16plus
11:56:36    [PCTRun]    Import settings 
11:56:36    [PCTRun]    =================
11:56:36    [PCTRun]    Workspace           : rel16plus
11:56:36    [PCTRun]    Source workspaces   : 
11:56:36    [PCTRun]    Product modules     : 
11:56:36    [PCTRun]    Tasks               : 
11:56:36    [PCTRun]    Releases            : 0
11:56:36    [PCTRun]    Higher versions only: yes
11:56:36    [PCTRun]    Current release only: no
11:56:36    [PCTRun]    Complete tasks only : no
11:56:37    [PCTRun]    Building workspace import table ...
11:57:12    [PCTRun]    Import control table created. Number of records in import table:     47
11:57:12    [PCTRun]    Setting 'include all' on import table...
11:57:12    [PCTRun] ** Brtb_task record not on file. (138)
11:57:12    [PCTRun]    Import analysis report created and written to file : /usr2/rtb/rtbbuild/logs/Imports/rel16plus/rel16plus_ImportReport_20160128_115712.txt...
11:57:12    [PCTRun] Logging out of RTB API...
11:57:12 
11:57:12 readImportReport:
11:57:12      [mail] Sending email: rel16plus - Import results
11:57:12      [mail] Sent email with 1 attachment
11:57:12      [echo] Applying import table(s)...
11:57:13    [PCTRun] Starting Roundtable API for user : sysop...
11:57:13    [PCTRun] Logging into Roundtable API...
11:57:13    [PCTRun] Session ID : 149
11:57:13    [PCTRun] Setting paths in RTB API...
11:57:13    [PCTRun] Mode: Client only (149)...
11:57:13    [PCTRun]    Setting workspace in RTB session to 'rel16plus'...
11:57:13    [PCTRun] 
11:57:13    [PCTRun]    Processing workspace: rel16plus...
11:57:13    [PCTRun]   /*****************************************/
11:57:13    [PCTRun]    Checking import table for workspace: rel16plus...
11:57:13    [PCTRun]    Applying workspace import table to workspace : rel16plus
11:57:19    [PCTRun] ***
11:57:19    [PCTRun]    RTB import table processing error:
11:57:19    [PCTRun] 11:57:13 Initialize Import Failures for rel16plus log...
11:57:19    [PCTRun] 
11:57:19    [PCTRun] Cannot import PCODE Object 'SessionInfo.cls'.
11:57:19    [PCTRun] Cannot assign PCODE Object 'SessionInfo.cls' version 010015 from Product Module 'cce.ccetools.sess' to Workspace 'rel16plus'.
11:57:19    [PCTRun] 
11:57:19    [PCTRun] Cannot create directory: /cce/rel16plus

 log truncated

All Replies

Posted by cverbiest on 28-Jan-2016 05:17

workaround : I created a symbolic link /cce/rel16plus that point to /usr2/cce/rel16plus

Posted by Jeff Ledbetter on 28-Jan-2016 06:54

It may not be using the server path.  For the core RTB product, unless it is running in an AppServer (SESSION:REMOTE), it will not use the server-path override.

Posted by cverbiest on 28-Jan-2016 07:12

Hi Jeff,

thanks for the info.

I've used the symbolic link trick in the past, I thought that it was no longer needed with the introduction of server path , but the host based version still needs it .

Posted by asthomas on 28-Jan-2016 07:18

Hi Carl,

Could you not run against an AppServer even if on Linux? The you should get the correct behavior.

Posted by Jeff Ledbetter on 28-Jan-2016 07:19

I'm glad the symbolic-link work-around is available. I suppose we need to come up with a method to optionally force the usage of server path.

Posted by asthomas on 28-Jan-2016 07:23

Maybe as a session property that can be set for the client or API to use.

Posted by cverbiest on 28-Jan-2016 07:52

@Thomas,

I probably could run against appserver but it seems overkill and extra complexity to me

@Jeff

I use symbolic links quite frequently and they exist (and work) on windows as well , see mklink .

In our applcation we have an OSPATH table that has pathcode, opsys and hostname as unique key.

This situtation would be solved by definining a path rtbreporoot

In paths and filenames we can refer to such a  pathcode  "[path(rtbreporoot)]/rel16plus,[path(rtbreporoot)]/rel16plus/src"

OSPATH content

pathcode = "rtbreporoot", opsys = "unix", hostname = "ccedev01", path = "/usr2/cce"

pathcode = "rtbreporoot", opsys = "win32", hostname = "", path = "//cce-dev01/usr2/cce"

pathcode = "rtbreporoot", opsys = "win32", hostname = "cce-ts01", path = "w:/cce"

when evaluating a pathcode we first look for an OSPATH record with equal opsys and hostname, if not found we look for equal opsys and blank hostname

This thread is closed