Hi Folks,
Is there a way from which I can retrieve the filelist path created dynamically by PLC during deployment but before the deployment task/CGI task for deployment.
TeamSite 7.4.1
LiveSite 7.4.1
Help will be appreciated
Manu G
Well if you put a task right in front of it, the task will have the "filelist" as files attached to the job. The only thing you'd be missing is the cache-clearing file.
So what is it you're trying to do?
There is dependency processor which pulls the dependent files in PLC workflow whenever any edited files are deployed, which results in pulling other .page files in deployment which are not supposed to be deployed as they are still under edit mode. Hence we tried modifying the PLC workflow adding a CGI task to pull the filelist from task object and remove the other .page files which are not required to be deployed. But right now, the deployment task is deploying files as per original filelist and not the filelist we have updated. We are unable to track how/why it is doing so and how it can be overridden with our filelist.
When I view the deployment logs I see filelist getting created at 2 locations
Location 1 - /usr/Interwoven/TeamSite/tmp/LiveSite/workflow/<dynamic filpath> - shows original file list when workflow was started
Location 2 - /usr/Interwoven/LiveSiteCSAuth/authoring/tmp/<dynamic filepath> - shows refined filelist when modified the file list and removed the unnecessary files.
OD is picking files for deployment from location than from location 2.
Any pointers will be helpful
Manu
Your task which is attempting to remove unwanted files from the file list must not be doing something correctly if they are still getting deployed. I did something like what you are talking about about 2 to 3 years ago and had no problems filtering out the file list - so, unless something significant changed in the PLC workflow processing, the problem is with your filtering task that [should] come after the Attach Dependencies and before the Deployment tasks.
If you cannot figure it out yourself, you'll have to post the code for your filtering task in order for anyone here to help you debug it (though that's asking a lot for free)
Manumagician wrote: OD is picking files for deployment from location than from location 2. Any pointers will be helpful Manu
Another pointer would be, once you get the filelist of unwanted files, why don't you remove these files from the workflow in your custom task? That way, your workflow will have only those files which need to be deployed and PLC will create filelist based on the attached files.
Thanks,
I'd actually approach it the other way around. Remove the dependencies task and substitute your own -- that way you attach exactly what you wanted to attach.
Important note, either way, this piece has to be there before the Attach Deployment Target task, which is the thing that "precomputes" a file list and stores it in a job variable for the deployment to use later.
Hi,
I have attached my task for removing the files just before the deployment, attached is the code.
Our team also decompiled the livesite.jar and saw the DeploymentTargetManager is adding the filelist path with "workflow" folder for the filelist location "Location 1 - /usr/Interwoven/TeamSite/tmp/LiveSite/workflow/<dynamic filpath> "
public static File getDeploymentScratchDir(CSClient client, String executionId) { File f = new File(WorkingDirectory.getInstance().getWorkDir(), "workflow" + File.separator + executionId); if (!f.exists()) { if (!f.mkdirs()) { throw new RuntimeException("failed to create " + f.getAbsolutePath()); } } return f; }
I want to understand why 2 locations are getting created as mentioned in my previous comment and if at all 2 locations are holding the filelist file then why only 1 location is showing updated files and other still hold the original filelist reference.
In WFM also the TaskBeanId is workflow.task.DeploymentTask , we decompiled that and found the task.getFiles() function help in pulling the task files. So ideally it should give filtered files as I have removed unwanted files from job in previous task it using attached code.
This is now critical for us to solve the issue. Any help extended will be very appreciated.
Either something significant changed with the PLC workflow between 7.2.1 (where I dealt with filtering files from the job) and 7.4.1 (which you are using) - or there's something wrong with your code.
Looking at the code you posted - it is a bit difficult to determine if it works as designed, since we don't have the debugging output and screenshots to verify it:
In order to verify your code you would need to see (show us):
Until you can truly verify the above - I would not be so quick to point the finger at the vendor's code.
The LS deployment process has always involved a temporary directory tree to deploy files from (for better or worse) - so the presence of that directory is not a red-flag; but if the contents of that directory significantly differs from the list of files you see coming back from $task->GetFiles() before you transition from your filtering task, you will have a better argument for pointing your finger there.
This CGI task code I attached is removing the files from Job. I did the validation of it by seeing reduced file list in next task withiin workflow tab window.Also I did try the task->refresh(); before the job->refresh(); but no effect on filelist created under workflow folder $IWHOME/tmp/LiveSite/workflow/
Hence I would like to know how can I refresh the ref of the deploymentTask, so it picks right files when creating filelist in IWHOME/tmp/LiveSite/workflow/tmp folder.
Then most likely this was done after the filelist was generated.
Your task must be before the Attach Deployment Target task as was mentioned earlier in this thread.