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

RSS

gitolite-server (1) Versions 1.0.1

Installs/Configures gitolite-server

Berkshelf/Librarian
Policyfile
Knife
cookbook 'gitolite-server', '~> 1.0.1'
cookbook 'gitolite-server', '~> 1.0.1', :supermarket
knife cookbook site install gitolite-server
knife cookbook site download gitolite-server
README
Dependencies
Quality

= DESCRIPTION:

Installs and configures Gitolite Gitolite is autoconfigured from "users" data bag. Users should have "ssh_keys" attribute containing their public SSH keys, "gitolite_repos" attribute with name or list of names of repositories with read_write access, and "gitolit_repos_ro" with a name or a list of names of repositories with read-only access.

= REQUIREMENTS:

  • git
  • ssh_known_hosts
  • Users databag
  • Gitolite databag -> is created if it doesnt exist (Server client needs admin rights otherwise create the DB yourself) { "id" : "key", "key_pri":"asdjadlfkgjalgjkalgjh.....", "key_pub":"ssh-rsa asfadfgalgknagkl...." }
  • Deploy key
  • Git server node client is admin in chef ( if you dont want to create the gitolite DB)

= USAGE:

Installs the Gitolite cookbook on a server that will become your git server. It will setup the gitolite admin repository in /srv/gitolite/repositories Everytime chef runs on the git server the cookbook will do the following:

  • Adds keys and repos if there is a new user added to an existing repository or it will create an new repository if it doesn't exist.
  • The Cookbook checks which repos to make or amend by using the users databag and checking the attributes gitolite_repos or gitolite_repos_ro and adding the users with RW+ permissions or R permissions
  • The cookbook assumes that you use a deploy-key to deploy your code from the repositories. It therefore adds the apache user(cause we use this to deploy code to a LAMP stack) to every repo with the public key it grabs from the gitolite databag. The private key can be copied to other servers and added to the apache user or it can be added to a custom cookbook that grabs the key from the gitolite databag.
  • It checks to see if there are users that can be added to the gitolite group which can also add to the admin repository.

Platform Tested on Ubuntu 12.04 LTS

= EXAMPLE:

This is an example of a user .json file.

{ "id":"admin", "ssh_keys":"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAgEA..........." "password": "asdjhalkf....", "groups": [ "sysadmin","gitolite" ], "uid": 2001, "shell": "\/bin\/bash", "gitolite_repos": ["projectx","projecty","projectz"], "gitolite_repos_ro":["projecta","projectb","projectc"], "comment": "admin@localhost.com" }

= TODO

The management of the gitolite databag needs to be made. The cookbook assumes an configures gitolite databag for the apache user key.

Dependent cookbooks

ssh_known_hosts >= 0.0.0
git >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric
            

1.0.1 failed this metric

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

Contributing File Metric
            

1.0.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 http://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file

Foodcritic Metric
            

1.0.1 failed this metric

FC064: Ensure issues_url is set in metadata: gitolite-server/metadata.rb:1
FC065: Ensure source_url is set in metadata: gitolite-server/metadata.rb:1
FC066: Ensure chef_version is set in metadata: gitolite-server/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: gitolite-server/metadata.rb:1
FC069: Ensure standardized license defined in metadata: gitolite-server/metadata.rb:1
Run with Foodcritic Version 10.3.1 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

License Metric
            

1.0.1 passed this metric

No Binaries Metric
            

1.0.1 passed this metric

Publish Metric
            

1.0.1 passed this metric

Supported Platforms Metric
            

1.0.1 failed this metric

gitolite-server should declare what platform(s) it supports.

Testing File Metric
            

1.0.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 http://github.com/user/repo, and your repo must contain a TESTING.md file

Version Tag Metric
            

1.0.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 http://github.com/user/repo, and your repo must include a tag that matches this cookbook version number