cookbook 'repository', '~> 0.1.8'
repository (5) Versions 0.1.8 Follow0
Build package repositories
cookbook 'repository', '~> 0.1.8', :supermarket
knife supermarket install repository
knife supermarket download repository
Repository
Build a repository, using Chef.
Supported
Currently only providing apt based repositories
Usage (easy)
Setup the incoming
repository by adding repository::incoming
to the run list.
This will create a directory (by default at /srv/repository_incoming). Drop
packages there and run Chef. Chef will automatically add them into the
repository. Yay!
Incoming related attributes
default[:repository][:incoming][:codename] = node.lsb.codename default[:repository][:incoming][:name] = 'incoming' default[:repository][:incoming][:architecture] = 'amd64' default[:repository][:incoming][:label] = 'Incoming Repository' default[:repository][:incoming][:description] = 'Incoming repository for dropped off packages' default[:repository][:incoming][:directory] = '/srv/repository_incoming' default[:repository][:incoming][:multi_version] = true default[:repository][:incoming][:enable_locally] = true
Usage (involved)
Adding repository
You can add your own repository components using the repos
array attribute. For
example:
node.set[:repository][:repos] = [ :name => 'my_packages', :codename => 'precise', :architecture => %w(amd64), :multi_version => true ]
or via the LWRP:
repository 'my_packages' do codename 'precise' architecture %w(amd64) multi_version => true end
Adding Packages
Add packages to the repository by using the repository_package
LWRP:
repository_package '/path/to/my/cool/package.deb' do repository 'my_packages' end
Keys
Keys are required to sign packages and repository files. They can be provided
via data bag, encrypted data bag, or automatically generated on the node. By
default the keys will be auto generated using the gpg
cookbook.
Data bag
- To enable data bag based keys:
node.set[:repository][:pgp_data_bag] = true
- To enable encrypted data bag based keys:
node.set[:repository][:pgp_data_bag] = 'encrypted'
Encrypted data bags will use the default secret for decryption.
Data bag structure
{ "id": "pgp", "email": "user@example.com", "private": "PRIVATE KEY CONTENTS", "public": "PUBLIC KEY CONTENTS" }
Infos
- Repo: https://github.com/hw-cookbooks/repository
- IRC: Freenode @ #heavywater
Collaborator Number Metric
0.1.8 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
0.1.8 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.1.8 failed this metric
FC021: Resource condition in provider may not behave as expected: repository/providers/default.rb:68
FC021: Resource condition in provider may not behave as expected: repository/providers/default.rb:79
FC064: Ensure issues_url is set in metadata: repository/metadata.rb:1
FC065: Ensure source_url is set in metadata: repository/metadata.rb:1
FC066: Ensure chef_version is set in metadata: repository/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: repository/metadata.rb:1
FC069: Ensure standardized license defined in metadata: repository/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:17
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:26
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:50
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:89
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:42
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:53
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/incoming.rb:25
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/local_repos.rb:28
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.8 passed this metric
Testing File Metric
0.1.8 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.1.8 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.1.8 failed this metric
0.1.8 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.1.8 failed this metric
FC021: Resource condition in provider may not behave as expected: repository/providers/default.rb:68
FC021: Resource condition in provider may not behave as expected: repository/providers/default.rb:79
FC064: Ensure issues_url is set in metadata: repository/metadata.rb:1
FC065: Ensure source_url is set in metadata: repository/metadata.rb:1
FC066: Ensure chef_version is set in metadata: repository/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: repository/metadata.rb:1
FC069: Ensure standardized license defined in metadata: repository/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:17
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:26
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:50
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:89
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:42
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:53
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/incoming.rb:25
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/local_repos.rb:28
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.8 passed this metric
Testing File Metric
0.1.8 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.1.8 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.1.8 failed this metric
FC021: Resource condition in provider may not behave as expected: repository/providers/default.rb:79
FC064: Ensure issues_url is set in metadata: repository/metadata.rb:1
FC065: Ensure source_url is set in metadata: repository/metadata.rb:1
FC066: Ensure chef_version is set in metadata: repository/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: repository/metadata.rb:1
FC069: Ensure standardized license defined in metadata: repository/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:17
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/configuration.rb:26
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:50
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/default.rb:89
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:42
FC085: Resource using new_resource.updated_by_last_action to converge resource: repository/providers/package.rb:53
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/incoming.rb:25
FC104: Use the :run action in ruby_block instead of :create: repository/recipes/local_repos.rb:28
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.1.8 passed this metric
Testing File Metric
0.1.8 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.1.8 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.1.8 failed this metric
0.1.8 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