0

バックグラウンド

構成ファイルを使用して AWS の Elastic Beanstalk をカスタマイズする新しいアプローチを使用するには、YAML 構成ファイルを.ebextensionsフォルダーに指定し、それを WAR ファイル構造のルートに配置してから、Tomcat にデプロイする必要があります。

Web アプリケーションがデプロイされている OS に固有のコマンドが含まれているため、構成ファイルをソース コード リポジトリに配置することは本当に避けたいと考えています。また、これらの構成ファイルを Web アプリのソース コードと結合するべきではないと思います。

問題

問題は、この構成ファイルを.ebextensions何らかの方法で取得し、maven が最終的な WAR ファイルを作成してデプロイする準備ができる直前にルートに配置する必要があることです。

構成ファイルを特定のフォルダーに配置するディレクトリ構造を維持する必要があるため、zip ファイルのみを利用可能にすることができます。これを解凍し、maven によって WAR ファイルのルートに配置する必要があります。

私の質問は、maven を介してこれを自動化する方法があるか、それとも別のアプローチを取る必要があるかということです。

4

2 に答える 2

2

これは私を助けました: http://www.jcabi.com/jcabi-beanstalk-maven-plugin/example-ebextensions.html

これを試すこともできます: SBT を使用して、WAR ファイルのルート内に隠しフォルダーをパッケージ化する方法は?

于 2014-01-05T09:44:28.797 に答える
0

ビルド ジョブが実行される前に実行されるシェル スクリプトを作成することになりました。以下の通りでした。

# This set of of commands will fetch the EC2 customization commands from S3 & package it inside the WAR file which will be then deployed to the server.
pwd
ls -la
# Create "temp" directory to put the fetched configs in to.
mkdir -p temp
ls -la temp/
rm -rf temp/*
cd temp
# Fetch the configs
s3cmd sync -vrf s3://tanzchantz.cdn/resources/configuration/ebs/customize-webapps-container/ .
tree -afphug .
# Copy the configs in to webapp directory
cp -rv . ../webapps-main/src/main/webapp/
cd ..
ls -la webapps-main/src/main/webapp/
于 2014-01-06T19:59:08.603 に答える