Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| alfresco:sitestore [2021/02/28 10:03] – created jmerari | alfresco:sitestore [2021/04/17 16:33] (current) – [Preparation] jmerari | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Alfresco :: Separate Store for Each Site ====== | ====== Alfresco :: Separate Store for Each Site ====== | ||
| - | |||
| https:// | https:// | ||
| + | |||
| + | ===== Preparation ===== | ||
| + | - Shutdown Alfresco service | ||
| + | - Create database backup and alf_data folder backup | ||
| + | - Create backup of alfresco.global.properties | ||
| + | - Create backup of all egov servlet context configuration | ||
| + | ===== Run 1 : Install required extensions ===== | ||
| + | |||
| + | 1 Install Acosix Alfresco Utility extension to repo side | ||
| + | < | ||
| + | java -jar alfresco-mmt.jar install de.acosix.alfresco.utility.core.repo-1.2.5.amp < | ||
| + | </ | ||
| + | 2. Install Acosix Alfresco Utility extension to share side | ||
| + | < | ||
| + | java -jar alfresco-mmt.jar install de.acosix.alfresco.utility.core.share-1.2.5.amp < | ||
| + | </ | ||
| + | 3. Install Acosix Simple Store extension to repo side | ||
| + | < | ||
| + | java -jar alfresco-mmt.jar install de.acosix.alfresco.simplecontentstores.repo-1.1.1-SNAPSHOT.amp < | ||
| + | </ | ||
| + | |||
| + | ===== Run 2 : Modify alfresco.global.properties ===== | ||
| + | - Shutdown Alfresco | ||
| + | - Append the following configuration items inside the < | ||
| < | < | ||
| Line 8: | Line 31: | ||
| simpleContentStores.enabled=true | simpleContentStores.enabled=true | ||
| + | # declare site stores | ||
| simpleContentStores.rootStore=siteMappedStore | simpleContentStores.rootStore=siteMappedStore | ||
| - | simpleContentStores.customStores=siteMappedStore, | + | simpleContentStores.customStores=siteMappedStore, |
| simpleContentStores.customStore.siteMappedStore.type=siteRoutingStore | simpleContentStores.customStore.siteMappedStore.type=siteRoutingStore | ||
| simpleContentStores.customStore.siteMappedStore.value.moveStoresOnNodeMoveOrCopy=true | simpleContentStores.customStore.siteMappedStore.value.moveStoresOnNodeMoveOrCopy=true | ||
| simpleContentStores.customStore.siteMappedStore.ref.fallbackStore=defaultFileStore | simpleContentStores.customStore.siteMappedStore.ref.fallbackStore=defaultFileStore | ||
| + | |||
| + | # map site ID to site store | ||
| + | simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site01=site01FileStore | ||
| + | simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site02=site02FileStore | ||
| simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site03=site03FileStore | simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site03=site03FileStore | ||
| simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site04=site04FileStore | simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site04=site04FileStore | ||
| - | simpleContentStores.customStore.siteMappedStore.map.storeBySite.ref.site05=site05FileStore | ||
| # default store | # default store | ||
| Line 23: | Line 50: | ||
| simpleContentStores.customStore.defaultFileStore.value.protocol=store | simpleContentStores.customStore.defaultFileStore.value.protocol=store | ||
| - | # site 03 | + | # site store 01 |
| + | simpleContentStores.customStore.site01FileStore.type=standardFileStore | ||
| + | simpleContentStores.customStore.site01FileStore.value.rootAbsolutePath=${dir.root}/ | ||
| + | simpleContentStores.customStore.site01FileStore.value.protocol=store01 | ||
| + | |||
| + | # site store 02 | ||
| + | simpleContentStores.customStore.site02FileStore.type=standardFileStore | ||
| + | simpleContentStores.customStore.site02FileStore.value.rootAbsolutePath=${dir.root}/ | ||
| + | simpleContentStores.customStore.site02FileStore.value.protocol=store02 | ||
| + | |||
| + | # site store 03 | ||
| simpleContentStores.customStore.site03FileStore.type=standardFileStore | simpleContentStores.customStore.site03FileStore.type=standardFileStore | ||
| simpleContentStores.customStore.site03FileStore.value.rootAbsolutePath=${dir.root}/ | simpleContentStores.customStore.site03FileStore.value.rootAbsolutePath=${dir.root}/ | ||
| simpleContentStores.customStore.site03FileStore.value.protocol=store03 | simpleContentStores.customStore.site03FileStore.value.protocol=store03 | ||
| - | # site 04 | + | # site store 04 |
| simpleContentStores.customStore.site04FileStore.type=standardFileStore | simpleContentStores.customStore.site04FileStore.type=standardFileStore | ||
| simpleContentStores.customStore.site04FileStore.value.rootAbsolutePath=${dir.root}/ | simpleContentStores.customStore.site04FileStore.value.rootAbsolutePath=${dir.root}/ | ||
| simpleContentStores.customStore.site04FileStore.value.protocol=store04 | simpleContentStores.customStore.site04FileStore.value.protocol=store04 | ||
| - | |||
| - | # site 05 | ||
| - | simpleContentStores.customStore.site05FileStore.type=standardFileStore | ||
| - | simpleContentStores.customStore.site05FileStore.value.rootAbsolutePath=${dir.root}/ | ||
| - | simpleContentStores.customStore.site05FileStore.value.protocol=store05 | ||
| # | # | ||
| </ | </ | ||
| + | |||
| + | ===== Run 3 : Create Separate Sites ===== | ||
| + | - Startup Alfresco | ||
| + | - Login as admin | ||
| + | - Create four private sites | ||
| + | - Site ID: site01, Name: PIDSG e-Gov Live | ||
| + | - Site ID: site02, Name: PIDSG e-Gov Dev | ||
| + | - Site ID: site03, Name: PIDSG-BT e-Gov Live | ||
| + | - Site ID: site04, Name: PIDSG-BT e-Gov Dev | ||
| + | - Create four user accounts for each site | ||
| + | - user: site01_admin, | ||
| + | - user: site02_admin, | ||
| + | - user: site03_admin, | ||
| + | - user: site04_admin, | ||
| + | - Make sure that each site account can access its own site, and can't access other sites | ||
| + | |||
| + | ===== Run 4 : Verify Site folder routing ===== | ||
| + | - Login to each site with corresponding Site Manager account | ||
| + | - Upload some files | ||
| + | - Verify those files are located in the designated store in the filesystem | ||
| + | |||
| + | ===== Run 5 : Move files from current Site to the corresponding Sites ===== | ||
| + | - In Alfresco, open My Files > Sites | ||
| + | - Move all folders from site legal-dev > documentLibrary, | ||
| + | - Move all folders from site egov-sg > documentLibrary, | ||
| + | - Move the file list of calibration attachment from site03 to site04 (134 files) | ||
| + | - Make sure each sites has folder named UPLOADPOOL, take note the object ID | ||
| + | |||
| + | ===== Run 6 : Modify e-Gov Configuration ===== | ||
| + | - Open the servlet context config of each app | ||
| + | - Create a backup copy | ||
| + | - Change the user access account, password and pool folder ID for each e-Gov sites. | ||
| + | |||