2

私がやった事 :

UbuntuにJenkinsをセットアップしました:

/var/lib/ジェンキンス/

45 分ごとに実行さhg pullhg update --clean default 、bitbucket リポジトリから実行されるジョブがあります。したがって、これは正常に実行されています。フォルダーがあります。

/var/lib/jenkins/jobs/コードのデプロイ

私のリポジトリからの最新の更新されたコードが含まれています。

問題 :

ただし、更新されたコードにアクセスしたい

/var/www/html/[プロジェクト名]

クエリ:

/var/lib/jenkins/Code Deployment フォルダーの代わりに、jenkins ジョブでこのフォルダーを更新できる方法はありますか? /var/www/html/[project-name] をジェンキンスのホームフォルダーとして作成したくないのは確かです。

上記の内容を達成するにはどうすればよいですか。ジョブを実行するたびに、ジョブ フォルダーから目的の場所にフォルダーをコピーする必要がありますか? 解決策を教えてください。私は Jenkins を使用した自動展開の初心者です。

ありがとうございました。

4

2 に答える 2

9

「Advanced」では、Jenkins のホーム ディレクトリを変更せずに、プロジェクトの作業ディレクトリを明示的に選択できます。[カスタム ワークスペースを使用する] ボックスをオンにして、Jenkins がコードをプルしてビルドするディレクトリを設定します。

このセットアップでは、ビルド プロセスが作業ディレクトリで完了するのを待ち、Jenkins が (ほとんどの) ファイルを Web サイトを提供するディレクトリにコピーするためのビルド ステップを追加します。誰か (テスターなど) がサイトを使用している場合、ビルド プロセスを妨げるファイル ロックの問題がありました。

于 2013-09-17T19:22:31.640 に答える
3

これを行う簡単な方法の 1 つは/var/www/html/、コード ディレクトリを指すシンボリック リンクを作成することです。

sudo ln -s /var/lib/jenkins/jobs/"Code Deployement" /var/www/html/[project-name]
于 2013-09-17T20:25:31.380 に答える