ING has been using Drupal since 2010 to build websites like ING.us and ing.us/retirement more quickly than their previous CMS. They develop sites in-house and with vendors using a three stage development process. To migrate sites between environments like development and staging, they use the Backup and Migrate module along with modifying URLs and database variables. The Deploy module allows them to easily push content changes from staging to production.
What's New in Teams Calling, Meetings and Devices March 2024
Drupal Deployment at ING Financial Services
1. Drupal Deployment
ING Financial Services
Matthew Wetmore
Senior Software Developer
Windsor – Feb 2011
www.ing.us
• RETIREMENT • LIFE INSURANCE
• INVESTMENTS
What will we cover?
• ING’s history with Drupal
• How ING builds Drupal Sites
• How ING migrates sites between environments
• Staging vs. Production
• Deploy Module
• Demo
Retirement - Life Insurance - Investments 2
1
2. ING’s History with Drupal
• ING started using Drupal in August 2010
• Started with the launch of ING.us (08/10)
• 2 additional sites have been launched since then.
• ing.us/retirement (retirewithing.com) (11/10)
• ing.us/rri (ING Retirement Research Institute) (1/11)
• ING and Stellent
• Stellent was the primary CMS, but it was large and not as dynamic as
Drupal.
• Time to market with Drupal was 2-3 times faster then Stellent.
• Drupal provided a more dynamic environment for the business.
• Sites developed both in house and with external vendors.
Retirement - Life Insurance - Investments 3
Screenshot: ING.us
Retirement - Life Insurance - Investments 4
2
4. How ING builds Drupal Sites
• Develop sites both in-house and with Third Party vendors.
• 3 Step Environment
• Dev / Testing
• Staging
• Production
• Start with a starter theme.
• Either zen or framework
• Extensive Wireframe for each site.
• HTML Design markups
Retirement - Life Insurance - Investments 7
Example Wireframe (ing.us)
Retirement - Life Insurance - Investments 8
4
5. How ING migrates Sites
• Utilize Backup and Migrate module.
• Provides simple mysql extract of database.
• Make note of both Development URL and Staging URL
• Keep track of difference in URL length.
• Scrub MySQL file to remove instances of Dev URL.
• Inspect Variable Table insert statements for changes, need to
modify array to compensate for URL length difference.
• Load cleaned MySQL file to empty database in Staging.
• Copy source from Dev and update Settings.php
• Attempt to login and clear cache, work through other issues.
Retirement - Life Insurance - Investments 9
Staging vs. Production
• Issue: Business needs to view content exactly how it will look in Production.
• Solution: Create a staging environment that looks exactly like Production
where the business can see the content exactly how it will look. Staging will
then provide the content up to Production.
• Staging provides the ability to fully test and create content, site structure,
layouts, css, changes before moving them to Production.
• But how do we make that final migration from Staging to Production and how
do we make other updates in the future?
Retirement - Life Insurance - Investments 10
5
6. Deploy Module
• More info on deploy can be found at: http://drupal.org/project/deploy
• Requirements:
• Services (http://drupal.org/project/services)
• Base Deploy can push the following:
• Nodes (Pages/Story)
• Custom Content Types
• System Settings
• Users
• ING has custom build Deploy components for each of our sites and
configurations.
Retirement - Life Insurance - Investments 11
Screenshots: Deploy
Retirement - Life Insurance - Investments 12
6
7. Screenshots: Deploy
Retirement - Life Insurance - Investments 13
Deploy Demo
• Demo on setup and using Deploy
• Enabling Services
• Enabling Deploy
• Configuring Deploy w/ Plans
• Lets deploy a page
• Lets deploy some system settings
Retirement - Life Insurance - Investments 14
7