4Dで継続的インテグレーションを導入する方法: ステップ・バイ・ステップ

ソフトウェア開発の世界では近年、”継続的インテグレーション” という新しい概念が登場しました。それについて、私たちがあちこちで見聞きする定義は、次のようなものです:

“CI とは、アプリケーションのコンパイル・テスト・リリースを自動化し、定期的かつ頻繁におこなうプロセスである”

興味深く有望なプロセスであることは理解できますが、4D に実装するためには何をすればいいのでしょうか? インターネットを検索すれば、多くの CIツールやフレームワークが見つりますが、これらの CIツールを使うには、いくつかの前提条件があります。

(最後に日本語の解説動画へのリンクもありますので、お見逃しなく!)

ステップ1: 4Dアプリケーションをプロジェクトに変換する

4D で CI を実装するには、まず、4Dアプリケーションをプロジェクトに変換する必要がありますつまり、アプリケーションが現在バイナリーモードの場合、プロジェクトモードに移行しなければなりません。変換中、”.4DB” バイナリーファイルは、いくつかの大きなテキストファイルに分割され、それをソース管理システムで管理することができます。

プロジェクトモードの概念についてはシリーズ化してとりあげていますので、そちらを参照ください:

 

または、以下の 4Dトレーニング を参考にしてください:

ステップ2: ソース管理システムを活用する

Git のようなバージョン管理システムでコードを管理することは、CI導入の成功に不可欠です。

最初のステップとして、まずソース管理システムを試してみたいのであれば、GitHub を試してみるのがよいでしょう。GitHub でアカウントを作成するだけで、プライベートリポジトリやパブリックリポジトリを無料で作成できます。その後、必要に応じて、Git Lab のような組織がホストするソース管理サーバーに投資することができます。

Git と 4D を使い始めるには、以下のブログ記事をご覧ください:

 

チームで、あるいは一人で 4D とソース管理を使って作業する様々な方法を説明する、非常に詳細なガイドがあります:

 

また、4D Summit 2020 のキーノートとセッションもチェックすることをお勧めします:

 

選択したソース管理システムに適応したトレーニングコースを見つけることができます。

ステップ3: インターフェースなしでアプリケーションをコンパイル・ビルドする

インターフェースなしで、ユーザーの介入なしにアプリケーションをコンパイル・ビルドするメソッドまたは関数を設計しなければなりません。これらには、Compile projectコマンドや Build applicationコマンドを使うことができます。

また、Build4Dコンポーネントも利用できます。このコンポーネントを使用すると、コンパイル済みのストラクチャー、コンポーネント、スタンドアロンアプリケーション、またはクライアント/サーバーアプリケーションをビルドできます。このコンポーネントとソースコードは、MITライセンスの下で GitHub から入手できます。つまり、無料で使用することができ、特定のニーズがあれば GitHub上でフォークして好きなように変更することができ、実装において制約なく使用することができます。

Build4Dコンポーネントに関する一連のブログ記事です:

ステップ4: コマンドラインで実行する

アプリケーションのコンパイルとビルドをおこなうスクリプトを書いたら、あとはコマンドラインからスクリプトを実行するだけです。

コマンドラインから、4D やプロジェクトへのパスなど、いくつかの引数を渡すことができます。また、”–user-param” パラメーターを使えば、独自のカスタム情報を渡すこともできます。

コマンドライン実行のための貴重なリソース:

 

アクションやエラーのログを記録したい場合は:

ステップ 5: 各コミットの処理を自動化する

最後のステップは、ソース管理サーバーのコミットごとにスクリプトを起動することです。ソース管理に Git を選択した場合は、単純に Gitアクションを使うことができます。スクリプトを自動化するには、従来の 4D Developer か新しい “tool4D” ツールを使うことができます。

tool4D は、ヘッドレスモードでの CLI実行のために設計され、CIプロセスの自動化のために最適化された特別なツールです。tool4D は、自動でヘッドレスモードで実行されます。アプリケーションサーバー、Webサーバー、SQLサーバー、4D Write Pro および 4D View Proコンポーネントなど、一部の機能は利用できません。tool4D の実行にライセンスは不要なので、仮想マシンにライセンスをインストールすることなく、コンパイルやビルドを簡単に自動化できます。

Gitアクションと tool4D の活用については、以下のブログ記事をご参照ください:

 

そして、この 4Dトレーニングを参考にしてください:

まとめ

結論として、4D に CI を導入することで、開発ワークフローを大幅に改善することができます。プロジェクトにコンバートすることから始めましょう。次に、バージョン管理システムの概念に慣れましょう。アプリケーションをコンパイルしてビルドするためのスクリプトを書いてみましょう。最後に、コミットごとにプロセスを自動化します。

4D で公開されている 90分のトレーニングコース (英語) で、これらのステップをすべて詳しく見ることができます。

また、日本語では「GitHubで4Dプロジェクトを管理するには(Part 1Part 2Part 3Part 4)」を YouTube で配信していますので、ぜひご覧ください。

これらのステップで、継続的インテグレーションのエキサイティングな世界に飛び込む準備が整います!

Vanessa Talbot
- プロダクトオーナー - Vanessa Talbotは、2014年6月に4Dプログラムチームに参加しました。プロダクトオーナーとして、彼女はユーザーストーリー(ユーザーが期待する新機能とその使用法)を書き、それを具体的な機能仕様に変換する役割を担っています。また彼女の役割は、実装された機能が顧客のニーズを満たしているかどうかを確認することでもあります。入社以来、4Dにおける主要機能の定義に関わってきました。プリエンプティブ/マルチスレッドの新機能の大部分と、非常に複雑なテーマである組み込みアプリケーションの新アーキテクチャに取り組んできました。VanessaはTelecom Saint-Etienneで学位を取得後、Criminal Research Institute でオーディオビジュアル部門の開発者としてキャリアをスタートさせました。また、メディアや医療の分野でも、技術サポートやプロダクションの分野で働いてきました。