Developer-Controlled
Packages (DCPs) を試してみた
takahiro.kawabata@salesforce.com, @tak4hir0
Takahiro Kawabata
⾃⼰紹介
AppExchange アライアンス部
テクニカルエバンジェリスト
川畑 隆博
AppExchange アプリケーションプログラムの技術担当
略歴:Web デベロッパ → Force.com デベロッパ → テクニカルアーキ
テクト → テクニカルエバンジェリスト
今⽇のトピック
概要
QAからイメージ
Q.なぜパッケージングですか?それは私の開発チームにどのよ
うに役⽴つでしょうか?
1. アプリ開発をより簡単に
Make app development easier.
2. デプロイをスクリプト化、追跡可能に
Make deployments repeatable, scriptable and
trackable
3. 組織の変更管理をより
明確に追跡
Track changes to your org more clearly and
easily
4. カスタマイズを管理
Keep your customizations more organized
Why packaging? How can it help my development team?
Announcing Developer Controlled Packaging (DCP) Beta
https://developer.salesforce.com/blogs/2018/02/announcing-
developer-controlled-packaging-dcp-beta.html
Q. パッケージの種類はどれくらいあり、どれを使うべきですか?
あなたがSalesforceの顧客、請負業者、コン
サルタント、またはSystems Integratorであ
る場合、あなたにとって重要な唯⼀のタイプ
のパッケージは、現在利⽤可能なUnlocked
DCPです。
To summarize in one sentence, if you are
a Salesforce customer, contractor,
consultant or Systems Integrator, the only
type of packaging that matters to you is
Unlocked DCPs, which are available to you,
NOW!
What are the different types of packages and which one should I use?
Q.変更セットとANT移⾏ツールに対するDCPのメリットは何で
すか?
1. DCPのパッケージバージョンを作成するときに
指定するメタデータは、Salesforce DXプロジェ
クトおよびバージョン管理システムに含まれるもの
と同じメタデータです。 DCPは、ソース主導の開
発アプローチを推進し、Salesforce DXが使⽤する
メタデータ形式を使⽤します。
2.パッケージバージョンでは、CI、UATなどで使
⽤できる不変のバージョン管理可能な成果物があり
ます。すべてのCIテストとUATを通過する同じ成果
物を本番組織にインストールできます。
3. DCPは、機能を論​​理的、モジュラ的、相互依存
的な単位に編成し、展開と組織化のためにパッケー
ジを使⽤するモジュール開発を促進します。モジュ
ラーで反復的な開発実践に付随するすべての良いも
のを⼿に⼊れることができます。
1. The metadata that you specify when you create a
package version for a DCP is the same metadata
that is contained in your Salesforce DX project and
version control system. DCPs promote the source-
driven development approach and use the metadata
format that Salesforce DX uses.
2. With package versions, you have an immutable,
versionable artifact that can be used in CI, UAT, etc.
The same artifact that passes all your CI tests and
UAT can be installed in your production orgs.
3. DCPs promote modular development where you
can organize your functionality into logical, modular,
interdependent units, and use packaging for
deployment and organization. You get all the good
things that come with modular, iterative
development practices.
What are the benefits of DCPs over change sets and ANT Migration Tool?
Code
Develop + Unit Tests
QA
Code Merge + Functional
Test
UAT + Load + Staging
Release
Training + Deploy
Dev
SBX
PRODFull
SBX
Dev
SBX
Dev
SBX
Partial
SBX
Dev
Pro
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
参考例:Feature Development 2 ways
Declarative Development:
Code is promoted through
change sets, ant migration,
metadata API.
Version Control System (repo)
Source-Driven Development:
Changes are tracked in a VCS
with a CLI for source pull and
push, and programmatic
testing.
New Tools:
Salesforce DX delivers a suite
of tools and processes to
support modern
development and VCS.
CLI-driven changes
Change set promotions
デモ
Hello World
Hello DCPs
1. リポジトリをコピー
git clone
https://github.com/dreamhouseapp/dreamhouse-
sfdx.git
cd dreamhouse-sfdx/git
checkout spring18
2. Dev Hub 認証
sfdx force:auth:web:login –setdefaultdevhubusername
3. Developer-Controlled Package の作成
sfdx force:package2:create --name dreamhouse --
containeroptions Unlocked
4. sfdx-project.json の編集
"ihistd": "<0Ho ID that you got from step
3>","versionName": "Spring - 2018","versionNumber":
"1.0.0.NEXT" (see here for more info about version
numbers)
5. パッケージバージョンの作成
sfdx force:package2:version:create --directory force-app --wait
10
6. スクラッチ組織の生成
sfdx force:org:create --noancestors --nonamespace --
definitionfile config/project-scratch-def.json --setalias sub1 –
setdefaultusername
7. パッケージインストール
sfdx force:package:install --id <04t_id_from_step_5> --wait 10
8. パッケージの確認
sfdx force:org:open
“エラーを解決できません…”
AppExchange Packaging in Salesforce DX
Packaging
Org
Version
Control
System
Local Workspace with
IDE
Package
Dev
Scratch
Org
4. source:convert; mdapi:deploy
QA
Scratch
Org
1. mdapi:retrieve; mdapi:convert
DCPs in Salesforce DX(コマンドから推察)
Packaging
Org
Version
Control
System
Local Workspace with
IDE
Developer Control Pakcage
Dev
Scratch
Org
QA
Scratch
Org
Production?
まとめ
現時点でわかったこと
• Developer-Controlled Packages (DCPs) はSalesforce DXの⼀部として、メタデータを
展開するための新しい⽅法
• 企業向けのユースケースを考慮して設計された新しいタイプのパッケージ
• 例:プロダクション組織の既存のパッケージ化されていないメタデータを整理する
• 変更セットとANT移⾏ツールと⽐較して⽣産性、利便性にメリットがある
• Springʼ18 ではオープンベータ版
関連リソース
ドキュメント ブログ 動画
Salesforce DX Success Community
Salesforce DX Developer Center Web Site
Salesforce DX Developer Guide
Salesforce CLI Command Reference
Salesforce CLI Guide to Usernames and
Orgs
Salesforce CLI Guide to Authorization
Salesforce Metadata API Developer Guide
Develop Second-Generation Packages
(Beta)
Announcing Developer Controlled
Packaging (DCP) Beta
https://developer.salesforce.com/blogs/20
18/02/announcing-developer-controlled-
packaging-dcp-beta.html
New Spring ʼ18 Developer Features and
the DreamHouse Sample App
https://developer.salesforce.com/blogs/20
18/01/new-spring-18-developer-features-
dreamhouse-sample-app.html
Webinars:
Simplify your code with Salesforce DX and
module development
https://developer.salesforce.com/events/
webinars/simplify-your-code-with-
Salesforce-DX
Salesforce DX Product Manager AMA
https://developer.salesforce.com/events/
webinars/Salesforce-DX-AMA
次のステップ
Action
関連リソースのチェック
Hello World を試してみる(ライセンス使えない場合はご連絡ください)
コミュニティに投稿(オンラインもオフラインでも)
https://success.salesforce.com/_ui/core/chatter/groups/GroupProfilePage?g=0F93A000000Lg5U
事例の共有(部分的でも嬉しいです!)
Developer-Controlled Packages (DCPs) を試してみた

