Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
Standalone deployment deletion problem of EAs
System
I am using a standalone deployment configuration to deploy extended attributes from a directory in the staging area. The deployment works fine except after a file is deleted from the staging area. After this deletion from the staging area, I run the iwdd.ipl cfg=..\conf\emdas\emdas-ea-dbschema.cfg deployment=standalone command but this deletion is not reflected to the deployment database table. Neither the row is deleted nor the iw_state field is marked "Not Present". What is missing?
Burcin
Note: Attached is the DD config file.
Find more posts tagged with
Comments
Migrateduser
to identify deletions and deletions of corresponding rows from the table(s), you must either execute a differential deployment between two areas or use a filelist deployment. If the filelist contains the path of the deleted file, DD should delete the corresponding rows.
Migrateduser
Below is the <deployment> section of my datadeploy config. file using filelist deployment.
<deployment name="filelist">
<source>
<!-- Pull data tuples from TeamSite Extended Attributes -->
<teamsite-extended-attributes options="full,wide" area="/default/main/EMDAS/STAGING">
<path filelist="c:\files.lst" visit-directory="deep"/>
</teamsite-extended-attributes>
</source>
<destinations>
<database use="iwdas" update-type="standalone" state-field="state">
<dbschema>
<group name="rapor_master" table="emdas_rapor" root-group="yes">
<attrmap>
<column name="Path" data-type="VARCHAR(255)" value-from-field="path" allows-null="no"/>
<column name="iw_state" data-type="VARCHAR(255)" value-from-field="state" allows-null="no"/>
<column name="title" data-type="VARCHAR(128)" value-from-field="TeamSite/Metadata/Rapor Baþlýðý" allows-null="no" is-url="no"/>
<column name="publish_date" data-type="DATE" value-from-field="TeamSite/Metadata/Yayýnlanma Tarihi" data-format="dd-MM-yyyy" allows-null="no" is-url="no"/>
<column name="keywords" data-type="VARCHAR(512)" value-from-field="TeamSite/Metadata/Anahtar Kelimeler" allows-null="no" is-url="no"/>
<column name="report_type" data-type="VARCHAR(32)" value-from-field="TeamSite/Metadata/Rapor Tipi" allows-null="no" is-url="no"/>
<column name="report_period" data-type="VARCHAR(16)" value-from-field="TeamSite/Metadata/Dönem" allows-null="no" is-url="no"/>
</attrmap>
<keys>
<primary-key>
<key-column name="Path"/>
</primary-key>
</keys>
</group>
</dbschema>
</database>
</destinations>
</deployment>
files.lst file contains a single line with the path of the files with extended attributes that are going to be deployed:
htdocs/rapor
The effect however is the same; no deletions are reflected to the database. What I actually want to do is to keep the database in synch with the staging area contents (that is EAs). The order of events are: submit, deploy files to production from staging (OpenDeploy), and deploy data to production (DataDeploy). I have a single workarea where authors work and only approved content gets submitted to the staging area. So I don't bother with content distribution from the workarea. Only content distribution from the staging area is crucial and I have to keep the database in synch with the staging area content. However I have yet found no datadepoly configuration scenario to do this...
Migrateduser
when you first deployed the file, did you use a filelist? If you didn't, there is no possibility of DD deleting the rows the second time, because the value stored in the 'path' column should match with what's specified in the filelist.
Migrateduser
Yes, I did but the file list contains only the "path" for the directory of the files that I want to deploy and not the exact path and file name combination. As far as I understand, if I do not include the exact path and filename of the file that is to be deleted in the filelist; the deletion is not possible...
Here is what I did: My iwdd.ipl script is executed from an external task in a workflow. I modified the perl script that calls iwdd.ipl and created the filelist programmatically (from the list of workflow files) before calling iwdd.ipl. This works but I doubt if this is the correct way of doing this...