Tôi đang chạy Jenkins trên một hộp linux redhat. Xây dựng của tôi là một dự án mút 2.2.1 chứa các bài kiểm tra selen. Tôi đã có cùng một thiết lập trên một hộp ubuntu mà hoạt động tốt, nhưng khi tôi cố gắng gọi cùng một lệnh maven cấp cao nhất trên máy ảo redhat của tôi, tôi nhận được lỗi sau.Jenkins đang nhận được sự cho phép bị từ chối lỗi khi chạy maven
org.apache.maven.surefire.booter.SurefireExecutionException: Unable to create file for report: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied); nested exception is java.io.FileNotFoundException: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied); nested exception is
org.apache.maven.surefire.report.ReporterException: Unable to create file for report: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied); nested exception is java.io.FileNotFoundException: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied)
org.apache.maven.surefire.report.ReporterException: Unable to create file for report: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied); nested exception is
java.io.FileNotFoundException: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied)
java.io.FileNotFoundException: /var/lib/jenkins/jobs/selenium/workspace/target/surefire-reports/com.MyComp.bio.PreferencesTest.txt (Permission denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:212)
at java.io.FileOutputStream.<init>(FileOutputStream.java:165)
at java.io.FileWriter.<init>(FileWriter.java:90)
at org.apache.maven.surefire.report.AbstractFileReporter.testSetStarting(AbstractFileReporter.java:57)
at org.apache.maven.surefire.report.ReporterManager.testSetStarting(ReporterManager.java:219)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:138)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] There are test failures.
Trong nỗ lực nhằm giải quyết vấn đề này, tôi đã khởi động lại Jenkins
sudo service jenkins restart
nhưng nó vẫn tồn tại. Bất cứ ai chạy vào điều này trước?
Kiểm tra chủ sở hữu/quyền truy cập vào các thư mục đó Jenkins đang nỗ lực để ghi vào. Người dùng mà Jenkins đang chạy phải có khả năng ghi vào thư mục đó hoặc bạn sẽ nhận được giấy phép bị từ chối lỗi – renab
@renab đề xuất của bạn đã cho phép jenkins vượt qua các lỗi cho phép, nhưng quyền giữa các hộp ubuntu và redhat là giống như khi tôi gặp lỗi. Một lần nữa một chmod một + rw cho các tập tin trong câu hỏi có thể là một công việc xung quanh, mặc dù nó có vẻ như tôi vẫn còn thiếu một cái gì đó. – OrwellHindenberg
Jenkins có đang chạy dưới cùng một người dùng trên cả hai hộp Ubuntu và Red Hat không? Nếu có, thì ls -lrt có cho thấy người dùng Jenkins sở hữu các thư mục mà nó đang cố ghi vào không? Quyền sở hữu cũng quan trọng như quyền trong trường hợp này vì quyền có thể chính xác để chủ sở hữu viết thư mục nhưng nếu người dùng viết không phải là chủ sở hữu, điều đó có thể bị từ chối cho phép. – renab