Staging to production is the process of moving artifacts between multiple environments. With Portal 8 we have documented the initial staging to production using the Portal Application Archive pattern:
Note, however, that like in the previous releases it is still possible and supported to not use the PAA approach. I have outlined below what the steps could be used to perform the initial staging to a system. Note that your system might be using additional features from the Catalog or other extensions - you would need to add those in the below depicted typical steps.
For naming purposes I am calling the system that you are staging from the source system and the system you are staging to the target system.
1. Install & Upgrade the target Portal to 8001 & CF of the source system as well as upgrade the target to the WAS level of the source system. This step could include clustering if needed (you can also still cluster later). Basically, the target and source should have exactly the same Portal and WAS level and preferably be at the latest of both.
Note: We recommend using the latest CF. If not installing 8001 directly do not forget to run the enable-8001-features task.
2. Configure security on the target Portal (this might be a different user repository than the source server)
Note: There is a shortcut to configuring security: If both systems are using the same user repository and the same admin you can copy the <Profilename>/config/cells/<cellname>/wim folder from the source to the target system and can save yourself running the enable-security-.. tasks.
3. DBTransfer to DB2, Oracle or SQLServer on the target Portal
4. If needed install the WCM Multilingual extensions (ignore steps for Virtual Portals) on the target Portal
Note: With Portal 8001 we provide MLS automatically installed and one can simply run the MLS config tasks.
5. If needed install Content Template Catalog (CTC) (ignore steps for Virtual Portals) on the target Portal
Note: You need to install the same version you have on your source system! Steps are downloading CTC from the Catalog
6. XMLAccess export with ExportRelease.xml on the source Portal "base" virtual Portal - the result file could for instance be called baseExport.xml.
Sample command: c:\IBM\WebSphere\wp_profile\PortalServer\bin\xmlaccess.bat -user wpsadmin -password mypassword -in c:\IBM\WebSphere\PortalServer\doc\xml-samples\ExportRelease.xml -out c:\temp\baseExport.xml -url http://sourcesystem:10039/wps/config
7. XMLAccess export with ExportUniqueRelease.xml from source Portal Virtual Portal 1 - calling the result vp1Export.xml
Sample command: c:\IBM\WebSphere\wp_profile\PortalServer\bin\xmlaccess.bat -user wpsadmin -password mypassword -in c:\IBM\WebSphere\PortalServer\doc\xml-samples\ExportUniqueRelease.xml -out c:\temp\vp1Export.xml -url http://sourcesystem:10039/wps/config/vpcontextroot
8. Repeat XMLAccess export with ExportUniqueRelease.xml for possible other virtual Portals on the source Portal
9. Run empty-portal on target Portal
Sample command: c:\IBM\WebSphere\wp_profile\ConfigEngine\ConfigEngine.bat empty-portal
10. Run Cleanup Task on the target Portal
Sample command: c:\IBM\WebSphere\wp_profile\PortalServer\bin\xmlaccess.bat -user wpsadmin -password mypassword -in c:\IBM\WebSphere\PortalServer\doc\xml-samples\Task.xml -out c:\temp\task_result.xml -url http://targetsystem:10039/wps/config
11. Copy Ear files (all custom ear files that are not portlets deployed in Portal – including pre-deployed portlets, theme) from source Portal to Target Portal and deploy them.
Note: I assumed here that you had your theme in an ear file. If you have your theme in webdav store use the config task to export and import the custom theme.
12. Copy <Profile>\PortalServer\deployed\archive directory from source to target system.
13. Create other required configuration items in WebSphere Application Server - e.g. shared libraries, URLs, Name Space Bindings, Theme settings in WP Dynamic ContentSpot Mappings, …
14. Copy the files that are required in the file file system like jar files, config files (e.g. log4j xml file) to the target system.
15. Set the properties required for syndication in WCM ConfigService (e.g. enable member fixer to run as part of syndication).
16. XMLAccess import baseExport.xml into the base virtual Portal of the target system.
Sample command: c:\IBM\WebSphere\wp_profile\PortalServer\bin\xmlaccess.bat -user wpsadmin -password mypassword -in c:\temp\baseExport.xml -out c:\temp\baseExport_result.xml -url http://targetsystem:10039/wps/config
17. Run the Config task update-wcm on the target Portal.
Sample command: c:\IBM\WebSphere\wp_profile\ConfigEngine\ConfigEngine.bat update-wcm
18. Export the PZN rules from the source system and import them to the target server - this can e.g. be done using the Personalization Administration Portlet Export and Import functions.
19. Verify the base virtual Portal - everything should work.
20. Create your virtual Portals with all documented parameters on the target Portal.
Note: You can retrieve the required parameters using the list-all-virtual-portals configuration task on the source system.
Sample command: c:\IBM\WebSphere\wp_profile\ConfigEngine\ConfigEngine.bat create-virtual-portal -DWasPassword=password -DPortalAdminPwd=password -DVirtualPortalTitle=VirtualPortalTitle -DVirtualPortalContext=VirtualPortalContext -DVirtualPortalID=VirtualPortalShortID -DVirtualPortalObjectId=VirtualPortalOID -DVirtualPortalRealm=VirtualPortalRealm -DVirtualPortalHostName=VirtualPortalHostName
21. Import the xml file for each virtual Portal on the source into same virtual portal on the target using XMLAccess. Insure that the VP context root in the XMLAccess command matches the VP name in the "/wps/config/" XMLAccess statement.
Sample command: c:\IBM\WebSphere\wp_profile\PortalServer\bin\xmlaccess.bat -user wpsadmin -password mypassword -in c:\temp\vp1Export.xml -out c:\temp\vp1Export_result.xml -url http://targetsystem:10039/wps/config/vpcontextroot
22. Repeat 20. and 21. until all of your virtual Portals are created and filled via XMLAccess on the target Portal.
23. Restart Portal – ensure it is running – address potentially missed artifacts. Watch for error messages in SystemOut.log during startup.
24. Setup syndication for the appropriate libraries between the source and the target system (or maybe opposite if you just installed the Authoring system ;).
Note: You need to syndicate the Multi-Lingual configuration library.
Note: You will need to setup syndication as well between your source system virtual Portals to the target system virtual Portals (unless you have managed pages disabled - then the libraries are shared across virtual Portals).
25. After syndication has completed it's initial run, setup the library permissions (those permissions are not syndicated).
26. Regenerate and propagate the web server plugin config if you have a web server.