2013-10-22 6 views
7

Ich verwende die neueste Version von Capistrano w/meine Rails 4-Anwendung. Wenn cap dpeloy ausgeführt wird. Ich bekomme eine Menge Ausgabe einschließlich dieser Fehler:Capistrano V3 fehlgeschlagen auf database.yml

DEBUG [04b6e226] Running /usr/bin/env [ -f /var/www/skateboxes/releases/20131022135522/config/database.yml ] on 162.243.33.179 
DEBUG [04b6e226] Command: [ -f /var/www/skateboxes/releases/20131022135522/config/database.yml ] 
DEBUG [04b6e226] Finished in 0.280 seconds with exit status 1 (failed). 

Wie finde ich heraus, was hier vor sich geht?

Update # 1

Ich sollte sagen, dass ich config/database.yml gitignored haben (wie durch die Capistrano docs vorgeschlagen wurde). Ich habe dann die folgenden meine config/deploy.rb

set :linked_files, %w{config/database.yml} 

Ich habe dann eine Datei auf meinem VPS bei /var/www/skateboxes/shared/config/database.yml.

Verstehe ich nicht, wie Linked_files funktioniert?

Update # 2

Es stellt sich heraus, dass die Datei tatsächlich shared/conf/database.yml-current/config/database.yml jetzt verwirrt, ich bin so verbunden wird, warum es failed

Update # 3

sagen

Hier ist die gesamte Ausgabe meiner Bereitstellung

