經過gitweb管理Puppet配置(nginx版本+lighttpd版)

Puppet路徑爲:/etc/puppetphp

軟件版本:gitweb-1.7.1-3.el6_4.1.noarch
     git-1.7.1-3.el6_4.1.x86_64
     fcgi-2.4.0-12.el6.x86_64
     spawn-fcgi-1.6.3-1.el6.x86_64
     nginx version: nginx/1.6.2
     lighttpd/1.4.35 (ssl) - a light and fast webservercss

1、創建puppet git倉庫node

1.進入puppet 的目錄linux

#cd /etc/puppetnginx

2.初始化並添加文件到版本庫git

#git initgithub

#git add *web

3. 提交到版本庫apache

#git commit -m "init puppet commit"vim

4.克隆出一個bare git倉庫, 添加bare倉庫,至關於/etc/puppet添加了一個分支。

#mkdir -p /data/git

#git clone --bare /etc/puppet /data/git/puppet.git

5.關聯遠程庫

# git remote add -t master origin /data/git/puppet.git

6.克隆分支,在我的家目錄下名爲puppet-king

# cd ~

# git clone /data/git/puppet.git puppet-king

 

2、使用git 管理倉庫

接着上面的介紹,簡單介紹而後使用git管理倉庫。

#cd puppet-king

#vim manifests/nodes.pp  ##建立節點文件

#git add manifests/nodes.pp ##添回nodes.pp到倉庫

#git commit -m "adding nodes.pp by king" ##提交nodes.pp

# git push ##提交分支

#cd /etc/puppet ##進入/etc/puppet/目錄

# git pull ##同步倉庫

 

3、Gitweb 管理puppet代碼

Lighttpd版本

#yum install gitweb lighttpd

 

#cat /etc/gitweb.conf

$projectroot = "/etc/puppet"

 

#cd /etc/puppet

#git instaweb

這會在1234端口開啓一個HTTPD 服務,隨之在瀏覽器中顯示該頁,十分簡單。關閉服務時,只需在原來的命令後面加上--stop 選項就能夠了

經過http://ip:1234便可訪問

 

Nginx版本

參考官方https://wiki.archlinux.org/index.php/gitweb#Nginx

安裝fcgiwrap

#git clone https://github.com/gnosek/fcgiwrap.git

cd fcgiwrap

#autoreconf -i

#./configure

make

#make install

#yum install –y nginx spwan-fcgi gitweb

由於是須要將/etc/puppet放到gitweb裏面去,因此,須要將gitweb目錄放到/etc/puppet目錄下

# tree /etc/puppet/gitweb/

/etc/puppet/gitweb/

├── error.log

├── gitweb.cgi

├── gitweb.css

├── gitweb.js

├── httpd.conf

└── tmp

修改gitweb配置文件

# cat /etc/gitweb.conf

$projectroot = "/etc/puppet"

修改spwan-fcgi配置

# cat /etc/sysconfig/spawn-fcgi

 

# You must set some working options before the "spawn-fcgi" service will work.

# If SOCKET points to a file, then this file is cleaned up by the init script.

#

# See spawn-fcgi(1) for all possible options.

#

# Example :

#SOCKET=/var/run/php-fcgi.sock

#OPTIONS="-u apache -g apache -s $SOCKET -S -M 0600 -C 32 -F 1 -P /var/run/spawn-fcgi.pid -- /usr/bin/php-cgi"

FCGI_SOCKET=/var/run/fcgiwrap.socket

FCGI_PROGRAM=/usr/local/sbin/fcgiwrap

FCGI_USER=nginx

FCGI_GROUP=nginx

FCGI_EXTRA_OPTIONS="-M 0700"

OPTIONS="-u $FCGI_USER -g $FCGI_GROUP -s $FCGI_SOCKET -S $FCGI_EXTRA_OPTIONS -F 1 -P /var/run/spawn-fcgi.pid -- $FCGI_PROGRAM"

 

# cat /usr/local/nginx/conf/vhosts/git.conf

server {

 

        listen 8150;

 

        error_log /data/logs/nginx/git.error.log;

        access_log /data/logs/nginx/git.access.log;

                root /etc/puppet;

        location /gitweb/ {

                index gitweb.cgi;

                include fastcgi_params;

                gzip off;

                fastcgi_param   GITWEB_CONFIG  /etc/gitweb.conf;

                if ($uri ~ "/gitweb/gitweb.cgi") {

                        fastcgi_pass    unix:/var/run/fcgiwrap.socket;

        }

}

}

窗體底端

相關文章
相關標籤/搜索