Substituindo atributos pelo Chef Solo

2

Estou tentando instalar o Maven 3 usando o Chef Solo e o seguinte livro de receitas:

link

O livro de receitas instala o Maven 2 por padrão, e a primeira vez que o executei, ele instalou o Maven 2 como esperado.

Mais tarde, modifiquei meu arquivo solo.json para ficar assim:

{
    "maven": {
        "version": "3"
    },
    "run_list": [
        "recipe[java]",
        "recipe[maven]"
    ]
}

Mas o Chef não está atualizando o Maven para a versão 3. Não sei se isso é porque estou especificando incorretamente o atributo override ou se há algum outro problema. Eu uso isso para referência:

link

Obrigado.

    
por Willie Wheeler 15.07.2012 / 01:49

1 resposta

3

Hmm. Deve haver uma saída do chef que indique o que está errado.

Olhando para o livro de receitas, vejo que ele está tentando fazer o download do maven 3 como: link (conforme especificado em maven / attributes / default.rb, como o atributo maven.3.url).

Se você tentar acessar esse URL, você receberá um 404. Assim, o livro de receitas é quebrado de maneira óbvia por causa disso. Isso deveria ter aparecido no log de corrida do chef, no entanto.

Você pode tentar modificar o livro de receitas, pois está desatualizado. Você também pode tentar configurar o atributo maven.3.url para o nó para algo mais atualizado, para que você não toque no livro de culinária nesse caso, por exemplo:

"maven": {
    "version": "3",
    "3": {
      "url": "http://www.apache.org/dist/maven/binaries/apache-maven-3.0.4-bin.tar.gz"
    }
},

ou, se você quiser continuar usando o 3.0.3:

"maven": {
    "version": "3",
    "3": {
      "url": "http://archive.apache.org/dist/maven/binaries/apache-maven-3.0.3-bin.tar.gz"
    }
},
    
por 15.07.2012 / 02:19