Cloudbees を使用すると、サードパーティの Web デザイナーが Web ページを編集できるように、Web ページ (つまりビュー) をアプリケーション (つまりモデル/コントローラー) とは別に保存できますか?それとも、これはアプリを構築する前にのみ行うことができますか? 私は Spring を使用して Java で開発しており、これをローカルで行うことができますが、Cloudbees で行う方法がわかりません。
2 に答える
あなたの質問は、実際には、CloudBees での作業方法ではなく、アプリケーションの構築方法に関するものです。
たとえば Maven を使用してアプリケーションを構築する場合.jar
、アプリケーション コード用の.war
モジュールと Web アプリケーション用のモジュールを含むマルチモジュール プロジェクトにプロジェクトを構成します。2 つの異なるモジュールを別々の SCM リポジトリに配置し、Jenkins に両方をビルドしてもらい、CloudBees の RUN@cloud サービスにデプロイして終了することができます。
これは決して Maven に限定されるものではなく、ANT やそれに値するビルド ツールでも同じことができます。
SCM の選択によって、これが容易になるかどうかが決まります...
SCM として GIT を選択した場合 (そしてすべてのクールな子供たちが GIT を使用している場合)、GIT は、統合されたサブディレクトリ ツリー内の同じ GIT リポジトリで、一度にリリースされるすべてのものを保持するように設計されていることに注意してください。つまり、GIT リポジトリの一部だけを [簡単に] チェックアウト (またはタグ付け) することはできません。したがって、たとえば、GIT リポジトリにマルチモジュール Maven プロジェクトがある場合、すべてのモジュールを同時にチェックアウトする必要があります。Web デザイナーは、
webapp/src/main/webapp
ディレクトリに移動してそれらのファイルを操作し、それを無視する必要があります。他のファイル...ああ、Webデザイナーはとにかく自分のマシンにすべてのファイルを持っています。リリースをカットするときは、すべてを一度にリリースするため、すべてのモジュールが同じバージョン番号になります。これは、新しいアプリケーションをカットすることを意味します.jar
すべての変更が.jsp
ファイルに含まれていたとしてもリリースします... 一方、.jar
リリースをカットするたびに最新のコードを使用していることがわかります。GITサブモジュールのように、解決策かもしれないと思わせる愚行がありますが、これらはあなたが探している解決策ではありません。Subversion を SCM として選択すると、事情が異なります。Subversion を使用すると、ツリーの一部のみをチェックアウトしてタグを付けることができます。したがって、実際には、ツリーの Web ページ部分の SCM URL を Web デザイナーに提供するだけで、その部分だけをチェックアウトして、その部分だけに取り組むことができます。確かに、彼らは分散型 SCM のすべての喜びを失いますが、不必要な気晴らしを見る必要はありません。欠点があります...つまり、変更を検証するために自分で Web アプリケーションを簡単に起動することはできません。彼らは、
.jsp
ファイルに加えた変更によって有効な HTML マークアップが生成されるという推測に限定されています。
私の個人的な推奨事項は、デザイナーは愚かではないということです (または、デザイナーだけが愚かではないかもしれません)。作業が必要なファイルの場所と、そこで作業する場所を伝えます。コードの残りの部分を変更することはありません...とにかく SCM を使用しているため、他の場所で変更を加えたとしても、それらの変更を簡単に元に戻すことができます。デザイナーが見てはいけない秘密のソースがある場合は、そもそもすべてが間違っています。
CloudBees は単にアプリをホストする場所であり、コンテンツの作成方法には影響しません。
そのように作業するには、ビルド パイプラインをセットアップして (「クリック スタート」を参照し、適切なものを見つける)、デザイナーが Web ページを編集できるようにするのが最善です。始めました。