mirror of
https://github.com/PGYER/codefever.git
synced 2026-05-06 21:50:39 +08:00
feat(Install & Upgrade Scripts): add webhook support
This commit is contained in:
@@ -24,6 +24,9 @@ mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" -D"$DB_NAME" -e"source
|
||||
|
||||
echo 'Default data created!'
|
||||
|
||||
# update db to version 20220215
|
||||
mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" -D"$DB_NAME" -e"source db_update_20220215.sql";
|
||||
|
||||
echo 'Done!'
|
||||
|
||||
echo -e "\n\n\n"
|
||||
|
||||
40
misc/db_update_20220215.sql
Normal file
40
misc/db_update_20220215.sql
Normal file
@@ -0,0 +1,40 @@
|
||||
CREATE TABLE IF NOT EXISTS `cc_repository_webhooks` (
|
||||
`rw_key` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`r_key` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`u_key` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_url` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_secret` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_events` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_active` tinyint(3) NOT NULL DEFAULT '1',
|
||||
`rw_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`rw_updated` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`rw_key`),
|
||||
KEY `r_key` (`r_key`),
|
||||
KEY `u_key` (`u_key`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `cc_repository_webhook_events` (
|
||||
`rwe_key` char(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwe_user` char(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_key` char(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwe_type` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwe_data` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwe_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`rwe_key`),
|
||||
KEY `rw_key` (`rw_key`),
|
||||
KEY `rwe_user` (`rwe_user`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `cc_repository_webhook_logs` (
|
||||
`rwl_id` char(36) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rw_key` char(32) COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwl_request` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwl_response` text COLLATE utf8mb4_unicode_ci NOT NULL,
|
||||
`rwl_start` double NOT NULL,
|
||||
`rwl_end` double NOT NULL,
|
||||
`rwl_status` int(11) NOT NULL,
|
||||
`rwl_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`rwl_id`),
|
||||
KEY `rw_key` (`rw_key`),
|
||||
KEY `rwl_created` (`rwl_created`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
@@ -62,7 +62,17 @@ service codefever start
|
||||
service php-fpm start
|
||||
service nginx start
|
||||
|
||||
echo 'services started!'
|
||||
echo 'Services Started!'
|
||||
|
||||
TARGET_CRONJOB=`crontab -u git -l 2>/dev/null | grep 'codefever_schedule.sh' | wc -l`
|
||||
if [ $TARGET_CRONJOB -eq 0 ]; then
|
||||
crontab -u git -l 2>/dev/null > /tmp/cronjob.temp
|
||||
echo "* * * * * sh /data/www/codefever-community/application/backend/codefever_schedule.sh" >> /tmp/cronjob.temp
|
||||
crontab -u git /tmp/cronjob.temp
|
||||
rm -f /tmp/cronjob.temp
|
||||
fi
|
||||
|
||||
echo 'Cronjob Registerd!'
|
||||
|
||||
echo 'Done!'
|
||||
|
||||
|
||||
@@ -28,13 +28,6 @@ cp codefever-service-template /etc/init.d/codefever
|
||||
|
||||
echo 'services updated!'
|
||||
|
||||
cp ../config.template.yaml ../config.yaml
|
||||
cp ../env.template.yaml ../env.yaml
|
||||
|
||||
chmod 0777 ../config.yaml ../env.yaml
|
||||
|
||||
echo 'env files overwrote!'
|
||||
|
||||
echo 'Loading composer libraries: (Just Press Enter Key!)'
|
||||
|
||||
cd ../application/libraries/composerlib/
|
||||
@@ -49,12 +42,31 @@ service nginx start
|
||||
|
||||
echo 'services started!'
|
||||
|
||||
DB_HOST=`cat ../env.yaml | grep host: | awk -F: '{ print $2 }' | sed 's/^\s*//'`
|
||||
DB_PORT=`cat ../env.yaml | grep port: | awk -F: '{ print $2 }' | sed 's/^\s*//'`
|
||||
DB_USER=`cat ../env.yaml | grep username: | awk -F: '{ print $2 }' | sed 's/^\s*//'`
|
||||
DB_PASS=`cat ../env.yaml | grep password: | awk -F: '{ print $2 }' | sed 's/^\s*//'`
|
||||
DB_NAME=`cat ../env.yaml | grep db: | awk -F: '{ print $2 }' | sed 's/^\s*//'`
|
||||
|
||||
# update db to version 20220215
|
||||
mysql -h"$DB_HOST" -P"$DB_PORT" -u"$DB_USER" -p"$DB_PASS" -D"$DB_NAME" -e"source db_update_20220215.sql";
|
||||
|
||||
echo 'database updated!'
|
||||
|
||||
TARGET_CRONJOB=`crontab -u git -l 2>/dev/null | grep 'codefever_schedule.sh' | wc -l`
|
||||
if [ $TARGET_CRONJOB -eq 0 ]; then
|
||||
crontab -u git -l 2>/dev/null > /tmp/cronjob.temp
|
||||
echo "* * * * * sh /data/www/codefever-community/application/backend/codefever_schedule.sh" >> /tmp/cronjob.temp
|
||||
crontab -u git /tmp/cronjob.temp
|
||||
rm -f /tmp/cronjob.temp
|
||||
fi
|
||||
|
||||
echo 'Cronjob Registerd!'
|
||||
|
||||
echo 'Done!'
|
||||
|
||||
echo -e "\n\n\n"
|
||||
|
||||
echo '=== IMPORTANT NOTICE ==='
|
||||
echo '1. You shuold edit file </data/www/codefever-community/env.yaml: mysql/*> to finish mysql settings.'
|
||||
echo '2. You shuold edit file </data/www/codefever-community/env.yaml: session/*> to finish cookie settings.'
|
||||
echo '3. You shuold edit file </data/www/codefever-community/env.yaml: gateway/token> to finish git gateway security settings.'
|
||||
echo '1. CodeFever Comminuty Upgrated.'
|
||||
echo 'have fun!'
|
||||
|
||||
Reference in New Issue
Block a user