[chef] Re: Re: Re: Re: Write node config in ruby


Chronological Thread 
  • From: Bráulio Bhavamitra < >
  • To: chef < >
  • Cc: Noah Kantrowitz < >
  • Subject: [chef] Re: Re: Re: Re: Write node config in ruby
  • Date: Wed, 6 Aug 2014 20:32:18 -0300

Thanks Ranjib! I'll try to make a patch the smallest I can and submit a pull request. It is only interesting to use if the code is released into chef.

cheers,
bráulio


2014-07-30 19:58 GMT-03:00 Ranjib Dey < " target="_blank"> >:
i think you should be able to do this. chef has a mixin (lib/mixin/from_file) that essentially read the content of a file and then does instance eval. Chef::Node object already include this (like environment, role etc).I think all you have to do is to write the knife wrapper. Knife too has handy methods for all from_file functionality (lib/chef/knife/core/object_loader.rb) , check that as well. and finally look at (lib/chef/knife/environment_from_file.rb) for an example.
Chef nodes are registered via the validation/registration process, and run list are added using the first-boot.json, hence i think this method was never used. So just give it a try , and let us know how it goes :-)

I tried this and it works for me:
--- node_1.rb
name 'node-1'
run_list << 'role[foo]'
----

irb>>
Chef::Node.new.from_file('node_1.rb')
....


cheers
ranjib


2014-07-30 14:25 GMT-07:00 Bráulio Bhavamitra < " target="_blank"> >:

Could you please indicate where in chef I should update and patch? I'll create a pull request.

thankfully,
bráulio



2014-07-30 17:34 GMT-03:00 Noah Kantrowitz < " target="_blank"> >:

No, this is not possible currently. You could write your own scripts for this though.

--Noah

On Jul 30, 2014, at 10:08 AM, Bráulio Bhavamitra < " target="_blank"> > wrote:

> Hello all,
>
> JSON is really an annoying format: I can't leave , on the last element of an array, it doesn't allow ' (single quote), it doesn't support multiline strings, among other problems...
>
> I would like to write my chef node configuration in Ruby or Yaml, is it possible?
>
> cheers,
> bráulio
>
> --
> "Lute pela sua ideologia. Seja um com sua ideologia. Viva pela sua ideologia. Morra por sua ideologia" P.R. Sarkar
>
> EITA - Educação, Informação e Tecnologias para Autogestão
> http://cirandas.net/brauliobo
> http://eita.org.br
>
> "Paramapurusha é meu pai e Parama Prakriti é minha mãe. O universo é meu lar e todos nós somos cidadãos deste cosmo. Este universo é a imaginação da Mente Macrocósmica, e todas as entidades estão sendo criadas, preservadas e destruídas nas fases de extroversão e introversão do fluxo imaginativo cósmico. No âmbito pessoal, quando uma pessoa imagina algo em sua mente, naquele momento, essa pessoa é a única proprietária daquilo que ela imagina, e ninguém mais. Quando um ser humano criado mentalmente caminha por um milharal também imaginado, a pessoa imaginada não é a propriedade desse milharal, pois ele pertence ao indivíduo que o está imaginando. Este universo foi criado na imaginação de Brahma, a Entidade Suprema, por isso a propriedade deste universo é de Brahma, e não dos microcosmos que também foram criados pela imaginação de Brahma. Nenhuma propriedade deste mundo, mutável ou imutável, pertence a um indivíduo em particular; tudo é o patrimônio comum de todos."
> Restante do texto em http://cirandas.net/brauliobo/blog/a-problematica-de-hoje-em-dia




--
"Lute pela sua ideologia. Seja um com sua ideologia. Viva pela sua ideologia. Morra por sua ideologia" P.R. Sarkar

EITA - Educação, Informação e Tecnologias para Autogestão
http://cirandas.net/brauliobo
http://eita.org.br

"Paramapurusha é meu pai e Parama Prakriti é minha mãe. O universo é meu lar e todos nós somos cidadãos deste cosmo. Este universo é a imaginação da Mente Macrocósmica, e todas as entidades estão sendo criadas, preservadas e destruídas nas fases de extroversão e introversão do fluxo imaginativo cósmico. No âmbito pessoal, quando uma pessoa imagina algo em sua mente, naquele momento, essa pessoa é a única proprietária daquilo que ela imagina, e ninguém mais. Quando um ser humano criado mentalmente caminha por um milharal também imaginado, a pessoa imaginada não é a propriedade desse milharal, pois ele pertence ao indivíduo que o está imaginando. Este universo foi criado na imaginação de Brahma, a Entidade Suprema, por isso a propriedade deste universo é de Brahma, e não dos microcosmos que também foram criados pela imaginação de Brahma. Nenhuma propriedade deste mundo, mutável ou imutável, pertence a um indivíduo em particular; tudo é o patrimônio comum de todos."
Restante do texto em http://cirandas.net/brauliobo/blog/a-problematica-de-hoje-em-dia




--
"Lute pela sua ideologia. Seja um com sua ideologia. Viva pela sua ideologia. Morra por sua ideologia" P.R. Sarkar

EITA - Educação, Informação e Tecnologias para Autogestão
http://cirandas.net/brauliobo
http://eita.org.br

"Paramapurusha é meu pai e Parama Prakriti é minha mãe. O universo é meu lar e todos nós somos cidadãos deste cosmo. Este universo é a imaginação da Mente Macrocósmica, e todas as entidades estão sendo criadas, preservadas e destruídas nas fases de extroversão e introversão do fluxo imaginativo cósmico. No âmbito pessoal, quando uma pessoa imagina algo em sua mente, naquele momento, essa pessoa é a única proprietária daquilo que ela imagina, e ninguém mais. Quando um ser humano criado mentalmente caminha por um milharal também imaginado, a pessoa imaginada não é a propriedade desse milharal, pois ele pertence ao indivíduo que o está imaginando. Este universo foi criado na imaginação de Brahma, a Entidade Suprema, por isso a propriedade deste universo é de Brahma, e não dos microcosmos que também foram criados pela imaginação de Brahma. Nenhuma propriedade deste mundo, mutável ou imutável, pertence a um indivíduo em particular; tudo é o patrimônio comum de todos."
Restante do texto em http://cirandas.net/brauliobo/blog/a-problematica-de-hoje-em-dia


  • [chef] Re: Re: Re: Re: Write node config in ruby, Bráulio Bhavamitra, 08/06/2014

Archive powered by MHonArc 2.6.16.

§