More Related Content

PDF
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
PDF
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
PDF
20190725 Argo Project Latest News
PPTX
Reactive Workflow Argo Eventsの紹介
PDF
ChainerMNをDocker containerで動かす
PDF
Docker webinar 20170426−02
PDF
OSC Hiroshima 2013
PPTX
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...
repositoryパターンを維持しながら n+1問題を起こさないようにする方法論
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
20190725 Argo Project Latest News
Reactive Workflow Argo Eventsの紹介
ChainerMNをDocker containerで動かす
Docker webinar 20170426−02
OSC Hiroshima 2013
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...

What's hot (20)

PDF
20201008 GitHub at Microsoft
PDF
GitHub Actions で CI/CD
PDF
【BS15】.NET アップグレード アシスタントで簡単にできます! .NET Framework アプリの .NET 6 へのマイグレーション
PDF
【BS6】 マイクロソフトの GitHub との取り組み
PDF
cndjp: 「Microclimate」by capsmalt
PDF
2021 01-30 Visual Studio 2019 知っているか!?この機能 in BuriKaigi2021
PPTX
Docker webinar 20170426−01
PDF
【BS7】GitHubをフル活用した開発
PDF
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
PDF
Google Container Engine を始めてみよう
PDF
【BS2】.NET 6 最新アップデート
PDF
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
PDF
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
PPTX
202202 open telemetry .net handson
PDF
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
PDF
.NET 最新ロードマップと今押さえておきたい技術要素
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
PDF
【BS12】Visual Studio 2022 40分一本勝負!
PPTX
C#エンジニアのためのdocker kubernetesハンズオン (再)
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
20201008 GitHub at Microsoft
GitHub Actions で CI/CD
【BS15】.NET アップグレード アシスタントで簡単にできます! .NET Framework アプリの .NET 6 へのマイグレーション
【BS6】 マイクロソフトの GitHub との取り組み
cndjp: 「Microclimate」by capsmalt
2021 01-30 Visual Studio 2019 知っているか!?この機能 in BuriKaigi2021
Docker webinar 20170426−01
【BS7】GitHubをフル活用した開発
【BS10】Microsoft と GitHub の開発エコシステムで、開発にドライブをかけよう!
Google Container Engine を始めてみよう
【BS2】.NET 6 最新アップデート
【BS3】Visual Studio 2022 と .NET 6 での Windows アプリ開発技術の紹介
【BS11】毎年訪れる .NET のメジャーバージョンアップに備えるために取り組めること
202202 open telemetry .net handson
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
.NET 最新ロードマップと今押さえておきたい技術要素
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
【BS12】Visual Studio 2022 40分一本勝負!
C#エンジニアのためのdocker kubernetesハンズオン (再)
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Ad

