Using ChefDK on a CI server?

Hi,

I try to set up a CI server using Jenkins for our cookbook testing and
finally uploading to Chef server.

Would you recommend to use ChefDK to run test-kitchen, Berkshelf and so
on, or should I use Bundler and respect the gem versions specified in
the Gemfile?

Thanks for your opinion
Steffen

I'm actually just trying that out (right now blocked on Berkshelf problems)
myself with Bamboo. I am actually wondering if someone will write an
updater cookbook like omnibus-updater, and implement resources like
"chefdk_gem 'knife-ec2'" would be viable so that the CI server config and
chefdk configurations could be managed under Chef.

--
~~ StormeRider ~~

"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."

(from Smallville Season 6x1: "Zod")

On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS

On Sat, May 17, 2014 at 4:01 AM, Steffen Gebert st+gmane@st-g.de wrote:

Hi,

I try to set up a CI server using Jenkins for our cookbook testing and
finally uploading to Chef server.

Would you recommend to use ChefDK to run test-kitchen, Berkshelf and so
on, or should I use Bundler and respect the gem versions specified in
the Gemfile?

Thanks for your opinion
Steffen

In regard to that:

I am actually wondering if someone [..] implement resources like
"chefdk_gem"

:slight_smile:

Steffen

On 17/05/14 13:08, Morgan Blackthorne wrote:

I'm actually just trying that out (right now blocked on Berkshelf problems)
myself with Bamboo. I am actually wondering if someone will write an
updater cookbook like omnibus-updater, and implement resources like
"chefdk_gem 'knife-ec2'" would be viable so that the CI server config and
chefdk configurations could be managed under Chef.

--
~~ StormeRider ~~

"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."

(from Smallville Season 6x1: "Zod")

On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS

On Sat, May 17, 2014 at 4:01 AM, Steffen Gebert st+gmane@st-g.de wrote:

Hi,

I try to set up a CI server using Jenkins for our cookbook testing and
finally uploading to Chef server.

Would you recommend to use ChefDK to run test-kitchen, Berkshelf and so
on, or should I use Bundler and respect the gem versions specified in
the Gemfile?

Thanks for your opinion
Steffen

Upvoted! :slight_smile:

--
~~ StormeRider ~~

"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."

(from Smallville Season 6x1: "Zod")

On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS

On Sat, May 17, 2014 at 4:47 AM, Steffen Gebert st+gmane@st-g.de wrote:

In regard to that:

I am actually wondering if someone [..] implement resources like
"chefdk_gem"

Installing Gem into ChefDK via Chef - Stack Overflow
:slight_smile:

Steffen

On 17/05/14 13:08, Morgan Blackthorne wrote:

I'm actually just trying that out (right now blocked on Berkshelf
problems)
myself with Bamboo. I am actually wondering if someone will write an
updater cookbook like omnibus-updater, and implement resources like
"chefdk_gem 'knife-ec2'" would be viable so that the CI server config and
chefdk configurations could be managed under Chef.

--
~~ StormeRider ~~

"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."

(from Smallville Season 6x1: "Zod")

On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS

On Sat, May 17, 2014 at 4:01 AM, Steffen Gebert st+gmane@st-g.de
wrote:

Hi,

I try to set up a CI server using Jenkins for our cookbook testing and
finally uploading to Chef server.

Would you recommend to use ChefDK to run test-kitchen, Berkshelf and so
on, or should I use Bundler and respect the gem versions specified in
the Gemfile?

Thanks for your opinion
Steffen

if you run chef-client out of the chefdk path, doesn't chef_gem install
into the embedded ruby?

something like:

#!/opt/chefdk/bin/chef-apply

chef_gem "kitchen-docker"

that might go into the ~/.chefdk directory of the user installing it
though so might not be ideal if you run it as root (not sure...)

On 5/17/14, 4:47 AM, Steffen Gebert wrote:

In regard to that:

I am actually wondering if someone [..] implement resources like
"chefdk_gem"
Installing Gem into ChefDK via Chef - Stack Overflow
:slight_smile:

Steffen

On 17/05/14 13:08, Morgan Blackthorne wrote:

I'm actually just trying that out (right now blocked on Berkshelf problems)
myself with Bamboo. I am actually wondering if someone will write an
updater cookbook like omnibus-updater, and implement resources like
"chefdk_gem 'knife-ec2'" would be viable so that the CI server config and
chefdk configurations could be managed under Chef.

--
~~ StormeRider ~~

"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."

(from Smallville Season 6x1: "Zod")

On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS

On Sat, May 17, 2014 at 4:01 AM, Steffen Gebert st+gmane@st-g.de wrote:

Hi,

I try to set up a CI server using Jenkins for our cookbook testing and
finally uploading to Chef server.

Would you recommend to use ChefDK to run test-kitchen, Berkshelf and so
on, or should I use Bundler and respect the gem versions specified in
the Gemfile?

Thanks for your opinion
Steffen

On Saturday, May 17, 2014 at 2:33 PM, Lamont Granquist wrote:

if you run chef-client out of the chefdk path, doesn't chef_gem install
into the embedded ruby?

something like:

#!/opt/chefdk/bin/chef-apply

chef_gem "kitchen-docker"

that might go into the ~/.chefdk directory of the user installing it
though so might not be ideal if you run it as root (not sure...)

On 5/17/14, 4:47 AM, Steffen Gebert wrote:

In regard to that:

I am actually wondering if someone [..] implement resources like
"chefdk_gem"

Installing Gem into ChefDK via Chef - Stack Overflow
:slight_smile:

Steffen

The simplest thing you can do is add the --no-user option to the install, which will install to the embedded gem path instead of the user gem path. It does feel a bit wrong, but we haven’t observed any issues doing this with chef-client omnibus installs so it should be okay.

--
Daniel DeLeo

Steffen,

Here’s and example of how we do it in Jenkins. It’s worked out wondrously.

http://devopslove.blogspot.comhttp://devopslove.blogspot.com/?m=1

On May 17, 2014, at 14:52, “Daniel DeLeo” <dan@kallistec.commailto:dan@kallistec.com> wrote:

On Saturday, May 17, 2014 at 2:33 PM, Lamont Granquist wrote:

if you run chef-client out of the chefdk path, doesn’t chef_gem install
into the embedded ruby?

something like:

#!/opt/chefdk/bin/chef-apply

chef_gem “kitchen-docker”

that might go into the ~/.chefdk directory of the user installing it
though so might not be ideal if you run it as root (not sure…)

On 5/17/14, 4:47 AM, Steffen Gebert wrote:
In regard to that:

I am actually wondering if someone […] implement resources like
"chefdk_gem"


:slight_smile:

Steffen

The simplest thing you can do is add the --no-user option to the install, which will install to the embedded gem path instead of the user gem path. It does feel a bit wrong, but we haven’t observed any issues doing this with chef-client omnibus installs so it should be okay.


Daniel DeLeo