2016-04-30 8 views
2

Ich benutze ansible, um die Bereitstellung für meine Schienen App zu tun. Das Problem ist, wenn ein neues Juwel hinzugefügt wird und die ansible läuft bundle install, es wird folgende Fehler gibt:stderr/usr/local/bin/bundle: argument list zu lang, während Paket installieren

stderr /usr/local/bin/bundle: argument list too long 
/usr/local/bin/bundle: line 7: /usr/local/bin/bundle: success 

Das ansible Aufgabe Bündel zu tun installieren ist

- name: Bundle install 
    command: 'bundle install --deployment --without development test' 
    register: bundler 
    args: 
    chdir: '/home/ubuntu/myproject' 

ich rvm bin mit Ruby verwalten Ausführung. Unter Verwendung von Ruby-2.2.1 und ich habe rvm gesetzt, um einen Satz von meinem Projekt zu verwenden, d. H. rvm use [email protected].

Das .rvm/gems/ Verzeichnis ruby-2.2.1/[email protected]/[email protected]/

habe ich passenger_ruby /home/ubuntu/.rvm/wrappers/[email protected]/ruby angegeben haben

Dies geschieht nur, wenn neue Juwel in Gemfile hinzugefügt wird, wenn es nur Code-Aktualisierung ist, funktioniert alles einwandfrei. Wenn ich bundle install ausführe, ssh explizit auf die entsprechende Instanz ausführend, funktioniert es gut und installiert den Edelstein. Irgendwelche Hilfe und Vorschläge zu diesem Thema?

+1

Ich weiß nicht viel über ansible sondern nur die Form error message Ich nehme an, dass es nicht den Bundle der rvm-Version abholt, sondern ein System (in '/ usr/local'). Vielleicht könnte dies das Problem sein. – BoraMa

Antwort

1

Ich habe das Problem. Das Problem wurde im Zusammenhang mit dem Weg des Bündels durch das Skript war /usr/local/bin/bundle verwendet werden, aber es sollte von /home/ubuntu/.rvm/gems/[email protected]/bin/bundle

sein Die richtige Aufgabe ansible ist

- name: Bundle install 
    command: bundle install --without development test 
    args: 
    chdir: /home/ubuntu/myproject 
    executable: /home/ubuntu/.rvm/gems/[email protected]/bin/bundle 
    environment: 
    GEM_HOME: /home/ubuntu/.rvm/gems/[email protected] 
    GEM_PATH: /home/ubuntu/.rvm/gems/[email protected]:/home/ubuntu/.rvm/gems/[email protected]