Similar to Developer-Controlled Packages (DCPs) を試してみた (20)

PPTX
Dev Containers Customization Short version
PDF
Amazon ECSとDevOps
PDF
Case study of DevOps for Hadoop in Recruit.
PDF
Case study of DevOps for Hadoop in Recruit.
PDF
DevOps with Dynatrace
PDF
Kubernetes 導入から始める DevOps について
PDF
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
PDF
Docker Enterprise Editionで実践するCaaS
PDF
VCS - Version Control System at Security and Programming camp 2011
PDF
Azure DevOps - ALGYAN Oct 2022.pdf
PDF
はてなにおける継続的デプロイメントの現状と Docker の導入
PPTX
Developers Containers for Basis, for team development.
PDF
DOO-014_日本でもできる! マイクロソフト技術をフル活用した DevOps の具体的実現手法!
PDF
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
PPTX
DevOpsの取り組み - Infratop
PDF
第0回bluemixユーザー会 Bluemix最新情報 BMXUG
PPTX
Continuous Integration Using Salesforce DX
PDF
Force.com開発基礎
PDF
Open Shift v3 主要機能と内部構造のご紹介
PDF
GitLab Auto DevOps with Container CI/CD
Dev Containers Customization Short version
Amazon ECSとDevOps
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
DevOps with Dynatrace
Kubernetes 導入から始める DevOps について
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
Docker Enterprise Editionで実践するCaaS
VCS - Version Control System at Security and Programming camp 2011
Azure DevOps - ALGYAN Oct 2022.pdf
はてなにおける継続的デプロイメントの現状と Docker の導入
Developers Containers for Basis, for team development.
DOO-014_日本でもできる! マイクロソフト技術をフル活用した DevOps の具体的実現手法!
[DO09] 獲れたて OSS x DevOps!自動化三昧を満喫セヨ
DevOpsの取り組み - Infratop
第0回bluemixユーザー会 Bluemix最新情報 BMXUG
Continuous Integration Using Salesforce DX
Force.com開発基礎
Open Shift v3 主要機能と内部構造のご紹介
GitLab Auto DevOps with Container CI/CD
Ad

More from Takahiro Kawabata (12)

PDF
A Whole New Platform for ISVs
PDF
アプリケーションライフサイクル管理とロック解除済みパッケージ
PDF
パートナーオフィスアワー (Partner Office Hour) -Monthly- ALMとDX事例
PDF
パートナーオフィスアワー (Partner Office Hour) 第九回 アプリケーションライフサイクル管理
PDF
Distribute/Support - パートナーオフィスアワー (Partner Office Hour) - きほんのき AppExchange ...
PDF
Plan/Build - パートナーオフィスアワー (Partner Office Hour) - きほんのき AppExchange アプリ開発者向...
PDF
パートナーオフィスアワー (Partner office hour) 第九回 アプリケーションライフサイクル管理
PDF
次世代のパッケージング Packaging 2(Pilot)
PDF
Summer’17 リリースノート ISVforce / Lightning Bolt
PDF
Salesforce Winter ‘17 リリースノート 輪読(ISV 改め App Innovators 編)
PDF
実演 AppExchange アプリケーション ライフサイクル
PDF
SU16 リリースノート輪読(ISVforce)
A Whole New Platform for ISVs
アプリケーションライフサイクル管理とロック解除済みパッケージ
パートナーオフィスアワー (Partner Office Hour) -Monthly- ALMとDX事例
パートナーオフィスアワー (Partner Office Hour) 第九回 アプリケーションライフサイクル管理
Distribute/Support - パートナーオフィスアワー (Partner Office Hour) - きほんのき AppExchange ...
Plan/Build - パートナーオフィスアワー (Partner Office Hour) - きほんのき AppExchange アプリ開発者向...
パートナーオフィスアワー (Partner office hour) 第九回 アプリケーションライフサイクル管理
次世代のパッケージング Packaging 2(Pilot)
Summer’17 リリースノート ISVforce / Lightning Bolt
Salesforce Winter ‘17 リリースノート 輪読(ISV 改め App Innovators 編)
実演 AppExchange アプリケーション ライフサイクル
SU16 リリースノート輪読(ISVforce)

Developer-Controlled Packages (DCPs) を試してみた