Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

RSS

hubrel (1) Versions 0.2.0

hubrel library cookbook

Policyfile
Berkshelf
Knife
cookbook 'hubrel', '~> 0.2.0', :supermarket
cookbook 'hubrel', '~> 0.2.0'
knife supermarket install hubrel
knife supermarket download hubrel
README
Dependencies
Quality 17%

hubrel

Ruby gem and Chef cookbook for a highly-opinionated GitHub release workflow.

Philosophy

Versioning

We are following Semantic Versioning with the short git commit hash integrated in the build metadata.

If a version contains multiple releases, they shall be ordered by their short git commit hashes according to the master branch.

Release

For every push to the master branch (usually after a pull request), a build will be executed. On every successful build of the master branch, a tag/release shall be created named version+commit. This release will be marked as prerelease in GitHub.

Once the developer is happy with a release, the prerelease tag may be lifted. It is highly advised to make sure all releases have different versions, and not rely on different commit hashes.

Example

master branch (ordered from latest, descending):

message hash
Merge pull request #3 423hgj7
commit vnsdh89
commit asdflkj
Merge pull request #4 345ja87
commit asdf345
commit jlkj987

We will take the example of building on every merge to master. For a given version number 1.3.2, there will be two tags/releases, both tagged as prerelease:
- 1.3.2+423hgj7
- 1.3.2+345ja87

In this case 1.3.2+423hgj7 will take precedence over 1.3.2+345ja87 since it is later in the master branch.

Deployment

Latest prerelase should always be deployed to staging.
Latest release should always be deployed to production.

Implementation

The Ruby gem is used to push releases to GitHub, and the Chef cookbook is used to get the release URL from GitHub (the remote_file resource should be then used for downloading).

The Ruby gem may also be used to purge old releases.

Dependent cookbooks

This cookbook has no specified dependencies.

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric
            

0.2.0 failed this metric

Failure: Cookbook has 1 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric
            

0.2.0 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.0 failed this metric

FC066: Ensure chef_version is set in metadata: hubrel/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: hubrel/metadata.rb:1
FC069: Ensure standardized license defined in metadata: hubrel/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

No Binaries Metric
            

0.2.0 passed this metric

Testing File Metric
            

0.2.0 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.0 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