PowerBuilderのための継続的インテグレーション

CI/CDワークフローの自動化

PowerBuilderのためのJenkins、GitLab、Azure DevOps、GitHub Actions

PowerBuilderの継続的インテグレーションにオートメーションサーバーを使用

オートメーションサーバーは、ビルド、テスト、配布などの作業を自動化するためのものです。PowerBuilderアプリケーションに継続的インテグレーションと継続的デリバリを導入するのに役立ちます。オートメーションサーバーの選択肢は、ここ数年で大きく広がっています。

PowerBuilderでよく使われるオートメーションサーバー:

  • Jenkins - オープンソースのオートメーションサーバー
  • GitLab CI/CD - GitLabプラットフォームに組み込み
  • Azure DevOps - MicrosoftのDevOpsスイート(クラウド、またはAzure DevOps Serverによるオンプレミス)
  • GitHub Actions - GitHubに組み込み
  • AWS CodePipeline / CodeBuild - Amazon Web Servicesのソリューション

オートメーションサーバーで継続的インテグレーション・ワークフロー(またはパイプライン)を作成するには、いくつかの連続したジョブ/タスクを設定する必要があります。サーバーは、新しいビルドが利用可能になったときなど、指定されたとおりに各タスクをトリガーし、その実行に関するフィードバックを提供します。

場合によっては、特定のツールの統合/設定を簡略化するためのプラグインが利用可能です。

PowerBuilder 2025および2025 R2:強化されたCI/CD

PowerBuilder 2025および2025 R2では、PowerBuilderのCI/CDを強化する大幅な改善が加えられ、継続的インテグレーションがより高速、シンプル、堅牢になりました。

CI/CDの主な機能

機能 PowerBuilder 2022 PowerBuilder 2025
コンパイラ 従来のPBLコンパイラ 新しい超高速コンパイラ
2~3倍高速
マルチスレッド、ASTベースのコンパイル 「Solution」形式のみ
ソースコードの保存形式 バイナリ形式の独自PBLファイル プレーンテキストのソースコード
Git/SVNとのネイティブな互換性
ソースコードとPコードの分離
Git/SVNとの統合 標準サポート 強化されたネイティブ統合
互換性とパフォーマンスの向上
ソースコードの順序を保持
CI/CDのサポート PBAutoBuild220.exeを提供
スタンドアロン、IDEライセンス不要
PBCをPBAutoBuildに統合
「Deploy only」(配布のみ)オプション。ビルドマシンにPowerBuilder IDEやライセンスは不要
プロジェクトの変換 「workspace」プロジェクトのみ ワンクリック変換
Workspace → Solution(一方向)
「workspace」形式も引き続きサポート

柔軟なプロジェクト形式

PowerBuilder 2025は、2つのアプローチをサポートしています。

  • 「Solution」形式:プレーンテキストのソースコード。新しいコンパイラに対応
  • 従来の「workspace」形式:このアプローチを必要とするプロジェクト向けにPBLを維持

どちらの形式を選ぶかは、各プロジェクト固有の技術的制約によって決まります。

「Solution」形式は、CloudProエディションおよびProfessionalエディションで利用できます。マシンコード、ORCAScriptによるコンパイル、PBNativeおよびSCC API、PowerServerのcursory(超高速)ビルドモード、および一部のPowerBuilder関数には対応していません。

ソース管理とビルドに関するPowerBuilder 2025 R2の改善点

  • ソース管理の履歴:workspaceをsolutionに変換する際に保持されます
  • Git操作:IDEから直接FetchとRebaseを実行できます
  • インクリメンタルビルド:実行時やデバッグ時に自動インクリメンタルビルドを無効化できます
  • ビルドレポート:配布後に、成功・失敗・スキップしたPBDの一覧を表示します
  • パフォーマンス:大規模なsolutionでメモリ使用量を最大50%削減

ステップ 1:自動ビルド生成

ジョブは、PowerBuilderのコードをGITやSVNのリポジトリから取得できます(solution形式の場合はプレーンテキストのソースファイル、workspace形式の場合はPBL)。そして、PBAutoBuildを使って、オートメーションサーバーはPowerBuilderまたはPowerServerのビルドを生成できます。

マルチプラットフォームの構成

主要なオートメーションサーバーはPowerBuilderに対応しています。

Jenkins
  • Git、SVN、Azure Repos(Azure DevOps)用プラグイン
  • サードパーティ製プラグインによる拡張性
  • Docker構成に対応
GitHub Actions / GitLab CI / Azure DevOps
  • リポジトリとのネイティブ統合
  • YAMLによる構成
  • クラウドおよびセルフホストのランナー

PowerBuilder 2019、2017をお使いの方は、こちらの記事を参考に、従来のツール「PowerBuilder Compiler」の使い方をご確認ください。

ステップ 2:Visual Expertによるコード検証の自動化

オートメーションサーバーでは、コマンドラインでVisual Expertを呼び出すか、Jenkinsをお使いの場合はVisual Expertプラグインを使用することで、コード検証を自動化できます。

ステップ 3:AscentialTestによる自動テスト

コマンドラインでAscentialTestを呼び出すか、AscentialTestが提供するJenkinsまたはAzure DevOpsのプラグインを使用することで、PowerBuilderやPowerServerアプリケーションのテストも自動化できます。

まとめ

PowerBuilder 2025は、2025 R2でさらに改良され、大きな転換点となりました。利用可能なさまざまなオートメーションサーバー(Jenkins、GitLab CI/CD、Azure DevOps、GitHub Actions)と組み合わせることで、PowerBuilderチームは堅牢なCI/CDワークフローを導入するための選択肢を広げることができます。