DEBUG Uploading /tmp/git-ssh.sh 0.0% 
INFO Uploading /tmp/git-ssh.sh 100.0% 
INFO [37fffef8] Running /usr/bin/env chmod +x /tmp/git-ssh.sh on 162.243.33.179 
DEBUG [37fffef8] Command: (RAILS_ENV=production /usr/bin/env chmod +x /tmp/git-ssh.sh) 
INFO [37fffef8] Finished in 0.282 seconds with exit status 0 (successful). 
DEBUG [d8542e52] Running /usr/bin/env git ls-remote [email protected]:kyledecot/skateboxes.git on 162.243.33.179 
DEBUG [d8542e52] Command: (RAILS_ENV=production GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/git-ssh.sh /usr/bin/env git ls-remote [email protected]:kyledecot/skateboxes.git) 
DEBUG [d8542e52] Finished in 1.448 seconds with exit status 0 (successful). 
DEBUG [d8542e52] e0f96188b9567a84048a0e1238f219abc6351607 HEAD 
DEBUG [d8542e52] e0f96188b9567a84048a0e1238f219abc6351607 refs/heads/master 
DEBUG [d8542e52] Finished in 1.448 seconds with exit status 0 (successful). 
INFO [5a13328b] Running /usr/bin/env mkdir -pv /var/www/skateboxes/shared /var/www/skateboxes/releases on 162.243.33.179 
DEBUG [5a13328b] Command: (RAILS_ENV=production /usr/bin/env mkdir -pv /var/www/skateboxes/shared /var/www/skateboxes/releases) 
INFO [5a13328b] Finished in 0.719 seconds with exit status 0 (successful). 
INFO [293e065b] Running /usr/bin/env mkdir -pv /var/www/skateboxes/shared/config on 162.243.33.179 
DEBUG [293e065b] Command: (RAILS_ENV=production /usr/bin/env mkdir -pv /var/www/skateboxes/shared/config) 
INFO [293e065b] Finished in 0.780 seconds with exit status 0 (successful). 
DEBUG [4eb81576] Running /usr/bin/env [ -f /var/www/skateboxes/shared/config/database.yml ] on 162.243.33.179 
DEBUG [4eb81576] Command: [ -f /var/www/skateboxes/shared/config/database.yml ] 
DEBUG [4eb81576] Finished in 0.744 seconds with exit status 0 (successful). 
DEBUG [89a9e1fa] Running /usr/bin/env [ -f /var/www/skateboxes/repo/HEAD ] on 162.243.33.179 
DEBUG [89a9e1fa] Command: [ -f /var/www/skateboxes/repo/HEAD ] 
DEBUG [89a9e1fa] Finished in 0.734 seconds with exit status 0 (successful). 
INFO The repository mirror is at /var/www/skateboxes/repo 
DEBUG [3cc4d694] Running /usr/bin/env if test ! -d /var/www/skateboxes/repo; then echo "Directory does not exist '/var/www/skateboxes/repo'" 1>&2; false; fi on 162.243.33.179 
DEBUG [3cc4d694] Command: if test ! -d /var/www/skateboxes/repo; then echo "Directory does not exist '/var/www/skateboxes/repo'" 1>&2; false; fi 
DEBUG [3cc4d694] Finished in 0.735 seconds with exit status 0 (successful). 
INFO [1cb24a84] Running /usr/bin/env git remote update on 162.243.33.179 
DEBUG [1cb24a84] Command: cd /var/www/skateboxes/repo && (RAILS_ENV=production /usr/bin/env git remote update) 
DEBUG [1cb24a84] Fetching origin 
DEBUG [1cb24a84] remote: Counting objects: 5, done. 
remote: Compressing objects: 100% (1/1), done. 
DEBUG [1cb24a84] remote: Total 3 (delta 2), reused 3 (delta 2) 
DEBUG [1cb24a84] Unpacking objects: 33% (1/3) 
DEBUG [1cb24a84] Unpacking objects: 66% (2/3) 
Unpacking objects: 100% (3/3), done.jects: 100% (3/3) 
DEBUG [1cb24a84] From github.com:kyledecot/skateboxes 
DEBUG [1cb24a84]  de7f4a1..e0f9618 master  -> master 
INFO [1cb24a84] Finished in 0.817 seconds with exit status 0 (successful). 
DEBUG [edd6c793] Running /usr/bin/env if test ! -d /var/www/skateboxes/repo; then echo "Directory does not exist '/var/www/skateboxes/repo'" 1>&2; false; fi on 162.243.33.179 
DEBUG [edd6c793] Command: if test ! -d /var/www/skateboxes/repo; then echo "Directory does not exist '/var/www/skateboxes/repo'" 1>&2; false; fi 
DEBUG [edd6c793] Finished in 0.732 seconds with exit status 0 (successful). 
INFO [009b81fe] Running /usr/bin/env mkdir -p /var/www/skateboxes/releases/20131022145520 on 162.243.33.179 
DEBUG [009b81fe] Command: cd /var/www/skateboxes/repo && (RAILS_ENV=production GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/git-ssh.sh /usr/bin/env mkdir -p /var/www/skateboxes/releases/20131022145520) 
INFO [009b81fe] Finished in 0.317 seconds with exit status 0 (successful). 
INFO [e9554374] Running /usr/bin/env git archive master | tar -x -C /var/www/skateboxes/releases/20131022145520 on 162.243.33.179 
DEBUG [e9554374] Command: cd /var/www/skateboxes/repo && (RAILS_ENV=production GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/git-ssh.sh /usr/bin/env git archive master | tar -x -C /var/www/skateboxes/releases/20131022145520) 
INFO [e9554374] Finished in 0.356 seconds with exit status 0 (successful). 
INFO [165a7c40] Running /usr/bin/env mkdir -pv /var/www/skateboxes/releases/20131022145520/config on 162.243.33.179 
DEBUG [165a7c40] Command: (RAILS_ENV=production /usr/bin/env mkdir -pv /var/www/skateboxes/releases/20131022145520/config) 
INFO [165a7c40] Finished in 1.174 seconds with exit status 0 (successful). 
DEBUG [c2f7de66] Running /usr/bin/env [ -L /var/www/skateboxes/releases/20131022145520/config/database.yml ] on 162.243.33.179 
DEBUG [c2f7de66] Command: [ -L /var/www/skateboxes/releases/20131022145520/config/database.yml ] 
DEBUG [c2f7de66] Finished in 0.572 seconds with exit status 1 (failed). 
DEBUG [09de2f2c] Running /usr/bin/env [ -f /var/www/skateboxes/releases/20131022145520/config/database.yml ] on 162.243.33.179 
DEBUG [09de2f2c] Command: [ -f /var/www/skateboxes/releases/20131022145520/config/database.yml ] 
DEBUG [09de2f2c] Finished in 0.304 seconds with exit status 1 (failed). 
INFO [05570e6e] Running /usr/bin/env ln -s /var/www/skateboxes/shared/config/database.yml /var/www/skateboxes/releases/20131022145520/config/database.yml on 162.243.33.179 
DEBUG [05570e6e] Command: (RAILS_ENV=production /usr/bin/env ln -s /var/www/skateboxes/shared/config/database.yml /var/www/skateboxes/releases/20131022145520/config/database.yml) 
INFO [05570e6e] Finished in 0.541 seconds with exit status 0 (successful). 
INFO [8499b753] Running /usr/bin/env rm -rf /var/www/skateboxes/current on 162.243.33.179 
DEBUG [8499b753] Command: (RAILS_ENV=production /usr/bin/env rm -rf /var/www/skateboxes/current) 
INFO [8499b753] Finished in 0.762 seconds with exit status 0 (successful). 
INFO [bddc6793] Running /usr/bin/env ln -s /var/www/skateboxes/releases/20131022145520 /var/www/skateboxes/current on 162.243.33.179 
DEBUG [bddc6793] Command: (RAILS_ENV=production /usr/bin/env ln -s /var/www/skateboxes/releases/20131022145520 /var/www/skateboxes/current) 
INFO [bddc6793] Finished in 0.289 seconds with exit status 0 (successful). 
DEBUG [38a6b176] Running /usr/bin/env ls -x /var/www/skateboxes/releases on 162.243.33.179 
DEBUG [38a6b176] Command: (RAILS_ENV=production /usr/bin/env ls -x /var/www/skateboxes/releases) 
DEBUG [38a6b176] Finished in 0.741 seconds with exit status 0 (successful). 
DEBUG [38a6b176] 20131022133912 20131022133939 20131022134435 20131022135522 20131022145350 
DEBUG [38a6b176] 20131022145520 
DEBUG [38a6b176] Finished in 0.741 seconds with exit status 0 (successful). 
INFO Keeping 5 of 6 deployed releases on 162.243.33.179 
INFO [7da6047f] Running /usr/bin/env rm -rf /var/www/skateboxes/releases/20131022133912 on 162.243.33.179 
DEBUG [7da6047f] Command: (RAILS_ENV=production /usr/bin/env rm -rf /var/www/skateboxes/releases/20131022133912) 
INFO [7da6047f] Finished in 0.530 seconds with exit status 0 (successful). 
DEBUG [7cdd5da9] Running /usr/bin/env if test ! -d /var/www/skateboxes/releases; then echo "Directory does not exist '/var/www/skateboxes/releases'" 1>&2; false; fi on 162.243.33.179 
DEBUG [7cdd5da9] Command: if test ! -d /var/www/skateboxes/releases; then echo "Directory does not exist '/var/www/skateboxes/releases'" 1>&2; false; fi 
DEBUG [7cdd5da9] Finished in 0.727 seconds with exit status 0 (successful). 
INFO [906548e8] Running /usr/bin/env echo "Branch master deployed as release 20131022145520 by kyledecot; " >> /var/www/skateboxes/revisions.log on 162.243.33.179 
DEBUG [906548e8] Command: echo "Branch master deployed as release 20131022145520 by kyledecot; " >> /var/www/skateboxes/revisions.log 
INFO [906548e8] Finished in 0.279 seconds with exit status 0 (successful). 
+0

