bugfix double kill process, update scripts
This commit is contained in:
parent
fd361fd43a
commit
f78fafd3c4
|
@ -1,18 +1,22 @@
|
|||
#!/bin/bash
|
||||
|
||||
for x in $@; do
|
||||
echo "$x"
|
||||
done
|
||||
|
||||
# These environment variables are set by the caller
|
||||
my_envs='GIT_REF_NAME
|
||||
GIT_REF_TYPE
|
||||
GIT_REPO_ID
|
||||
GIT_REPO_OWNER
|
||||
GIT_REPO_NAME
|
||||
GIT_CLONE_URL'
|
||||
|
||||
echo 'Doing "work" ...'
|
||||
sleep 5
|
||||
|
||||
for x in $my_envs; do
|
||||
echo "$x=${!x}"
|
||||
done
|
||||
base_dir="$(dirname "$(readlink -f "$0")")"
|
||||
if [[ -f "scripts/${GIT_REPO_ID}/deploy.sh" ]]
|
||||
then
|
||||
echo "Running deplay script for ${GIT_REPO_ID}"
|
||||
bash "scripts/${GIT_REPO_ID}/deploy.sh"
|
||||
else
|
||||
echo "Nothing to do for ${GIT_REPO_ID}"
|
||||
for x in $my_envs; do
|
||||
echo "$x=${!x}"
|
||||
done
|
||||
sleep 1
|
||||
fi
|
||||
|
|
14
main.go
14
main.go
|
@ -10,6 +10,7 @@ import (
|
|||
"net/http"
|
||||
"os"
|
||||
"os/exec"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"git.ryanburnette.com/ryanburnette/git-deploy/assets"
|
||||
|
@ -316,11 +317,18 @@ func runHook(hook webhooks.Ref) {
|
|||
}
|
||||
cmd := exec.Command("bash", args...)
|
||||
|
||||
// https://git.example.com/example/project.git
|
||||
// => git.example.com/example/project
|
||||
repoID := strings.TrimPrefix(hook.HTTPSURL, "https://")
|
||||
repoID = strings.TrimPrefix(repoID, "https://")
|
||||
repoID = strings.TrimSuffix(repoID, ".git")
|
||||
|
||||
env := os.Environ()
|
||||
envs := []string{
|
||||
"GIT_DEPLOY_JOB_ID=" + jobID,
|
||||
"GIT_REF_NAME=" + hook.RefName,
|
||||
"GIT_REF_TYPE=" + hook.RefType,
|
||||
"GIT_REPO_ID=" + repoID,
|
||||
"GIT_REPO_OWNER=" + hook.Owner,
|
||||
"GIT_REPO_NAME=" + hook.Repo,
|
||||
"GIT_CLONE_URL=" + hook.HTTPSURL,
|
||||
|
@ -349,8 +357,10 @@ func runHook(hook webhooks.Ref) {
|
|||
|
||||
go func() {
|
||||
log.Printf("git-deploy job for %s#%s started\n", hook.HTTPSURL, hook.RefName)
|
||||
_ = cmd.Wait()
|
||||
killers <- jobID
|
||||
if err := cmd.Wait(); nil != err {
|
||||
log.Printf("git-deploy job for %s#%s exited with error: %v", hook.HTTPSURL, hook.RefName, err)
|
||||
return
|
||||
}
|
||||
log.Printf("git-deploy job for %s#%s finished\n", hook.HTTPSURL, hook.RefName)
|
||||
// TODO check for backlog
|
||||
}()
|
||||
|
|
Loading…
Reference in New Issue