2012-03-29 36 views
9

Khi tôi chạy triển khai mũ của tôi, nó than phiền rằng nó không thể truy cập các tập tin đăng nhập:Cap triển khai không tạo ra phần thư mục/log

Rails Error: Unable to access log file. Please ensure that /var/superduperapp/releases/20120329011558/log/production.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.

Dường như tôi phải tự tạo một thư mục log . Có cách nào để làm điều này với Capistrano để bất cứ ai đang triển khai nó không phải nhớ để tạo ra các thư mục mỗi khi họ làm một triển khai mới?

Trả lời

20

Các thư mục này sẽ được tạo bởi capistrano khi bạn chạy cap deploy:setup, bạn đã chạy chưa? Để kiểm tra xem mọi thứ có ổn không, bạn có thể chạy cap deploy:check trước nó.

3

Bạn có thể tạo một nhiệm vụ tùy chỉnh để tạo ra thư mục này và khởi động nó là nhiệm vụ đầu tiên:

task :create_log_share do 
    run "mkdir -p #{shared_path}/log" 
end 
before 'deploy:update', :create_log_share 

Thư mục này không cần phải được tạo ra mỗi lần khi bạn triển khai. Một lần là đủ. Thư mục được chia sẻ không bao giờ thay đổi.

+0

Cảm ơn @shingara, đã làm việc cho tôi. Bây giờ tôi chỉ cần tìm ra lý do tại sao máy chủ Unicorn của tôi không hiển thị bất cứ điều gì trong thiết bị đầu cuối bên cạnh: 'SIGWINCH bị bỏ qua vì chúng ta không được daemon hoá '. Hmm .. –

Các vấn đề liên quan