注文とデバイス
注文に対応するMac、モデル、インスタンスIDを確認します。複数台を管理している場合は、操作対象を特定し、プロジェクトファイルを別のデバイスに送らないようご注意ください。
デバイス、リージョン、アクセス権を確認してからSSH接続し、ビルド環境をチェックします。初回接続にもトラブル対応にも使えるチェックリストです。接続先、ユーザー名、鍵はご自身の注文情報をご確認ください。
ご注文済みの場合は、コンソールで該当する注文を開き、右側の手順に沿って確認してください。
確認してから接続
公開サンプルには実際のアドレス、秘密鍵、アクセストークンは含まれません。実際に利用できる情報はコンソールでご確認ください。
注文詳細から項目ごとに確認してください。変更されている可能性があるため、古いメモやチャットから接続情報をコピーしないでください。注文がお済みでない場合は、まずモデルと料金ページで選べる構成と契約期間をご確認ください。
注文に対応するMac、モデル、インスタンスIDを確認します。複数台を管理している場合は、操作対象を特定し、プロジェクトファイルを別のデバイスに送らないようご注意ください。
注文で選択したリージョンを確認し、対象デバイスの管理情報から接続先アドレス、ポート、ユーザー名を取得します。このページのサンプルアドレスは実際の接続先ではありません。
現在のアカウントで該当注文と接続情報を確認できるかチェックします。秘密鍵は管理されたローカル環境に保管し、サポートチケット、リポジトリ、公開ページには記載しないでください。
機密情報は送らないでください。問題の調査には、機密情報を伏せたエラーメッセージをご利用いただけます。秘密鍵、完全なトークン、証明書の内容、個人情報を含む未加工のログは送信しないでください。
今回の注文に記載された正しい接続情報を取得し、ローカルの鍵と初回接続時のホスト認証を確認します。ネットワーク接続、アカウントの認可、ホスト認証は別々の確認項目です。ログイン画面が表示されても、確認を省略しないでください。
コンソールにログインして対象の注文を開き、デバイスのアドレス、ポート、ユーザー名、接続手順を確認します。接続情報がまだ表示されていない場合は、アドレスを推測せず注文状況を確認してください。
ローカルの秘密鍵ファイルのアクセス権を確認し、注文の手順に従って対応する公開鍵を設定します。CI用には権限を絞った認証情報を用意し、個人用開発マシンの秘密鍵をビルドリポジトリにコピーしないでください。
初回接続時は、ホストフィンガープリントを信頼できるデバイス情報と照合します。一致しない場合や突然変わった場合は接続を中止し、デバイス、アドレス、接続経路の選択を確認してください。警告を無視して接続しないでください。
以下の出力は確認手順を示すためのものです。特定のデバイスの実際のシステムバージョン、ビルド結果、設定済みプロジェクトを表すものではありません。サンプルの 192.0.2.10 は注文の接続先アドレスではありません。実行前にコンソールに記載された情報に置き換えてください。
まず対象のデバイスに接続できることを確認し、次にXcodeのコマンドラインツールの参照先を調べてから、プロジェクトのディレクトリでビルドを実行します。各手順は個別に切り分けられるため、CIパイプライン全体を一度に移行してテストする必要はありません。
$ ssh -i ~/.ssh/id_ed25519 operator@192.0.2.10
出力例:対象のデバイスに接続しました。ホスト認証を確認してください。
$ xcodebuild -version
出力例:デバイスにインストールされているXcodeのバージョンを表示します。
$ fastlane build
出力例:プロジェクト設定を確認し、ビルド結果を返します。
サンプルコマンドに実際の認証情報は含まれていません。fastlane build プロジェクトに対応するタスクが定義されている場合にのみ使用できます。実際のコマンドはプロジェクト設定に従ってください。
接続できても、開発環境がプロジェクトの要件に合っているとは限りません。Runnerを設定したり、大量のプロジェクトファイルをアップロードしたりする前に、以下を確認してください。OSやツールのバージョンは、レンタルしたデバイスの実環境でご確認ください。
macOSのバージョン、現在のXcodeのバージョン、および xcode-select -p が示す開発者ディレクトリを記録します。プロジェクトで特定のSDKが必要な場合は、利用可能なバージョンを確認してからビルドを開始してください。
確認項目:OSバージョン、Xcodeバージョン、コマンドラインツールのパス
リポジトリのロックファイルに従って依存関係をインストールし、パッケージ管理ツール、スクリプト実行環境、必要なプラグインを確認します。ツールのインストール、プロジェクト設定、署名情報を分けて管理し、ビルド失敗だけでデバイスの問題と判断しないでください。
確認項目:ロックファイル、インストールログ、依存関係のバージョン
まずプロジェクトのディレクトリで、再現可能なチェックまたはビルドコマンドを1つ実行し、コマンド、終了コード、最初のエラー箇所を記録します。ローカルで正常にビルドできたことを確認してから、同じタスクをCIに追加してください。
確認項目:実行ディレクトリ、コマンド全文、最初に失敗した手順
CI/CD連携では、追跡できない別環境を作るのではなく、成功したコマンド、依存関係、権限要件を記録し、繰り返し実行できるジョブにします。Runnerの登録方法と実行設定はCIシステムによって異なります。公開設定に実際の登録トークンを貼り付けないでください。
使用するCIシステムに対象デバイスのRunnerを登録し、想定したプロジェクトとジョブを受け取っていることを確認します。実行ユーザー、作業ディレクトリ、並列実行するタスクの設定も確認してください。
アクセス鍵と署名情報は、CIシステムが提供する管理されたシークレットストレージに登録してください。リポジトリ、ビルドスクリプトの出力、キャッシュには記載せず、タスクに必要な権限だけを付与します。
依存関係キャッシュのパスと削除条件を定め、ビルド成果物はチーム指定の場所に保存します。再現しないエラーが発生した場合は、まず古いキャッシュを使わずにビルドし、結果を比較してください。
ジョブの終了後、作業用ファイル、バックグラウンドプロセス、セッションの状態を確認します。デバイスの引き継ぎや権限変更の際は不要になったアクセスを取り消し、作業ディレクトリに認証情報が残っていないことを確認してください。
どの手順で問題が起きたかを記録し、該当するコマンド、終了コード、機密情報を伏せたログを保存してください。「失敗」と表示された最後の画面だけでなく、最初に出たエラーを確認すると解決の手がかりになります。
まず注文と対象デバイスを確認し、アドレス、ポート、ローカルネットワークからの到達性を調べます。次にユーザー名、鍵のアクセス権、ホスト認証の表示を確認してください。タイムアウトとアクセス拒否は分けて記録し、前者は接続経路、後者は認可を確認します。
プロジェクトの署名設定、ビルド対象、CI実行ユーザーが一致しているか確認します。証明書や秘密鍵の内容をサポート依頼に貼り付けないでください。機密情報を伏せたエラー行と、発生したビルド手順をお知らせください。
手動実行とCIジョブで、Xcodeのパス、依存関係のバージョン、作業ディレクトリ、環境変数の設定元を比較します。まずコンパイルまたはスクリプトで最初に発生したエラーを特定し、キャッシュを削除して再実行する必要があるか判断してください。
空き容量を確認し、プロジェクトファイル、ビルド成果物、依存関係キャッシュ、一時ファイルを区別します。削除前にファイルの所有者を確認してください。継続的により多くの容量が必要な場合は、プランページでストレージの追加オプションをご確認ください。
サポートを依頼する際は、注文に記載されたデバイスのモデルとリージョン、問題の発生時刻、実行したコマンド、最初のエラー箇所、試した手順を添えてください。送信前にトークン、証明書、秘密鍵、個人情報を削除してください。
注文済みの問題は、まずコンソールにログインしてデバイス情報を確認し、該当する注文に紐づけてサポートチケットを送信してください。購入前のプラン選びや未注文のご相談は、お問い合わせページのメール準備リストをご覧ください。サポート依頼にアカウントのパスワードや鍵の全文は不要です。
Apple Silicon搭載の専有物理マシンを3つのプランから選べます。日、週、月、四半期単位でご利用いただけます。モデルと契約期間を確認し、ご注文後にコンソールで接続情報をご確認ください。