JetBrains Space ヘルプ

自動化の概念

Space Automation

Space オートメーションとは何ですか ?

オートメーションの主な目的は CI/CD です。プロジェクトリポジトリに保存されているスクリプトファイルを使用して、プロジェクトをビルド、テスト、デプロイできます。

コードとしての構成

スクリプトはオートメーションを構成する唯一の方法です。Space で表示されるオートメーション UI は、ログ、テスト、アーティファクトなどのスクリプト結果を視覚化するためにのみ使用されます。スクリプトは特別な DSL (ドメイン固有言語) で記述されます。

Kotlin ベースの DSL

DSL は Kotlin(英語) プログラミング言語に基づいているため、自動化スクリプト内で Kotlin データ型と言語構造を使用できます。

例: ubuntu:latest Docker コンテナーで gradlew build を実行する単純なスクリプト:

job("Run gradlew build") { container(image = "ubuntu:latest") { shellScript { content = "./gradlew build" } } }

自動化スクリプト

自動化スクリプトは、プロジェクトのルートディレクトリの .space.kts ファイルに保存する必要があります。.space.kts を編集するには、Space コード Web エディターまたは IntelliJ IDEA のいずれかを使用できます。IDEA では DSL スクリプト用の自動コード補完とコードインスペクションが提供されているため、後者をお勧めします。

プロジェクトリポジトリ内に存在できる .space.kts ファイルは 1 つだけであることに注意してください。

主な概念

ステップ

ステップはオートメーションの主要な構成要素です。以下について説明します。

  • 実行する必要があるもの: コマンド、シェルスクリプト、または Kotlin コード。

  • そしてそれを実行する必要がある場所:

    • ホストマシン (ワーカー) – host の手順

    • またはワーカー – container ステップ内のコンテナー内

詳細 | DSL を参照

作業

ジョブは、ステップで構成される定義されたタスクです。最も単純な自動化スクリプトは 1 つの job で構成され、さらに 1 つのステップで構成されます。依存ジョブのチェーンを作成することはできないことに注意してください。1 つのスクリプト内のすべてのジョブは常に並行して実行されます。

詳細 | DSL を参照

ワーカー

オートメーションジョブを実行するホストマシン。ワーカーには、Space が提供するクラウドワーカー (仮想マシン) と、独自のインフラストラクチャ上でセットアップして実行できるセルフホスト型ワーカー~ ワーカーの 2 種類があります。

詳細

デプロイ

ソースコードの変更をデプロイ環境 (デプロイターゲット) に配信するプロセス。

詳細

デプロイ対象

デプロイの宛先ターゲットです。例: ステージングサーバー、実稼働前サーバー、実稼働サーバーである可能性があります。