私は ES6 AngularJS プロジェクトに取り組んでおり、webpack を使用してすべてを にバンドルしていdist/app.js
ます。
私が使用している CI/CD スタックは SCM - Jenkins - Octopus です。
コードの更新がリポジトリにプッシュされる
Jenkins はリポジトリのクローンを作成し、 を呼び出し
npm install
て、1 つのエントリ ポイントからすべてをバンドルおよび縮小するためgulp
に使用します。gulp-webpack
dist/app.js
- ビルド後、Jenkins はアプリを nuget pkg にパッケージ化し、アプリが IIS にデプロイされる Octopus Deploy にプッシュします。
octopus プロジェクトは複数の環境で動作しており、環境に応じていくつかの構成変数を置き換える方法が必要です。そのために、Octopus は「ファイル内の変数を置換する」展開手順を提供します。
モジュールバンドラーと ES6 を使用しなかったときは、いくつかの角度定数を設定する構成ファイルがあり、それを使用していました。私はconfig.js
ファイルとファイルを持っていconfig.template.js
ます。Octopus はconfig.template.js
ファイル内の変数を置き換え、私はそれをデプロイ後の変数に置き換えるように設定しましconfig.js
たconfig.template.js
。
ただし、今は使用するconfig.js
必要のある変数をエクスポートするプレーンを使用しているだけで、それを関連するファイル (Angular コントローラー関数を含むファイルなど) にインポートします。
このセットアップでは、以前と同じ方法で置換を行うことはできませconfig.js
んdist/app.js
。これを達成する方法についての戦略を考え出すのを手伝ってくれる人はいますか? ビルドの前にスワップしてから、バンドル全体の変数を Octopus に置き換えさせることを考えていましたconfig.js
が、それはかなり非効率的です。config.template.js
app.js