From f832e249164ff5803e8364efbe91ab190be0e6a1 Mon Sep 17 00:00:00 2001 From: punk Date: Sat, 24 Apr 2021 19:35:03 +0100 Subject: tools/gitolite hooks transition from bash to sh --- tools/conf/srv/gitolite/deploy-web | 45 ++++++++++++++++++++++++++++++++++ tools/conf/srv/gitolite/deploy-web-doc | 42 ------------------------------- tools/conf/srv/gitolite/deploy-web.sh | 6 ++--- tools/conf/srv/gitolite/hook.sh | 12 ++++----- 4 files changed, 54 insertions(+), 51 deletions(-) create mode 100755 tools/conf/srv/gitolite/deploy-web delete mode 100755 tools/conf/srv/gitolite/deploy-web-doc (limited to 'tools/conf') diff --git a/tools/conf/srv/gitolite/deploy-web b/tools/conf/srv/gitolite/deploy-web new file mode 100755 index 0000000..aa4a7fa --- /dev/null +++ b/tools/conf/srv/gitolite/deploy-web @@ -0,0 +1,45 @@ +#!/bin/sh + +###################################################################### +# +# Put this file in your gitolite-admin; +# ~/gitolite-admin/local/hooks/repo-specific/deploy-web +# +# set host to empty to create package for each push +# or set remote host to create package based on last deployed push +# host="https://doc.localhost" +host="" +# set name of witch branch should be deployed +branch_to_deploy="master" + +###################################################################### + + +url="$host/.last_deploy" + +. /srv/gitolite/deploy/hook.sh + +read oldrev newrev refname +push_branch=$(git rev-parse --symbolic --abbrev-ref $refname) + +SCRIPT_VARS=$(set) +#echo "project: $PROJECT" +#echo "local dir: $PWD : /srv/gitolite/deploy/${GL_REPO}" +#echo "${SCRIPT_VARS} : /srv/gitolite/deploy/${GL_REPO}" + +if [[ $push_branch = $branch_to_deploy ]]; then + + # if host empty we make local tracking + if [[ $host = "" ]]; then + if [[ $(is_initial ${GL_REPO}) = "true" ]]; then + oldrev="initial" + fi + else + if [[ ! $(valid_url $url) = "true" ]]; then + echo "Deploy: set $url on remote to start creating packages" + exit 1 + fi + oldrev=$(get_remote_rev $url) + fi + create_package ${GL_REPO} ${PWD} ${oldrev} ${newrev} "deploy-web.sh" +fi diff --git a/tools/conf/srv/gitolite/deploy-web-doc b/tools/conf/srv/gitolite/deploy-web-doc deleted file mode 100755 index b836515..0000000 --- a/tools/conf/srv/gitolite/deploy-web-doc +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -###################################################################### -# -# Put this file in your gitolite-admin; -# ~/gitolite-admin/local/hooks/repo-specific/hook-deploy-web -# -# set host to empty to create package for each push -# or set remote host to create package based on last deployed push -# host="https://doc.localhost" -host="" -# set name of witch branch should be deployed -branch_to_deploy="deploy_branch" - -###################################################################### - - -url="$host/.last_deploy" -source /srv/gitolite/deploy/hook.sh -read oldrev newrev refname -push_branch=$(git rev-parse --symbolic --abbrev-ref $refname) - -#SCRIPT_VARS=$(set) -#echo "project: $PROJECT" -#echo "local dir: $PWD" > /srv/gitolite/deploy/${GL_REPO} -#echo "${SCRIPT_VARS}" >> /srv/gitolite/deploy/${GL_REPO} - -if [[ $push_branch = $branch_to_deploy ]]; then - - # if host empty we make local tracking - if [[ $host = "" ]]; then - if [[ $(is_initial ${GL_REPO}) = "true" ]]; then - oldrev="initial" - fi - else - if [[ ! $(valid_url $url) = "true" ]]; then - echo "Deploy: set $url on remote to start creating packages" - exit 1 - fi - oldrev=$(get_remote_rev $url) - fi - create_package ${GL_REPO} ${PWD} ${oldrev} ${newrev} "deploy-web.sh" -fi diff --git a/tools/conf/srv/gitolite/deploy-web.sh b/tools/conf/srv/gitolite/deploy-web.sh index 86d2026..702f110 100644 --- a/tools/conf/srv/gitolite/deploy-web.sh +++ b/tools/conf/srv/gitolite/deploy-web.sh @@ -1,9 +1,9 @@ -#!/bin/bash +#!/bin/sh pkg_path=$1 -www_root="/srv/www" -www_user="www" +www_root="/srv/www/htdocs" +www_user="daemon" www_group="www" pkg_file="${pkg_path}/project" diff --git a/tools/conf/srv/gitolite/hook.sh b/tools/conf/srv/gitolite/hook.sh index 1f977ca..7a98a8c 100644 --- a/tools/conf/srv/gitolite/hook.sh +++ b/tools/conf/srv/gitolite/hook.sh @@ -1,11 +1,11 @@ -#!/bin/bash +#!/bin/sh # final packages dir packages_dir="/srv/gitolite/deploy/packages" # hook work directory hook_dir="/srv/gitolite/deploy/hook_dir" -function is_initial(){ +is_initial(){ local prj_name=$1 if [ ! -d ${hook_dir}/${prj_name} ]; then echo "true" @@ -14,18 +14,18 @@ function is_initial(){ fi } -function get_remote_rev(){ +get_remote_rev(){ echo $(wget --no-check-certificate -qO- $1) } -function valid_url(){ - if [[ `wget -S --spider $1 --no-check-certificate 2>&1 | grep 'HTTP/1.1 200 OK'` ]]; +valid_url(){ + if [[ `wget -S --spider $1 --no-check-certificate 2>&1 | grep -c 'HTTP/1.1 200 OK'` -eq 1 ]]; then echo "true"; fi } -function create_package(){ +create_package(){ # project name local prj_name=$1 # git repository directory -- cgit 1.4.1-2-gfad0