Development Deployment Steps
Dev Part 1: Database changes to be done in advance of go-live.
- DBA: Copy PTL1 to PTL7 (production to test)
- Change rdbm.properties to point to PTL7 database
- shutdown tomcat
- Test databse: ant dbtest to confirm database parameters are set correctly
- import channel definitions for web proxy portlet
ant crn-import -Ddir=../data/base/channel-type/ -Dpattern=.*Web_Proxy_Portlet\.channel-typeShould result in the following channel types:
[java] Import Channel Type: Simple_Web_Proxy_Portlet.channel-type [java] Import Channel Type: Web_Proxy_Portlet.channel-type
- Import new channels:
ant crn-import -Ddir=../data/development/channel -Dpattern=^NoGui.*\.channelShould result in the following channels:
[java] Import Channel: NoGuiFacultyNews.channel [java] Import Channel: NoGuiFacultyToolbox.channel [java] Import Channel: NoGuiGuestNews.channel [java] Import Channel: NoGuiITSSystemsStatusRSS.channel [java] Import Channel: NoGuiLoginBox.channel [java] Import Channel: NoGuiOfficialUniversityMessagesAltView.channel [java] Import Channel: NoGuiStaffNews.channel [java] Import Channel: NoGuiStaffToolbox.channel [java] Import Channel: NoGuiYaleLeftNavXml.channel [java] Import Channel: NoGuiYaleMap.channel [java] Import Channel: NoGuiYaleSearchAltView.channel
- Import new tab users
ant crn-import -Ddir=../data/development/user -Dpattern=.*\.userShould result in 3 new users:
[java] Import User: guest-home-tab.user [java] Import User: univ-faculty-tab.user [java] Import User: univ-staff-tab.user
- Import new fragment layouts
ant crn-import -Ddir=../data/development/fragment-layout -Dpattern=.*\.fragment-layoutShould result in the following new fragments
[java] Import DLM Fragment Layout: guest-home-tab.fragment-layout [java] Import DLM Fragment Layout: univ-faculty-tab.fragment-layout [java] Import DLM Fragment Layout: univ-staff-tab.fragment-layout
- Run sql script to reset user layouts where dlm:positionSet has been used to position fragment tabs
From PL/SQLconnect portal_owner@PTL7/***** get src\main\config\fix_layout_tabs.sql

Verify that yaleinfo on dev still looks correct
Dev Part 2: Steps equivalent go-live
- Stop Tomcat
- Run sql script to rename fragment tabs in old staff and faculty home
From PL/SQLconnect portal_owner@PTL7/***** get src\main\config\rename_staff_faculty_fragment_tabs.sql /
- Deploy portal YaleInfo-[tag or SNAPSHOT] For example:
mvn -U -Dmaven.tomcat.home=/usr/local/tomcat_instances/portal_dev -Dversion=2.4.0-SNAPSHOT -Denvironment=dev clean install uportal:deploy-ear
- Start Tomcat
- Import channel definitions that have changed: YaleInfoLinks - through the Gui Import-Export Channel
/data/development/channel/YaleInfo-Links.channel
Result should contain the following modification:
XSLT File: https://development.portal.yale.edu/ResourceServingWebapp/rs/yale/YaleInfoLinks/xsl/searchableLinks.xsl - Import channel definitions that have changed: Yale-Events - through the Gui Import-Export Channel
/data/base/channel/Yale-Events.channel
Result should contain the following modifications:
Portlet Preferences: days: 2; gracePeriodInMinutes: 30
Test Deployment Steps
Test Part 1: Database changes to be done in advance of go-live. (Assumes
- Restore Portal application to R1 release IR-2.3.0-Final to reflect application as it is in production.
- DBA: Copy PTL1 to PTL4 (production to test)
- Change rdbm.properties to point to PTL4 database
- Test databse: ant dbtest to confirm database parameters are set correctly
- import channel definitions for web proxy portlet
ant crn-import -Ddir=../data/base/channel-type/ -Dpattern=.*Web_Proxy_Portlet\.channel-typeShould result in the following channel types:
[java] Import Channel Type: Simple_Web_Proxy_Portlet.channel-type [java] Import Channel Type: Web_Proxy_Portlet.channel-type
- Import channels that differ between TEST and PROD from tag IR-2.3.0
ant crn-import -Ddir=../data/test/channel -Dpattern=^(?!NoGui).*\.channelShould result in the following channels:
[java] Import Channel: BlogReader.channel [java] Import Channel: GuestReg.channel [java] Import Channel: ITSSystemsStatus.channel [java] Import Channel: library-books-out.channel [java] Import Channel: LibraryStaffLinks.channel [java] Import Channel: MyCourseReadings.channel [java] Import Channel: myworklist.channel [java] Import Channel: netreg.channel [java] Import Channel: news-reader.channel [java] Import Channel: PantheonAccount.channel [java] Import Channel: recent-email.channel [java] Import Channel: SakaiSiteSummary.channel [java] Import Channel: StudentNotifications.channel [java] Import Channel: yale-map-search.channel [java] Import Channel: YaleDiningMenu.channel [java] Import Channel: YaleInfo-Links.channel
- Import new channels:
ant crn-import -Ddir=../data/test/channel -Dpattern=^NoGui.*\.channelShould result in the following channels:
[java] Import Channel: NoGuiFacultyNews.channel [java] Import Channel: NoGuiFacultyToolbox.channel [java] Import Channel: NoGuiGuestNews.channel [java] Import Channel: NoGuiITSSystemsStatusRSS.channel [java] Import Channel: NoGuiLoginBox.channel [java] Import Channel: NoGuiOfficialUniversityMessagesAltView.channel [java] Import Channel: NoGuiStaffNews.channel [java] Import Channel: NoGuiStaffToolbox.channel [java] Import Channel: NoGuiYaleLeftNavXml.channel [java] Import Channel: NoGuiYaleMap.channel [java] Import Channel: NoGuiYaleSearchAltView.channel
- Import new tab users
ant crn-import -Ddir=../data/test/user -Dpattern=.*\.userShould result in 3 new users:
[java] Import User: guest-home-tab.user [java] Import User: univ-faculty-tab.user [java] Import User: univ-staff-tab.user
- Import new fragment layouts
ant crn-import -Ddir=../data/test/fragment-layout -Dpattern=.*\.fragment-layoutShould result in the following new fragments
[java] Import DLM Fragment Layout: guest-home-tab.fragment-layout [java] Import DLM Fragment Layout: univ-faculty-tab.fragment-layout [java] Import DLM Fragment Layout: univ-staff-tab.fragment-layout
- Run sql script to reset user layouts where dlm:positionSet has been used to position fragment tabsFrom PL/SQL
connect portal_owner@PTL4/*****get src\main\config\fix_layout_tabs.sql
| Verify that yaleinfo on test still looks correct |
Test Part 2: Steps equivalent go-live
- Stop Tomcat
- Run sql script to rename fragment tabs in old staff and faculty home
From PL/SQLconnect portal_owner@PTL4/***** get src\main\config\rename_staff_faculty_fragment_tabs.sql /
- Deploy portal YaleInfo-[tag] - Unix Systems
- Import channels that differ between TEST and PROD from development branch - repoints channels to resource server
ant crn-import -Ddir=../data/test/channel -Dpattern=^(?!NoGui).*\.channelShould result in the following channels:
[java] Import Channel: BlogReader.channel [java] Import Channel: GuestReg.channel [java] Import Channel: ITSSystemsStatus.channel [java] Import Channel: library-books-out.channel [java] Import Channel: LibraryStaffLinks.channel [java] Import Channel: MyCourseReadings.channel [java] Import Channel: myworklist.channel [java] Import Channel: netreg.channel [java] Import Channel: news-reader.channel [java] Import Channel: PantheonAccount.channel [java] Import Channel: recent-email.channel [java] Import Channel: SakaiSiteSummary.channel [java] Import Channel: StudentNotifications.channel [java] Import Channel: yale-map-search.channel [java] Import Channel: YaleDiningMenu.channel [java] Import Channel: YaleInfo-Links.channel
- Start Tomcat
- Import channel definitions that have changed: Yale-Events - through the Gui Import-Export Channel
/data/base/channel/Yale-Events.channel
Result should contain the following modifications:
Portlet Preferences: days: 2; gracePeriodInMinutes: 30
Production Deployment Steps
Production Part 1: Database changes to be done in advance of go-live.
- Systems: stop both Tomcat instances.
- DBA: backup PTL1 database.
- DBA: change PTL Portal_Owner password and communicate to Portal Team
- Change rdbm.properties to point to PTL1 database
- Test database: ant dbtest to confirm database parameters are set correctly
- Import new channels for Home Pages (from base which is same a production):
ant crn-import -Ddir=../data/base/channel -Dpattern=^NoGui.*\.channelShould result in the following channels:
[java] Import Channel: NoGuiFacultyNews.channel [java] Import Channel: NoGuiFacultyToolbox.channel [java] Import Channel: NoGuiGuestNews.channel [java] Import Channel: NoGuiITSSystemsStatusRSS.channel [java] Import Channel: NoGuiLoginBox.channel [java] Import Channel: NoGuiOfficialUniversityMessagesAltView.channel [java] Import Channel: NoGuiStaffNews.channel [java] Import Channel: NoGuiStaffToolbox.channel [java] Import Channel: NoGuiYaleLeftNavXml.channel [java] Import Channel: NoGuiYaleMap.channel [java] Import Channel: NoGuiYaleSearchAltView.channel
- Import new tab users
ant crn-import -Ddir=../data/production/user -Dpattern=.*\.userShould result in 3 new users:
[java] Import User: guest-home-tab.user [java] Import User: univ-faculty-tab.user [java] Import User: univ-staff-tab.user
- Import new fragment layouts
ant crn-import -Ddir=../data/production/fragment-layout -Dpattern=.*\.fragment-layoutShould result in the following new fragments
[java] Import DLM Fragment Layout: guest-home-tab.fragment-layout [java] Import DLM Fragment Layout: univ-faculty-tab.fragment-layout [java] Import DLM Fragment Layout: univ-staff-tab.fragment-layout
- Import YaleDiningMenu using crn import to fix broken channel
ant crn-import -Ddir=../data/base/channel -Dpattern=YaleDiningMenu.channelResult should change the channel to an RSS feed from the new Dining Hall site.
- Systems: bring up one Tomcat.

Portal Team: Verify that yaleinfo on production still looks correct - DBA: Restore Portal_Owner password
- Systems: bring up second Tomcat
Production Part 1a Contingency: Restore Database if Step 11 fails.
- Systems: Stop tomcat(s)
- DBA: Restore database
- Portal Team: Evaluate problem. Repeat Steps 1-13 above with corrective action prior to go-live.
Production Part 2: Steps for Go-Live - Monday 9/28.
- Systems: stop Tomcat on all app servers. F5 should cause portal url to display static page.
- DBA: Backup PTL1
- DBA: Run sql script to rename fragment tabs in old staff and faculty home
From SqlPlus (staged as RT)connect portal_owner@PTL1/***** get src\main\config\rename_staff_faculty_fragment_tabs.sql /
- Run sql script to reset user layouts where dlm:positionSet has been used to position fragment tabs
From PL/SQL (Staged as RT)connect portal_owner@PTL1/***** get src\main\config\fix_layout_tabs.sql
- Systems: Deploy portal YaleInfo-IR-2.4.0-Final
- Systems: start one Tomcat
- Import channels that have been changed to access the ResourceServingWebapp through the Import/Export Portlet:
/data/production/channel/BlogReader.channel /data/production/channel/ITSSystemStatus.channel /data/production/channel/LibraryStaffLinks.channel /data/production/channel/news-reader.channel /data/production/channel/recent-email.channel /data/production/channel/YaleInfo-Links.channel
- Import Yale-Events - through the Gui Import-Export Channel
/data/base/channel/Yale-Events.channel
Result should contain the following modifications:
Portlet Preferences: days: 2; gracePeriodInMinutes: 30
- Import Staff/Faculty/Student Links channels to repoint to new xml and xsl locations
/data/base/channel/FacultyLinks.channel /data/base/channel/StaffApplicationLinks.channel /data/base/channel/StudentApplicationRSS.channel
- Remove Coming Soon portlet from Guest, Staff, and Faculty layouts through the gui.
- Re-import ComingSoon portlet to remove it from any categories.
/data/base/channel/ComingSoon.channel
- Systems: restart Tomcats.

Portal Team: Verify that yaleinfo on production still looks correct
Production Part 2a Contingency: Restore Database and Restore 2.3.2-Final if Step 11 fails.
- Systems: Stop tomcat(s)DBA: Restore database
- Systems: restore Portal version 2.3.2-Final
- Portal Team: Evaluate problem. Repeat Steps 1-11 above with corrective action prior to go-live.