GithubHelp home page GithubHelp logo

chef-gitolite's Introduction

gitolite

This cookbook sets up gitolite service. Also includes a LWRP.

Build Status

Requirements

Platform

  • Debian / Ubuntu

Cookbooks

  • perl
  • git

Recipes

  • gitolite - This recipe installs Gitolite dependencies perl and git.
  • gitolite::basic - Sets up the gitolite basic installation.

Attributes

See attributes/default.rb.

  • node['gitolite']['username'] - The dedicated userid for gitolite.
  • node['gitolite']['group'] - The group for your gitolite user. (optional)
  • node['gitolite']['admin'] - The admin name for your gitolite instance.
  • node['gitolite']['version'] - Set dev or stable version.
  • node['gitolite']['ssh_key'] - Set the ssh_key string.
  • node['gitolite']['ssh_path'] - Set the ssh_path path.

Resources/Providers

The cookbook contains an LWRP, gitolite_user. This can be used with the normal Chef service resource.

gitolite_user

Manage a gitolite resource (installation).

Actions:

Action Description Default
create Create the user. Yes
remove Destroy the user.

Parameter Attributes:

Parameter Description Default
group Group to sets
home The HOME path
version gitolite version stable
ssh_key SSH Key string
ssh_path SSH Path

LWRP Examples

Create a gitolite user (option #1)

gitolite_user 'git' do
  home    '/home/git'
  version 'stable' #or dev
  ssh_key 'ssh-rsa...'
end

Create a gitolite user (option #2)

gitolite_user 'git' do
  home    '/home/git'
  version 'stable' #or dev
  key_path '/home/admin/.ssh/id_rsa.pub'
end

Remove a gitolite user

gitolite_user 'git' do
  action :delete
do

Usage

Simply include recipe[gitolite] in your run_list and the gitolite_user resource will be available. See examples of the LWRP usage above.

Development

Pull requests are very welcome! Make sure your patches are well tested. Ideally create a topic branch for every seperate change you make.

License and Author

Author:: Julio Napuri [email protected]

Copyright:: 2012, Julio Napuri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

chef-gitolite's People

Contributors

glensc avatar julionc avatar sliim avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

chef-gitolite's Issues

Understanding where gitolite_user is defined

This gitolite cookbooks works great, but after reading and re-reading the code, I cannot figure out where the gitoite_user command is defined. I don't know Ruby. I'm just beginning with Chef. The methods defined in providers/user.rb seem like they would be useful to add user ssh_keys to the gitolite keydir on install, but not knowing how or where those methods are invoked, has left me stumped. Could you please explain or point me to a tutorial that explains the technique you have used for this cookbook? Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.