2017-03-23 8 views
0

私の最初の質問:)Ansibleは、私が提供するベイグラントマシンをAnsibleを使用してい浮浪者のマシンにSOコミュニティへ

をGrailsの戦争を構築することはできません。 タスクはtomcat7にgrails warファイルをデプロイすることです。

私は戦争のファイルを構築するためのタスク、私はこのエラーを取得する実行します。私はマシンにSSHを放浪して、warファイルを./gradlew戦争を実行した場合

TASK [Build application] ******************************************************* fatal: [vagrant]: FAILED! => {"changed": true, "cmd": ["sh", "/home/vagrant/src/grailsw", "war"], "delta": "0:00:00.110227", "end": "2017-03-23 12:12:07.728096", "failed": true, "rc": 1, "start": "2017-03-23 12:12:07.617869", "stderr": "Error: Could not find or load main class org.grails.wrapper.GrailsWrapper", "stdout": "", "stdout_lines": [], "warnings": []} to retry, use: --limit @/home/user/work/scratch/vagrant/petclinic_ansible/playbook.retry

は を作成した。しかし、私は「できることです

Vagrant.configure("2") do |config| 

    config.vm.define "vagrant" do |config| 
     config.vm.box = "bento/ubuntu-16.04" 
     config.vm.network :private_network, ip: "192.168.10.10" 

     config.vm.provision "ansible" do |ansible| 
      ansible.playbook = "playbook.yml" 
     end 
    end 

    config.vm.provider "virtualbox" do |vb| 
     vb.memory = "1024" 
     vb.customize ["modifyvm", :id, "--cableconnected1", "on"] 
    end 
end 

そして、ここに私のplaybook.ymlが

です:トンここに私の放浪のファイルがされansible

を使用してWARファイルを作成します

- hosts: all 
become: true 

    roles: 
     - java 
     - servers 

tasks: 
    - name: Make sure src directory doesn't exist 
     file: 
     path: /home/vagrant/src 
     state: absent 
     force: yes 

    - name: Pull repository 
     git: 
     repo: https://github.com/Rcsuax/grails-petclinic.git 
     dest: /home/vagrant/src 
     version: master 

    - name: Build application 
     become: true 
     command: ./home/vagrant/src/grailsw war 

答えて

0

だから私は、コマンド理由はわからない:./home/vagrant/src/grailsw戦争が を動作しませんが、私はシェルモジュールとコマンドモジュールを交換し、そしてそれが今でコンパイルします。うまくいけば、これは似たような問題を持つ他の誰にとっても有益です。 ソリューション:

- name: Build application 
    become: true 
    shell: ./grailsw war 
    args: 
     chdir: src/ 
     creates: target/petclinic-0.2.war 
    environment: 
     JAVA_HOME: /usr/lib/jvm/java-8-oracle 
関連する問題