cookbook 'lmctfy', '~> 0.2.1'
lmctfy (4) Versions 0.2.1 Follow3
Installs/Configures Google's Let Me Contain That For You
cookbook 'lmctfy', '~> 0.2.1', :supermarket
knife supermarket install lmctfy
knife supermarket download lmctfy
chef-lmctfy
Description
Installs/Configures Google's Let Me Contain That For You. Please see [COMPATIBILITY.md](COMPATIBILITY.md) for more information about LMCTFY versions that are tested and supported by cookbook versions along with LWRP features.
Requirements
Platforms
- Ubuntu 12.10, 13.04, 13.10
Upcoming Platforms
- CentOS 6 (requires newer g++, CentOS devtoolset-1.1 likely in another cookbook)
- Fedora 17+ (should work, requires testing)
- RHEL 6 (requires newer g++, Red Hat devtoolset-1.1 likely in another cookbook)
- Ubuntu 12.04 (requires newer g++, ubuntu-toolchain-r likely in another cookbook)
Cookbooks
Third-Party Cookbooks
Attributes
These attributes are under the node['lmctfy']
namespace.
Attribute | Description | Type | Default |
---|---|---|---|
init | lmctfy init specification | String | "" |
install_dir | Installation directory for LMCTFY | String | auto-detected (see attributes/default.rb) |
install_type | Installation type for LMCTFY ("source" is only available currently) | String | "source" |
cgroups Attributes
These attributes are under the node['lmctfy']['cgroups']
namespace.
Attribute | Description | Type | Default |
---|---|---|---|
packages | cgroups packages for installation | String | auto-detected (see attributes/default.rb) |
Source Attributes
These attributes are under the node['lmctfy']['source']
namespace.
Attribute | Description | Type | Default |
---|---|---|---|
ref | Repository reference for LMCTFY source | String | "master" |
url | Repository URL for LMTCFY source | String | "https://github.com/google/lmctfy.git" |
Recipes
-
recipe[lmctfy]
Installs/Configures lmctfy -
recipe[lmctfy::cgroups]
Installs/Configures cgroups -
recipe[lmctfy::lmctfy_init]
Runs lmctfy init -
recipe[lmctfy::source]
Installs lmctfy via source -
recipe[lmctfy::source_cli]
Installs lmctfy CLI via source -
recipe[lmctfy::source_cpp]
Installs lmctfy C++ via source
LWRPs
lmctfy_container
Create a container without spec:
lmctfy_container "my_container" do
spec ""
end
Create a container with spec:
lmctfy_container "my_100mb_container" do
spec "memory:{limit:100000000}"
end
Create a container with spec in config:
lmctfy_container "my_config_container" do
config "/path/to/lmctfy-config"
end
Create a container and run command at same time:
lmctfy_container "my_command_container" do
command "sleep 9999"
nowait true
spec ""
action [:create,:run]
end
Run a command in a container:
lmctfy_container "my_container" do
command "sleep 9999"
nowait true
action :run
end
Kill all processes in a container:
lmctfy_container "my_container" do
action :killall
end
Kill all processes and destroy container at same time:
lmctfy_container "my_container" do
action [:killall, :destroy]
end
Destroy a container:
lmctfy_container "my_container" do
action :destroy
end
Usage
Default Installation
- Add
recipe[lmctfy]
to your node's run list
Testing and Development
Vagrant
Here's how you can quickly get testing or developing against the cookbook thanks to Vagrant and Berkshelf.
vagrant plugin install vagrant-berkshelf
vagrant plugin install vagrant-cachier
vagrant plugin install vagrant-omnibus
git clone git://github.com/bflad/chef-docker.git
cd chef-docker
vagrant up BOX # BOX being ubuntu1204, ubuntu1210, or ubuntu1304
You can then SSH into the running VM using the vagrant ssh BOX
command.
The VM can easily be stopped and deleted with the vagrant destroy
command. Please see the official Vagrant documentation for a more in depth explanation of available commands.
Test Kitchen
Please see documentation in: [TESTING.md](TESTING.md)
Contributing
Please use standard Github issues/pull requests and if possible, in combination with testing on the Vagrant boxes or Test Kitchen suite.
Maintainers
- Brian Flad (bflad417@gmail.com)
Dependent cookbooks
apt >= 0.0.0 |
build-essential >= 0.0.0 |
control_groups >= 0.0.0 |
gflags >= 0.0.0 |
git >= 0.0.0 |
protobuf >= 0.0.0 |
re2 >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
Collaborator Number Metric
0.2.1 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.2.1 failed this metric
FC064: Ensure issues_url is set in metadata: lmctfy/metadata.rb:1
FC065: Ensure source_url is set in metadata: lmctfy/metadata.rb:1
FC066: Ensure chef_version is set in metadata: lmctfy/metadata.rb:1
FC069: Ensure standardized license defined in metadata: lmctfy/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:29
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:35
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:40
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:52
FC121: Cookbook depends on cookbook made obsolete by Chef 14: lmctfy/metadata.rb:1
FC122: Use the build_essential resource instead of the recipe: lmctfy/recipes/source.rb:2
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.2.1 passed this metric
Testing File Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.2.1 failed this metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.2.1 failed this metric
FC064: Ensure issues_url is set in metadata: lmctfy/metadata.rb:1
FC065: Ensure source_url is set in metadata: lmctfy/metadata.rb:1
FC066: Ensure chef_version is set in metadata: lmctfy/metadata.rb:1
FC069: Ensure standardized license defined in metadata: lmctfy/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:29
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:35
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:40
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:52
FC121: Cookbook depends on cookbook made obsolete by Chef 14: lmctfy/metadata.rb:1
FC122: Use the build_essential resource instead of the recipe: lmctfy/recipes/source.rb:2
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.2.1 passed this metric
Testing File Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.2.1 failed this metric
FC065: Ensure source_url is set in metadata: lmctfy/metadata.rb:1
FC066: Ensure chef_version is set in metadata: lmctfy/metadata.rb:1
FC069: Ensure standardized license defined in metadata: lmctfy/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:29
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:35
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:40
FC085: Resource using new_resource.updated_by_last_action to converge resource: lmctfy/providers/container.rb:52
FC121: Cookbook depends on cookbook made obsolete by Chef 14: lmctfy/metadata.rb:1
FC122: Use the build_essential resource instead of the recipe: lmctfy/recipes/source.rb:2
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.2.1 passed this metric
Testing File Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.2.1 failed this metric
0.2.1 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number