Top Banner
Introduction to Enterprise-Release Engineering On the Salesforce Platform KC Shafer, Bluewolf, Senior Developer @sfdcasey
16

Introduction to Enterprise-Release Engineering on the Salesforce Platform

Jan 26, 2015

Download

Technology

Managing multiple release schedules, workstreams, and code versions is a critical task to ensure your salesforce.com organization maintains security, integrity, and the ability to stay flexible. Join us to learn how to set up a governing team, how to size up what goes into a release, and how to use Github, Jenkins, and the ant deployment tools. You'll leave ready to develop your own release strategy for managing enterprise-level deployments and improvements.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Introduction to Enterprise-Release Engineering On the Salesforce Platform

KC Shafer, Bluewolf, Senior Developer @sfdcasey

Page 2: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Are You Treating Your Force.com Apps Fairly? Enterprise applications deserve a robust release management solution

Page 3: Introduction to Enterprise-Release Engineering on the Salesforce Platform

What Should You Do for Your Force.com Apps? ▪ What makes up a robust release process? ▪ Release considerations ▪ Why is this important?

Page 4: Introduction to Enterprise-Release Engineering on the Salesforce Platform

FYI: Demo Dependencies ▪ Demo includes:

- Homebrew - GitFlow - Jenkins

▪ BONUS: It’s all free!

Page 5: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Release Management Tools

Page 6: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Migration Tool ▪ What is a migration tool? ▪ What are the options?

• Change Sets • Force.com Migration Tool

• API

▪ Change Sets vs. External Tool

Page 7: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Force.com Migration Tool Demo ▪ Setup ▪ Basic use ▪ Retrieve org metadata

Page 8: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Source Control ▪ What is source control? ▪ What are the options?

• Git • SVN (Apache Subversion)

• Mercurial

Page 9: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Git Demo ▪ GitHub ▪ Create a repository ▪ Initial Commit

Page 10: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Team Development ▪ Setting up a team development environment

• Sandbox flow

• External development environment • GitFlow

▪ External Development Tools • Copy/Paste • Eclipse IDE

• Text Editor + ANT/API build scripts

Page 11: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Team Development demo ▪ GitFlow feature branch ▪ New Visualforce Page ▪ Commit & Pull Request

Page 12: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Continuous Integration (CI) ▪ What is continuous integration? ▪ Continuous integration vs. Manual builds ▪ CI considerations ▪ Options

• Jenkins • Hudson

• Bamboo (Not Free)

Page 13: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Release Demo ▪ GitFlow release branch ▪ Setting up Jenkins ▪ Build on!

Page 14: Introduction to Enterprise-Release Engineering on the Salesforce Platform

KC Shafer

Senior Developer, @sfdcasey

Page 15: Introduction to Enterprise-Release Engineering on the Salesforce Platform

Team Development Tools ▪ Team development tool locations

• Mavens Mate - https://github.com/joeferraro/Mavens Mate - https://github.com/joeferraro/MavensMate • AbuseTheForce - https://github.com/ViViDboarder/abuse-the-AbuseTheForce - https://github.com/ViViDboarder/abuse-the-force • TextMate - httpsTextMate - https://github.com/superfell/TextMate - https://github.com/superfell/ApexMate • SublimeForce - https://SublimeForce - https://github.comSublimeForce -

Page 16: Introduction to Enterprise-Release Engineering on the Salesforce Platform