2014-03-31 2 views
0

내 간단한 사용자 정의 조리법에 대한 GitHub의의 REPO를 만들었습니다내 맞춤식 요리법이 AWS OpsWorks에서 실행되지 않는 이유는 무엇입니까?

my-cookbook/ 
|- recipes/ 
    |- appsetup.rb 

나는 https://github.com/my-github-user/my-github-repo.git

내가 설치 "주기"에 my-cookbook::appsetup 추가 한 사용자 정의로 요리사 조리법에 환매 특약을 추가했습니다.

구문이 엉망이라면로드되지 않기 때문에 실행 된 것으로 알고 있습니다.

나는 우분투 사용자와의 SSH하여 인스턴스에 로그인
node[:deploy].each do |app_name, deploy| 
    script "install_composer" do 
    interpreter "bash" 
    user "root" 
    cwd "#{deploy[:deploy_to]}/current" 
    code "curl -sS https://getcomposer.org/installer | php && php composer.phar install --no-dev" 
    end 
end 

, 작곡가가 설치되지 않은 :

이 내 appsetup.rb입니다.

node[:deploy].each do |app_name, deploy| 
    execute "installing node" do 
    command "add-apt-repository --yes ppa:chris-lea/node.js && apt-get update && sudo apt-get install python-software-properties python g++ make nodejs" 
    end 
end 

노드가 설치되지 않으며, 로그에 오류가 없습니다 :

나는 또한 (A nodejs 설치) 아무 소용이 다음 시도했습니다. 로그에있는 요리 책에 대한 유일한 언급은 다음과 같습니다 :

[2014-03-31T13:26:04+00:00] INFO: OpsWorks Custom Run List: ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"] 
... 
2014-03-31T13:26:04+00:00] INFO: New Run List expands to ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"] 
... 
[2014-03-31T13:26:05+00:00] DEBUG: Loading Recipe my-cookbook::appsetup via include_recipe 
[2014-03-31T13:26:05+00:00] DEBUG: Found recipe appsetup in cookbook my-cookbook 

어딘가에 중요한 단계가 빠졌습니까? 레시피가 명확하게 인식되고로드되지만 실행되지는 않습니다.

(다음은 가상의 이름입니다 : 내-GitHub의 사용자, 내-github에-REPO, 내 요리 책)

답변

0

을 해당 명령이 자동으로 실패하는 경우, 그것은 & &의 사용이를 가리는 것이 될 수있다 실패.

add-apt-repository의 경우 대화 형 명령입니다. "--yes"옵션을 사용하여 기본적으로 yes로 대답하여 더 이상 대화 형이되지 않게하십시오.

+0

감사합니다. https://github.com/onema/opsworks-chef-cookbooks를 작성한 다음 대신 작곡가와 함께 사용했습니다. 설치 (https://github.com/onema/opsworks-chef-cookbooks) /blob/master/composer/recipes/install.rb)을 설치주기에서 실행했는데 불행히도 아무 것도하지 않았으므로 && : s와 별개로 다른 것으로 가정합니다. – oskarth

0

명령을 성공적으로 실행하지 않으면 현재 디렉토리에서 파일을 찾을 수 없습니다. 마지막 릴리즈 폴더 안쪽을 확인하여 거기에 놓여 졌는지 확인하십시오.

당신에게 CWD를 변경하여 등 설치 올바른 디렉토리를 가지고 있다면 그것은 아마도 신중한 확인 : 대시를 포함 할 수 없습니다/tmp를

+0

그건 좋은 생각이야, 나는 그것을 시도거야! – oskarth

+0

** echo "lorem ipsum1">> /tmp/test.txt**와 같은 스크립트를 사용하여/tmp /에 파일을 만들려고했으나 나중에 인스턴스에 로그인 할 때 파일이 존재하지 않았습니다. 그래서 나는 아직도 상실감에 처해있다. – oskarth

2

귀하의 요리 책 이름을. 나는 '_'로 대체하여 같은 문제를 겪었다.

+0

감사합니다.이 질문이 나온 이후로 요리 책을 버렸습니다. 그래서 내 문제가 해결되었는지 여부는 확인할 수 없습니다. 불행히도! – oskarth

3

요리 책을 버렸음을 알고 있지만 요리 책 루트에 metadata.rb 파일이 없기 때문에 거의 100 % 확신합니다.

+0

다른 사람 (또는 다시 시도하면 도움이 될 것입니다.) – oskarth

+0

이것은 내 문제 였고 파일을 추가해 주셔서 감사합니다. – readyornot

+0

그게 당신을 위해 일했으면 내 대답을 받아주십시오 :) – davepgreene

관련 문제