-
What's the Gemfile.lock in chef for?
chef uses a Gemfile and gemspec to control the ruby components we bring into Chef and the ChefDK. These files specify constraints such as "chef MUST have test-kitchen version 1.7 or greater!" but do not specify exact versions, so when new copies of dependencies (like test-kitchen) come out, we can pick them up without changing the
Gemfile
. The Gemfile.lock is a set of explicit versions ("Use version 1.7.1 of test-kitchen") generated by running theGemfile
one day.This is important because it locks down the set of dependencies we tested at, so that we have a "last known good" build. More importantly, it means that we can update our dependencies deliberately and safely through a Pull Request that goes through all testing. This means that
master
only ever gets aGemfile.lock
that has actually passed the tests. -
Why put a Gemfile.lock in chef?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <stdint.h> | |
#include <arm_neon.h> | |
// | |
// Detect Unicode errors. | |
// | |
// UTF-8 is designed to allow multiple bytes and be compatible with ASCII. It's a fairly basic | |
// encoding that uses the first few bits on each byte to denote a "byte type", and all other bits | |
// are straight up concatenated into the final value. The first byte of a multibyte character is a |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
property :environment_name, String, name_property: true | |
property :num_databases, Integer, default: 1 | |
property :num_webservers, Integer, default: 1 | |
action :create do | |
1.upto(num_databases) do |i| | |
machine "#{environment_name}.db.#{i}" do | |
recipe "postgresql" | |
end | |
end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
~/s/bundle-repro bundler-4690 ./repro.sh | |
# Uninstall all bundle-test-foos and bundle-test-bars | |
gem uninstall bundle-test-bar bundle-test-foo --force | |
+ gem uninstall bundle-test-bar bundle-test-foo --force | |
Successfully uninstalled bundle-test-bar-2.0.0 | |
Successfully uninstalled bundle-test-bar-2.0.1 | |
# Install bundle-test-bar 2.0.0 | |
pushd bar |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
version: 12.10.47 | |
result: | |
timestamp: '2016-05-12T14:56:53-07:00' | |
duration: 8151.036 | |
git_commit: 4b9d5f70ba46eeb0445de1d0fbb11d05d2614cca | |
stages: | |
chef-trigger-release: | |
result: SUCCESS | |
timestamp: '2016-05-12T14:56:53-07:00' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[chef-trigger-release 101 05/11/2016] Failed (chef-test aix-7.1-powerpc) | |
[chef-trigger-release 100 05/11/2016] Failed (chef-test acceptance) | |
[chef-trigger-release 99 05/10/2016] Failed (chef-test acceptance) | |
[chef-trigger-release 98 05/10/2016] Failed (chef-test acceptance) | |
[chef-trigger-release 97 05/10/2016] Failed (chef-test acceptance) | |
[chef-trigger-release 96 05/09/2016] Succeeded | |
[chef-trigger-release 95 05/09/2016] Failed (chef-test acceptance) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
From http://manhattan.ci.chef.co/view/Chefdk/job/chefdk-build/70/architecture=i386,platform=windows-2008r2,project=chefdk,role=builder/console | |
[Builder: berkshelf] I | bundle `install --jobs 10 --without guard': 2151.2407s | |
[Builder: berkshelf] I | Build berkshelf: 2151.3188s | |
The following shell command exited with status 5: | |
$ CFLAGS=-IC:/opscode/chefdk/embedded/include -m32 -O3 -mfpmath=sse -msse2 -march=i686 CPPFLAGS=-IC:/opscode/chefdk/embedded/include -m32 -O3 -mfpmath=sse -msse2 -march=i686 CXXFLAGS=-IC:/opscode/chefdk/embedded/include -m32 -O3 -mfpmath=sse -msse2 -march=i686 LDFLAGS=-LC:/opscode/chefdk/embedded/lib -m32 LD_RUN_PATH=C:/opscode/chefdk/embedded/lib PKG_CONFIG_PATH=C:/opscode/chefdk/embedded/lib/pkgconfig Path=C:/opscode/chefdk/bin;C:/opscode/chefdk/embedded/bin;C:/languages/ruby/2.1.5/lib/ruby/gems/2.1.0/bin;C:\msys\bin;C:\msys\mingw\bin;C:\Program Files (x86)\Git\Cmd;C:\Program Files (x86)\Git\libexec\git-core;C:\languages\ruby\2.1.5\bin;C:\wix;C:\7-zip;C:\Program File |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
driver: | |
name: vagrant | |
forward_agent: yes | |
customize: | |
cpus: 2 | |
memory: 1024 | |
platforms: | |
- name: el-7 | |
driver: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# nil values and validation | |
`nil` setters and property defaults are a big snarl with our system because of | |
this conflict: | |
1. People who don't specify a default value for their property expect the | |
default to be `nil`. | |
2. Some people want `nil` to be an invalid value for their property so that they | |
can simplify their code by not having to handle it. | |
3. Copying a property from one resource to another is a common thing, and the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Filename | Type | Total Contribution | Local Contribution | Used Slots When Finished | |
---|---|---|---|---|---|
chef-client | binary | 48337 | 578 | 101357 | |
> chef/application/client | require | 927 | 398 | 100783 | |
> > chef/workstation_config_loader | require | 92 | 1 | 102533 | |
> > > chef-config/workstation_config_loader | require | 91 | 91 | 102559 | |
> > chef/handler/error_report | require | 14 | 14 | 102442 | |
> > chef/application | require | 423 | 169 | 102429 | |
> > > mixlib/cli | require | 95 | 95 | 103440 | |
> > > chef/local_mode | require | 51 | 51 | 103346 | |
> > > chef/config_fetcher | require | 108 | 52 | 103296 |
NewerOlder