ist diese Datei Teil Ihres Git-Repository? sicher, dass du es nicht getan hast .gitignore es? – phoet

+0

Es wird in der Tat ignoriert. Ich habe meine Frage aktualisiert. –

Antwort

4

Das ist kein Fehler, siehe https://github.com/leehambley/sshkit/pull/33.

Es sagt failed weil die nicht eine Datei ist, damit der Testbefehl ([ aka man (1) test) hat mit dem Status 1 verlassen.

Der Befehl in Frage wird aus this code kommt, im Folgenden wiedergegeben:

desc 'Symlink linked files' 
task :linked_files do 
    next unless any? :linked_files 
    on roles :app do 
    execute :mkdir, '-pv', linked_file_dirs(release_path) 

    fetch(:linked_files).each do |file| 
     target = release_path.join(file) 
     source = shared_path.join(file) 
     unless test "[ -L #{target} ]" 
     if test "[ -f #{target} ]" 
      execute :rm, target 
     end 
     execute :ln, '-s', source, target 
     end 
    end 
    end 
end 
desc 'Check files to be linked exist in shared' 
task :linked_files do 
    next unless any? :linked_files 
    on roles :app do |host| 
    linked_files(shared_path).each do |file| 
     unless test "[ -f #{file} ]" 
     error t(:linked_file_does_not_exist, file: file, host: host) 
     exit 1 
     end 
    end 
    end 
end 

Die Aufgabe Name sagt alles, wirklich, wenn Sie Ihre Datei in dem :linked_files Variable aufgeführt ist, es in shared_path vorhanden sein muss, sonst Dies führt dazu, dass Capistrano abbricht, wenn die Datei nicht existiert.

Sie haben noch nicht gesagt, ob dies dazu führt, dass Ihre Bereitstellung fehlschlägt, und da Sie so wenig vom Protokoll gepostet haben und nichts als normales Verhalten angeben, kann niemand erraten.

Sie erscheinen Protokolle von der Symlink linked files Aufgabe zu veröffentlichen, die fail auf config/database.yml soll, wenn es nicht vorhanden ist, hat es failed es zu finden, so dass es nicht gelöscht werden müssen.

+0

Okay, ich habe meine Frage mit weiteren Details aktualisiert. Vielleicht bin ich verwirrt darüber, was eigentlich passieren soll. –

+0

Sehen Sie sich meine Änderungen an (nicht sicher, ob SO Sie über Änderungen benachrichtigt) –

+0

Die Implementierung schlägt nicht fehl. Ich habe meinen Beitrag mit der vollen Ausgabe aktualisiert. –

Verwandte Themen