この記事は、Salesforce Platform Advent Calendar 2017 18日目の投稿になります。
はじめに
昔作った Force.com のソースコードを新しい Developer 環境にデプロイしたいと思います。
pacakage.xml の Version タグによると、バージョンは「16.0」です。
現在「38.0」ですので、なかなか古いと言えるのではないでしょうか。
準備
Eclipse
Eclipse 4.5 に Force.com プラグインをインストールします。
まさかのここからスタートですが、気を確かにいきましょう。
ソースコード
SVN に保管してあったソースコードをローカルに展開します。
package.xml の Version を 38.0 に修正します。(これはしなくてもよいかも)
デプロイ開始
1回目のデプロイ
サーバへのデプロイは、「Deploy to Server」というメニューから行います。
まずなにも考えずにプロジェクトのルート上で右クリックして、「Deploy to Server」を実行。
画面に沿って進めます。
「Destination archive」のチェックは外しました。
package.xml のエラーが出てしまいました。ファイルの文字コードがおかしいようです。
ざっとファイルの文字コードを確認してみますが、UTF-8になっているように見えます。
Salesforce のサイトを見ると、解決策がでていたので、それで対応します。
Force.com IDEのデプロイ時にエラー発生
2回目のデプロイ
1回目と同じ手順を踏んで、デプロイを進めます。
デプロイ失敗しますが、エラー内容は変わっています。(画像取得洩れ)
エラー内容を見て、一度にすべてのデプロイは難しいと判断して、少しずつデプロイすることにしました。
n回目のデプロイ
まず カスタムオブジェクト をデプロイします。
デプロイ成功です!ものすごくうれしい。
Visualforce Page や Apex Class は依存しあっていることが多いので、小分けにして少しずつデプロイしていきます。
ここからは、デプロイ失敗時のログをみながら進めていきます。
試行錯誤の結果、
カスタムオブジェクト → 静的リソース → Apex Class, Trigger, tab → テストクラス → レポート, ダッシュボード → アプリケーション
という順番でデプロイしていくのがよさそうです。
API バージョンが低いので、最終的にはここもバージョンアップしますが、今回はここまで。
デプロイの試行錯誤に時間がかかりすぎました。
時間を見つけてこの記事は成長させていけたらなと思います。