同様の問題があります。 ターゲットディレクトリに対する権限がない場合は、Jenkinsの「ビルド後」アクションにファイルをコピーする方法
Jenkins ワークスペースで次にファイルを移動/コピー/rsync する意向があります。
/var/www/アプリケーション
権限が次に設定されている
Apache:Apache
グループにJenkinsを追加しました。 Apacheただし、jenkinsインスタンスはファイルを/var/www/appにコピーできません。
また、/var/www/appの権限をapache:jenkinsに設定しようとしましたが、Jenkinsはまだ次のエラーを吐き出します。権限が拒否されたか、操作が許可されていません。
PS:オペレーティングシステムがcentOSであるという事実を追加することを忘れました。)
編集1:これは実行中のJenkinsスクリプトのログです。
[ワークスペース] $/bin/sh -xe /tmp/hudson1379987233097some_more_numbers.sh + sh /path_to_sh_script/script.sh 増分ファイルのリストを送信
アプリケーション/
rsync: '/var/www/app/application' の権限を設定できません: 操作は許可されません。 (1)
これはスクリプト自体です:)
#!/bin/bash
rsync -avzh /path/to/jenkins/jobs/app/workspace/default/application /var/www/app;
rsync -avzh /path/to/jenkins/jobs/app/workspace/default/library /var/www/app ;
rsync -avzh /path/to/jenkins/jobs/app/workspace/default/public /var/www/app;
ベストアンサー1
コメントで長くて有益な議論を終えた後、次の内容があります。このリンクユーザーが追加された問題を修正しました。
--no-perms --omit-dir-times
オプションでrsync
。
問題を解決するための最初の試み:
短時間でセキュリティ問題に興味がなければ、これを試してみることができると思います。
chmod a+rwx /var/www/app
その後、そのディレクトリに書き込もうとします。サブディレクトリがある場合は、再帰的に実行する必要があります。
chmod --recursive a+rwx /var/www/app
成功すると、徐々に権限の削除を開始することができ、これは問題を正確に特定するのに役立ちます。
ユーザー jenkins がすでに Apache のグループメンバーであることを確認します。
groups apache