Rename git_pull to git_sync, update Readme file
This commit is contained in:
51
ReadMe.md
51
ReadMe.md
@@ -6,8 +6,55 @@ the clone base for one campaign and a simple crontab script to pull data from th
|
|||||||
## Scripts
|
## Scripts
|
||||||
|
|
||||||
- base_setup.sh: setup for the folder structure, users, etc
|
- base_setup.sh: setup for the folder structure, users, etc
|
||||||
- init_new_clone.sh: Basic clone script
|
- new_clone.sh: Basic clone script
|
||||||
- git_pull.sh: The script to run in crontab
|
- git_sync.sh: The script to run in crontab, to sync the changes
|
||||||
|
|
||||||
|
## Run commands
|
||||||
|
|
||||||
|
### Settings
|
||||||
|
|
||||||
|
in `config/webhook.cfg` the following settings have to be entered
|
||||||
|
|
||||||
|
```ini
|
||||||
|
GIT_WEBHOOK_BASE_FOLDER="<BASE FOLDER>"
|
||||||
|
WWW_GROUP="<APACHE GROUP NAME>"
|
||||||
|
SUDO_USER="<SUDO USER NAME TO USE>"
|
||||||
|
USE_SUDO=<1: use sudo, 0: no sudo used>
|
||||||
|
```
|
||||||
|
|
||||||
|
### base_setup.sh
|
||||||
|
|
||||||
|
as is, if the folder exists it will only copy the scripts, will not alter or change anything.
|
||||||
|
|
||||||
|
Planned to get auto fixes for wrong ACL, etc or missing config settings
|
||||||
|
|
||||||
|
### new_clone.sh
|
||||||
|
|
||||||
|
Create a new clone
|
||||||
|
|
||||||
|
```sh
|
||||||
|
new_clone.sh [repository] [branch] ([host]) ([remote name])
|
||||||
|
```
|
||||||
|
|
||||||
|
The [host] is the SSH Host name entry, this sill repalce any "[host]:" in the [repository]. If the [host] is not set the host set in the [repository] will be used. If nothing found the script will abort
|
||||||
|
|
||||||
|
A [branch] name must be set all the time.
|
||||||
|
|
||||||
|
An optional [remote name] can be set, if not set "origin" will be used.
|
||||||
|
|
||||||
|
### git_sync.sh
|
||||||
|
|
||||||
|
Syncs changes, this is the script that should be placed into the crontab
|
||||||
|
|
||||||
|
```sh
|
||||||
|
git_sync.sh [repository] [branch] ([remote name])
|
||||||
|
```
|
||||||
|
|
||||||
|
The [repository] the the folder name inside the clone folder, on new clone it is output in the info line "... into (GIT REPOSITORY FOLDER)". All repository folders are in the "clone-base/" folder. The base folder is defined in the config/webhook.crf file.
|
||||||
|
|
||||||
|
A [branch] name must be set all the time.
|
||||||
|
|
||||||
|
An optional [remote name] can be set, if not set "origin" will be used.
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
|
|
||||||
|
|||||||
@@ -66,14 +66,14 @@ if [ -d "${GIT_WEBHOOK_BASE_FOLDER}" ]; then
|
|||||||
echo "[TODO] -> Not implemented: check folder, check ACL";
|
echo "[TODO] -> Not implemented: check folder, check ACL";
|
||||||
# copy scripts & default config
|
# copy scripts & default config
|
||||||
echo "~ Copy basic script and config files";
|
echo "~ Copy basic script and config files";
|
||||||
# git_pull.sh, init.sh, new_clone.sh, webhook.default.cfg
|
# git_sync.sh, init.sh, new_clone.sh, webhook.default.cfg
|
||||||
cp "${BASE_FOLDER}new_clone.sh" "${BASE_FOLDER}init.sh" "${BASE_FOLDER}git_pull.sh" "${GIT_WEBHOOK_BASE_FOLDER}${SCRIPT_FOLDER}";
|
cp "${BASE_FOLDER}new_clone.sh" "${BASE_FOLDER}init.sh" "${BASE_FOLDER}git_sync.sh" "${GIT_WEBHOOK_BASE_FOLDER}${SCRIPT_FOLDER}";
|
||||||
cp "${CONFIG_BASE}/webhook.default.cfg" "${GIT_WEBHOOK_BASE_FOLDER}${CONFIG_FOLDER}";
|
cp "${CONFIG_BASE}/webhook.default.cfg" "${GIT_WEBHOOK_BASE_FOLDER}${CONFIG_FOLDER}";
|
||||||
# and make sure they are all owned by the correct user
|
# and make sure they are all owned by the correct user
|
||||||
chown "${SUDO_USER}" \
|
chown "${SUDO_USER}" \
|
||||||
"${BASE_FOLDER}new_clone.sh" \
|
"${BASE_FOLDER}new_clone.sh" \
|
||||||
"${BASE_FOLDER}init.sh" \
|
"${BASE_FOLDER}init.sh" \
|
||||||
"${BASE_FOLDER}git_pull.sh" \
|
"${BASE_FOLDER}git_sync.sh" \
|
||||||
"${CONFIG_BASE}/webhook.default.cfg";
|
"${CONFIG_BASE}/webhook.default.cfg";
|
||||||
# check config entries missing
|
# check config entries missing
|
||||||
exit;
|
exit;
|
||||||
@@ -145,14 +145,14 @@ EOF
|
|||||||
"${GIT_WEBHOOK_BASE_FOLDER}${WWW_BASE}";
|
"${GIT_WEBHOOK_BASE_FOLDER}${WWW_BASE}";
|
||||||
# Copy files
|
# Copy files
|
||||||
echo "+ Copy basic script and config files";
|
echo "+ Copy basic script and config files";
|
||||||
# git_pull.sh, init.sh, new_clone.sh, webhook.default.cfg
|
# git_sync.sh, init.sh, new_clone.sh, webhook.default.cfg
|
||||||
cp "${BASE_FOLDER}new_clone.sh" "${BASE_FOLDER}init.sh" "${BASE_FOLDER}git_pull.sh" "${GIT_WEBHOOK_BASE_FOLDER}${SCRIPT_FOLDER}";
|
cp "${BASE_FOLDER}new_clone.sh" "${BASE_FOLDER}init.sh" "${BASE_FOLDER}git_sync.sh" "${GIT_WEBHOOK_BASE_FOLDER}${SCRIPT_FOLDER}";
|
||||||
cp "${CONFIG_BASE}/webhook.cfg" "${CONFIG_BASE}/webhook.default.cfg" "${GIT_WEBHOOK_BASE_FOLDER}${CONFIG_FOLDER}";
|
cp "${CONFIG_BASE}/webhook.cfg" "${CONFIG_BASE}/webhook.default.cfg" "${GIT_WEBHOOK_BASE_FOLDER}${CONFIG_FOLDER}";
|
||||||
# and make sure they are all owned by the correct user
|
# and make sure they are all owned by the correct user
|
||||||
chown "${SUDO_USER}" \
|
chown "${SUDO_USER}" \
|
||||||
"${BASE_FOLDER}new_clone.sh" \
|
"${BASE_FOLDER}new_clone.sh" \
|
||||||
"${BASE_FOLDER}init.sh" \
|
"${BASE_FOLDER}init.sh" \
|
||||||
"${BASE_FOLDER}git_pull.sh" \
|
"${BASE_FOLDER}git_sync.sh" \
|
||||||
"${CONFIG_BASE}/webhook.cfg" \
|
"${CONFIG_BASE}/webhook.cfg" \
|
||||||
"${CONFIG_BASE}/webhook.default.cfg";
|
"${CONFIG_BASE}/webhook.default.cfg";
|
||||||
fi;
|
fi;
|
||||||
|
|||||||
Reference in New Issue
Block a user