Tuesday, August 3, 2010

Skills

Strong Java development skills, OO, Performance
JSP, Html, CSS, Javascript (jQuery)

Knowledge of VCM including SDK for customization
Knowledge of VCM APIs
VCM Administration
Vingette Transfer tool
Portal Administration
Portal development of Pages, portlets, Styles, Grids, Themes
DPM - Presentation templates, query components

Struts MVC
Spring 3 MVC (annotation based), Spring Security

Database
Oracle (SQL, Enterprise manager)
Sql Server (DTS)

Linux

Apache Http (web server)
- Configuration

Tomcat
- Configuration
- Performance


Mgmt stage suspended and won't resume

You can try clearing the job queue as a last resort and do not try this in production.

–––––––––––––––––––––––
| PROBLEM DESCRIPTION |
–––––––––––––––––––––––
We have a job in the publishing queue in our development environment that
continues to cause the endpoint to be suspended. Is it possible to just clear
out the entire queue?


––––––––––––––
| RESOLUTION |
––––––––––––––
(See also KB 9781 – http://support.vignette.com/VOLSS/KB/View/1,,9781,00.html)

These SQL statements will clear all the jobs. It is
strongly advised to use this only on non–production systems and to make a
backup of the tables that are affected prior to running the scripts.

update vgnJob
set state = 'DpCompleted'
where state in ( 'WfCompleted', 'WfCancelled', 'inprocess', 'invalid',
'initialized' );

delete from vgnJob
where state in ( 'DpSucceeded', 'DpFailed', 'DpCompleted' );

delete from vgnJobItemSeed
where jobId not in (select id from vgnJob);

delete from vgnJobItemAutoStage
where jobId not in (select id from vgnJob);

delete from vgnJobItemOrder
where jobId not in (select id from vgnJob);

delete from vgnJobItemStage
where jobId not in (select id from vgnJob);

delete from vgnJobStageVisited
where jobId not in (select id from vgnJob);

delete from vgnJobEngineFailure
where epId not in (select id from vgnEpInfo);

delete from vgnJobEngineFailure
where jobId not in (select id from vgnJob);


––––––––––––––––––––––––––––––––––––––––––––––––––––
–– Now that we've removed auto–prune jobs, there may
–– be more subjob info to get rid of.
––––––––––––––––––––––––––––––––––––––––––––––––––––

delete from vgnSubJob
where jobId not in (select id from vgnJob);

delete from vgnSubJobHistory
where jobId not in (select id from vgnJob);

delete from vgnSubJobProgress
where jobId not in (select id from vgnJob);

Monday, August 2, 2010

Knowledge Transfer

Vignette
- CTDs (custom widgets)
- piocda
- pio-cma-ext
- database jobs
- mapquest
- Location of code (VSS, db etc.)
- Portal
- Vignette configuration (VCM, DPM, Portal)
- Server configurations
- Issues
- memory issue on VCM
- Dealer Gallery webservice
- Static file submit utility
- Shopping cart integration
- CRM sync job
Portal code
- Seconday pages
- Portlets
- Shopping cart integration

B2B
- Architecture
- JCo
- SVN
Pioneer Survey
- SQL Server job
Employee Dir

Monitoring
- Pingdome

Account information (servers, Vignette, any other services)

---------------
WEB REVAMP
---------------
VCM changes
- Cloning of channel and content hierarchy in QA an Dev and ultimately production
- Reconfig of dev to mirror QA config
- CTD changes
-

DPM/Templates
- Grids
- Style Types
- Themes/Styles
- Portlets/Templates

Thursday, March 4, 2010

Content Refresh

  • Get the content instances under home channel after all channels are done.
  • POCFR Unassigned Content
  • POCFR Support
  • POCEN Unassigned Content
  • POCEN Support
  • POCEN Shop
  • PUSA Support
  • PUSA Unassigned Content

Friday, January 22, 2010

64 bit apache 2.2 upgrade

  1. Add modules to /etc/sysconfig/apache2
  2. copy weblogic module for /usr/lib64/apache2
  3. copy mod_jk module for 2.2 to usr/lib64/apache2
  4. Modify httpd.conf
  5. modify vhost.d/*.conf for changes JkMount does not work
  6. copy ssl certificate (not needed, remove the ssl.conf file?)

Monday, January 18, 2010

QA upgrade steps (32bit)

  1. Upgrade to tomcat 5.5.26
  2. Change drive class for jdbc to oracle.jdbc.driver.OracleDriver
  3. Change driver class in tomcat config to oracle.jdbc.driver.OracleDriver
  4. Make sure LDAP password you know is correct
  5. Check publish status, make sure nothing in queue and no errors, prune
  6. Stop endpoints
  7. Stop all services on vcmqas
  8. Stop all services on all machines (incl. tomcat) - meaning need a downtime
  9. Backup db (export, vcm and portal db schemas) using enterprise manager
  10. Backup folders (see http://eqbal-vignette.blogspot.com/2009/12/backups-for-qa-and-prod.html)
  11. Restart services
  12. Uninstall CCE (see upgrade guide)
  13. Backup autonomy (see upgrade guide)
  14. Uninstall autonomy
  15. rename /opt/Vignette/uninstall_cma directory
  16. Install 7.6 bin (select upgrade when asked)
  17. live autonomy and CA need to be shutdown
  18. Run vgnupgrade
  19. Run pre-req check, resolve any warning/errors before continuing
  20. Upgrade runtime svcs
  21. Connect to VCM, upgrade local config agent
  22. Backup /opt/Vignette and ~/Vignette, ~/vpd.properties
  23. Backup live autonomy and stop services
  24. Install cds bins on web servers
  25. Stop tomcat then Upgrade CAs
  26. Upgrade CMS services
  27. Upgrade CDS service (from VCM server)
  28. Upgrade Autonomy/install, use setnev-mgmt.sh (change port nos), modify script to use rm -rf
  29. Re-index content, start live autonomy upgrade
  30. Reindex content on live
  31. Patch
  32. Update tomcat config for Vignette install dir
  33. Build and deploy VCM apps (undeploy earlier jars, restart vcm server,then redeploy using the text file, restart vcm server again)
  34. Change ~/Export-Import/apache-ant-1.7.0/bin/build-deploy/local-build.properties for 7_3_1 to 7_6
  35. Import CTDs from dev
  36. Import Inlinks assets, create tables if needed
  37. Remove furl listener
  38. Update vgn-tas, vgn-ext-templating and furl webapps
  39. Set proper furl config values
  40. Set classes (to pre 7.4) for in-context edit
  41. Update new car files for Portal
  42. Update tomcat conf files for vgn-furl path
  43. Build and deploy piocda
  44. copy new jar files to portal webapp (vgn-appsvcs-cda.jar, thirdparty-combined.jar)
  45. delete mapper.jar from portal/web-inf/lib
  46. stop tomcat and delete DPM cache
  47. Test and then Patch
  48. Enable tunnelling for Adminserver (not vcmserver) under Protocols
  49. Install vcmtools
  50. After testing vgnTest.jsp and CPSAssetUtil.jsp, delete from live stage
  51. VCM runtime logs roll (admin console)



Thursday, January 14, 2010

Apache backups when upgrading to 64bit

  • vhosts config files
  • httpd.conf special stuff
  • /etc/sysconfig/apache2
  • all other conf files in /etc/apache2
  • ssl.crt (may need to reapply)

QA and Prod upgrade path

  • Save an image in case of botched upgrade to 7.6 (in a VM preferably)
  • Backup (to remote location)
  • Upgrade to 7.6
  • Save an image in case of botched upgrade to 64 bit OS (in a VM preferably)
  • Backup again (to remote location)
  • Upgrade OS to 64 bit suse 10
  • Add memory double or triple current
  • copy folders & files from upgraded 32bit backups made earlier

Tomcat upgrade to 5.5.26 for DPM

  1. Dont upgrade to 5.5.27/28 not supported, causes error with portal
  2. Unzip core in /usr/local/tomcat
  3. Unzip admin in /usr/local/tomcat
  4. rename context.xml
  5. Copy tomcat-users.xml from /opt/tomcat/conf
  6. copy conf xml files from /opt/tomcat/conf/Catalina/localhost
  7. copy piocda.war, vgn-ext-templating.war to webapps folder
  8. copy portal directory to webapps folder
  9. copy setenv.sh and setvapenv.sh to bin folder
  10. copy jar files from /opt/tomcat/common/lib to common/lib dir
  11. copy workers.properties file
  12. chmod u+x *.sh in the bin folder
  13. modify catalina.properties for portal libs
  14. remove webapps not needed (move)
  15. Add configuration for server.xml (Add context paths; add emptySessionPath=true for ports; add mail resource, max threads setting, add connector for port 8010 on live stages; do a diff
  16. recreate symbolic link /opt/tomcat to point to new tomcat folder (ln -s /usr/local/tomcat/apache... tomcat)
  17. edit httpd.conf for location of workers.properties file

Portal startup error

If portal app does not start on Tomcat with NoClassDefFound error for ConfigUtil or similar:
make sure catalina.properties has the path to portal shared lib directory

shared.loader=/opt/Vignette/Portal/lib/shared/*.jar,${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar

My Page Link does not appear

Check to see if under
Vignette Content > Vignette Content Management Services > Vignette Management Console > Service Provider Framework > View Template Registry
a "Menu Bar" entry is defined under Customer Extension View Template Registry. If so it should include all components defined under System View Template Registry for "Menu Bar"

Tuesday, January 12, 2010

7.6 upgrade: CTDs changed for ephox inline tag license

  1. Event
  2. FAQ
  3. File
  4. Free Html
  5. Image
  6. Pioneer Article
  7. Pioneer Product V2
  8. Pioneer Teaser
  9. Pioneer Video
  10. Press Releases
  11. Promotion
  12. Wiring Diagram

Upgrade checks

Check on these things:

Tomcat:
  1. Whether a resource defined for mail/Session is required anywhere in code. Answer: Yes

Tomcat upgrade

See: Newer post about Tomcat upgrade to 5.5.28
As part of 7.6 upgrade, upgrade tomcat to 5.5.26 (before proceeding with DPM upgrade steps)
  1. Copy the webapps from /opt/tomcat/webapps to 5.5.26 webapps folder
  2. copy conf/Catalina/localhost config xml files to corresponding 5.5.26 folder
  3. Copy config from server.xml from /opt/tomcat/conf to corresponding 5.5.26 folder
  4. Copy workers.properties file
  5. Change link to new tomcat

Content types to index (after 7.6 upgrade, replace vcm server name)

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_CHANNEL_EXTENSION

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_COMPARE_GROUP

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_DEALER_SHOWCASE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_DEALER_SHOWCASE_IMAGE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_DEALER

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_EVENT

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_FAQ

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_FILE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_FREE_HTML

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_IMAGE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_LINK_SET

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_ARTICLE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_TEASER_TWO

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_PRODUCT_V2

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_VIDEO

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_PRESS_RELEASE

./vgncontentindex -h pbs-lnxvcmdev:27110 -u vgnadmin -p pi0neer -w /opt/Vignette/vcm/inst-vgninst/ -z 300 -c PIO_PROMOTION

Tuesday, December 22, 2009

Backups for QA and Prod before starting 7.6 upgrades

Database:
  • Perform exports of schemas VCMMGMT, VCMLIVE, VAPSYSPREV, VAPSYSLIVE (does export work with db shutdown? Otherwise make sure all processes are stopped.
Ideal is save an image onto VM and have it available for files etc.

VCM Server:
  • /opt/Vignette
  • /opt/SAP-JCo
  • ~/Vignette
  • ~/vpd.properties
  • /usr/local/tomcat
  • /etc/profile.d/tomcat.sh
  • Apache config files from /etc/apache2/ (httpd.conf and files under vhosts.d)
  • JDK dir?
  • /etc/apache2 (whole directory, including SSL certs)
  • /etc/sysconfig/apache2 (file)
  • see if anything needs to be backed up in /srv folder
  • Copy over entier /home/vgnadmin (esp Export-Import folder with ant scripts for export import of objects)

Web Servers:
  • /opt/Vignette
  • /opt/SAP-JCo
  • ~/Vignette
  • ~/vpd.properties
  • /usr/local/tomcat
  • /etc/profile.d/tomcat.sh
  • /srv/www/vhosts
  • Apache config files
  • JDK dir?
  • /etc/apache2 (whole directory, including SSL certs)
  • /etc/sysconfig/apache2 (file)

Autonomy server:
  • /opt/Vignette
  • ~/Vignette
  • ~/vpd.properties

Tuesday, December 8, 2009

Create Channel

public Channel createSubChannel(Channel parentChannel, String channelName)
throws AuthorizationException, ApplicationException,
ValidationException {

// Create a new channel
Channel channel = new Channel();

// Configure the channel as requested
ChannelData channelData = channel.getData();

channelData.setParentChannelRef(new ChannelRef(parentChannel));
channelData.setName(channelName);

// Save the channel
channel.commit();

// Return the channel
return channel;
}
==============================
System.out.println("Creating SubChannel " + name + "...");

//Create sub channels for Home Channel
Channel homeChannel = newSite.getHomeChannel();
ChannelRef parent = new ChannelRef( mHomeChannel );
ChannelData subChannelData = new ChannelData();

subChannelData.setName("mysubchannel");
subChannelData.setDescription("This is a subchannel of the Home Channel");
subChannelData.setOrderAsSibling(sibOrder);
subChannelData.setParentChannelRef(parent);

Channel subChannel = new Channel();

subChannel.setData(subData);
//Approve the channel
subChannel.setStatus("approved");
subChannel.commit();
System.out.println("Created SubChannel " + name);


//Associate the content instance to the mysubchannel
ChannelContentAssociationData ciTestAssocData = new
ChannelContentAssociationData();
ci = (ContentInstance)ContentInstance.findByContentManagementId( mgmtId );
ciTestAssocData.setContentRef(ci.getContentManagementId());
subChannelData.addContentAssociations(ciTestAssocData);
subChannel.commit();

Thursday, November 5, 2009

Upgrade 7.6

Before starting upgrade:
  1. Patch portal to 7.3.5 on dev, qa and live (11/9 - 11/10)
  2. Test with the patch before starting upgrade (11/11 - 11/12)
  3. Change oracle driver class name in vcm config and tomcat conf to oracle.jdbc.driver.OracleDriver
Timeline for upgrade:
  1. Dev: 5 days
  2. QA: 5 days
  3. QA: migration to 64bit - 5 days (on VM and use QA hardware for Prod 64bit?)
  4. Load testing: 5 days
  5. Prod: 10 days
  6. Prod migration to 64bit - 5 days
Follow the Upgrade guide
Order of servers upgrade QA/Prod:
  1. VCM
  2. Autonomy
  3. QA1 & QA2, should be upgrade together, so requires downtime, writedown each step before continuing (Estimate downtime: 8 hrs)
Rough roadmap for VCM upgrade:
  1. Uninstall CCE
  2. Backup Autonomy
  3. Uninstall Autonomy
  4. Stop endpoints
  5. Stop services
  6. install 7.6
  7. run vgnupgrade
  8. Rename old Contnent/7_3_1 directory
  9. Upgrade Autonomy
  10. Post upgrade stuff from ch7
  11. Custom CMA and other apps deployments
  12. DPM deployments, config changes
  13. FURL config
  14. Fixes on Presentation templates and Query Components
  15. Thorough Testing
  16. Patch VCM to 7.6 SP1
  17. Another round of testing

Load Testing QA
  1. Use earlier scripts with webload
  2. Ask for the load tester desktop from Mark, that has all the scripts
  3. Will need to do it off hours


Post Upgrade:
  1. Upgrade to Portal 8.0?
Notes:
------
FURL
  1. Configure FURL
  2. Remove FURL listener in config (Events>Pre create and update)
  3. set furl.exclude.sitename=false
  4. set linkprinter.impl

DPM Menu classes customization in vgn-ext-templating generic resource, rollback component and item region menu to use pre 7.4 classes

PIOCDA
  1. Include Michael's fixes to JSPs (Product detail etc.)
  2. Checkin changes in VSS

V7.6 Upgrade Migration to 64bit

Backup
  1. Database schemas (DEVVCMMGMT, DEVVCMLIVE, DEVVAPPREV, DEVVAPLIVE)
  2. Take 32bit snapshot
On Mgmt stage:

Copy the following folders/files:
  1. /opt/Vignette
  2. /opt/SAP-JCo
  3. ~/Vignette
  4. ~/vpd.properties
  5. /usr/local/apache/tomcat - upgrade to 6 after testing
  6. /etc/profile.d/tomcat.sh
  7. Create symbolic links for doctoor, /srv/www/vhosts/non-secured + secured
  8. Copy apache config files
  9. Update loaded modules
  10. Java 1.5 32bit
Install:
  1. 64bit JDK 1.6 (1.5?)
  2. Recompile delivery apps with JDK 6?
  3. Tomcat 6
Set environment variables for
  1. JAVA_HOME
  2. PATH
  3. LD_LIBRARY_PATH
Deploy Apps:
  1. piocda
  2. portal
  3. vgn-ext-templating
  4. furl
  5. vgn-tas
On delivery stage:

copy the following folders:
  1. /opt/Vignette
  2. /opt/SAP-JCo
  3. ~/Vignette
  4. ~/vpd.properties
  5. /usr/local/apache/tomcat - upgrade to 6 after testing
  6. /etc/profile.d/tomcat.sh
  7. /srv/www/vhosts/non-secured + secured
  8. Copy apache config files (ssl cert etc.)
  9. Update loaded modules
  10. Java 1.5 32bit
Install:

  1. 64bit JDK 1.6 (1.5?)
  2. Recompile delivery apps with JDK 6?

Set environment variables for:
  1. JAVA_HOME
  2. PATH
  3. LD_LIBRARY_PATH

Deploy Apps:
  1. piocda - use war file
  2. portal - copy folder
  3. vgn-ext-templating - use war file
  4. furl - copy folder

Monday, October 26, 2009

Site does not publish, yet no errors

If a site in VCM shows status "Unpublished" even though there were no errors during publish, check if its associated with a Stage.