Jamf Nation のスレッドと YouTube の説明動画をもとに検証を行いました。
① Apple Developer Programから対象Xcodeのバージョンをダウンロード
パッケージ化ツールとして WhiteBoxのPackagesアプリ を使用しました。
(最初は普段使用しているJamf 社のツール Composer を使ってパッケージの作成を試したのですが、失敗するため別ツールを試しました。)
パッケージ化の手順(クリックして)
- Raw Packageを選択
- プロジェクト名・プロジェクトフォルダを入力
- プロジェクト作成後はSettingsタブに移動
- Options > Require admin password for installationのチェックを外す
- Payloadタブに移動
- Contentsの中にあるApplicationsを選択し、左下の「+」ボタンを押下
- /Applications/Xcodeを選択
- 右横にあるAttributes欄のGroupをwheelに変更(Composerと同様に)
- メニューのFile > Save
- メニューのBuild > Build
Build完了までしばらく待ちます。(Xcode の場合、時間がかかります)
※ Build完了後、プロジェクトフォルダ内にあるbuildフォルダで作成したPKGが表示されます。
ネット状況にも応じますが、これも結構時間がかかります。
記事に掲載されていたスクリプトを一部変更しています。
- コードでGatekeeper後にあるコードを外し、代わりパッケージインストールと初回実行アイテムに関するコードに変更
- 別途post installスクリプトで最新バージョンCommand Line Toolsをインストール (参考コメント)
作成したスクリプト:
- XcodeConfiguration.zsh
- XcodePostInstallCommandLineTools.sh
- setSleepTime.zsh (処理中にスリープしないようにするため)
④で作成した PKG ファイルと⑤のスクリプトを用いて Jamf Pro でポリシーを作成します。
スクリプト>優先順位は以下のような組み合わせとなります。
Policyのトリガーで実施する場合(クリックして)
- setSleepTimeをBefore実行
- XcodeConfigurationをAfter実行
- XcodePostInstallCommandLineToolsをAfter実行
Self Serviceで実施する場合(クリックして)
- XcodeConfigurationをAfter実行
- XcodePostInstallCommandLineToolsをAfter実行
XcodeConfigurationスクリプトのインストールログは以下の階層に保存さる:
/Library/Logs/Xcode/XCodeInstall.log
・ポリシーの実行には2~3時間かかりましたが、問題なくパッケージのインストールとスクリプトによる展開が実行され、アプリも問題なく開くことができました。
※ 今回 macOS Ventura にて検証を行いましたが、今後のメジャーアップデート時は検証して実装をお願いいたします。
詳しくはブログをご覧ください。