Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
actcollabms
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
tgms
actcollabms
Commits
bbeb1f12
Commit
bbeb1f12
authored
6 years ago
by
Gitlab
Browse files
Options
Downloads
Patches
Plain Diff
Release 0.135.0 [ci-skip]
parent
651e750c
Branches
Branches containing commit
Tags
0.135.0
Tags containing commit
2 merge requests
!81
Staging
,
!69
Dev
Pipeline
#14283
skipped
Changes
2
Pipelines
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
.release/0.135.0.migrate
+822
-0
822 additions, 0 deletions
.release/0.135.0.migrate
migrate
+6
-0
6 additions, 0 deletions
migrate
with
828 additions
and
0 deletions
.release/0.135.0.migrate
0 → 100644
+
822
−
0
View file @
bbeb1f12
# This file describe operations needed for migration between versions,
# both for UPGRADE and DOWNGRADE.
#
# Documentation about syntax of this file:
# https://metacpan.org/pod/App::migrate#SYNTAX
#
# You shouldn't modify anything in this file BEFORE LAST "VERSION" LINE!
# If you will do this you'll likely BREAK DOWNGRADE for some version.
# Exceptions from this rule are:
# - git rebase
# - add/remove comments, empty lines or do other visual/formatting changes
# - add new DEFINEs
# - modification of downgrade/after_downgrade operations needed to FIX
# BROKEN DOWNGRADE
#
# You shouldn't manually add "VERSION" lines - run narada-release instead.
# Exceptions from this rule are some advanced use cases like:
# - squashing several patches into one
# - merging different release branches like 1.x and 2.x
# INSTALL
# - usually it will be automatically added by ./release, and you shouldn't
# add it manually
# - this operation must be the last one, right before VERSION - to make
# sure patch&tgz will be applied exactly between before_upgrade and
# upgrade operations, and will be reversed exactly between downgrade and
# after_downgrade operations
DEFINE2 INSTALL
before_upgrade
if test -f .release/${MIGRATE_NEXT_VERSION}.patch; then
GIT_DIR=.git git apply .release/${MIGRATE_NEXT_VERSION}.patch
fi
if test -f .release/${MIGRATE_PREV_VERSION}.tgz; then
files='m{\A[.]/\n}&&next;s/\n/\0/;s/(\\.)/"\"$1\""/gee;m{/\0}||print'
dirs='m{\A[.]/\n}&&next;s/\n/\0/;s/(\\.)/"\"$1\""/gee;m{/\0}&&print'
names=$(tar tzf .release/${MIGRATE_PREV_VERSION}.tgz)
echo "$names" | perl -ne "$files" | xargs -0 -r rm -f
echo "$names" | tac | perl -ne "$dirs" | xargs -0 -r rmdir --ignore-fail-on-non-empty
fi
if test -f .release/${MIGRATE_NEXT_VERSION}.tgz; then
tar xzvpf .release/${MIGRATE_NEXT_VERSION}.tgz
fi
narada-bg-killall
after_downgrade
if test -f .release/${MIGRATE_PREV_VERSION}.patch; then
GIT_DIR=.git git apply -R .release/${MIGRATE_PREV_VERSION}.patch
fi
if test -f .release/${MIGRATE_PREV_VERSION}.tgz; then
files='m{\A[.]/\n}&&next;s/\n/\0/;s/(\\.)/"\"$1\""/gee;m{/\0}||print'
dirs='m{\A[.]/\n}&&next;s/\n/\0/;s/(\\.)/"\"$1\""/gee;m{/\0}&&print'
names=$(tar tzf .release/${MIGRATE_PREV_VERSION}.tgz)
echo "$names" | perl -ne "$files" | xargs -0 -r rm -f
echo "$names" | tac | perl -ne "$dirs" | xargs -0 -r rmdir --ignore-fail-on-non-empty
fi
if test -f .release/${MIGRATE_NEXT_VERSION}.tgz; then
tar xzvpf .release/${MIGRATE_NEXT_VERSION}.tgz
fi
narada-bg-killall
DEFINE2 only_before_upgrade
upgrade
downgrade true
DEFINE2 only_upgrade
upgrade
downgrade true
DEFINE2 only_downgrade
upgrade true
downgrade
DEFINE2 only_after_downgrade
upgrade true
after_downgrade
# mysql path/to/alter.sql
# mysql
# sql commands here ...
DEFINE mysql
upgrade
test -f "$1" -a -r "$1"
narada-mysql < "$1"
# rollback_mysql path/to/alter.sql
# rollback_mysql
# sql commands here ...
DEFINE rollback_mysql
downgrade
test -f "$1" -a -r "$1"
narada-mysql < "$1"
# mkdir some/dir ...
# - parameters can't contain /../ or begin with /
DEFINE2 mkdir
upgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
mkdir "$@"
downgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
rm -rf "$@"
# rmdir some/dir ...
# - parameters can't contain /../ or begin with /
DEFINE2 rmdir
upgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
rm -rf "$@"
after_downgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
narada-restore .backup/full-"$MIGRATE_NEXT_VERSION".tar "$@"
# rm some/file ...
# - parameters can't contain /../ or begin with /
DEFINE2 rm
upgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
rm -f "$@"
after_downgrade
perl -e 'exit grep {m{\A/|(\A|/)[.][.](/|\z)}} @ARGV' "$@"
narada-restore .backup/full-"$MIGRATE_NEXT_VERSION".tar "$@"
# add_config some/config "value"
# add_config some/config -
# value
# - config must not exists
DEFINE2 add_config
upgrade
test ! -e config/"$1"
mkdir -p $(dirname config/"$1")
{ test $# = 3 && cat "$3" || echo -n "$2"; } > config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
downgrade
rm -f config/"$1"
rmdir -p $(dirname config/"$1") 2>/dev/null || :
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
# set_config some/config "new value"
# set_config some/config -
# new value
# - config may exists
# - on downgrade previous value restored only if current is "new value"
DEFINE2 set_config
upgrade
mkdir -p $(dirname config/"$1")
{ test $# = 3 && cat "$3" || echo -n "$2"; } > config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
after_downgrade
test $# = 3 && value=$(cat "$3") || value="$2"
if test "$(cat config/"$1")" = "$value"; then
narada-restore .backup/full-"$MIGRATE_NEXT_VERSION".tar config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
fi
# mod_config some/config "pcre regex" "new value"
# mod_config some/config "pcre regex" -
# new value
# - config must exists
# - value changed only if current value match "pcre regex"
# - on downgrade previous value restored only if current is "new value"
DEFINE2 mod_config
upgrade
test -e config/"$1"
if grep -q -P -- "$2" config/"$1"; then
{ test $# = 4 && cat "$4" || echo -n "$3"; } > config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
fi
after_downgrade
test $# = 4 && value=$(cat "$4") || value="$3"
if test "$(cat config/"$1")" = "$value"; then
narada-restore .backup/full-"$MIGRATE_NEXT_VERSION".tar config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
fi
# del_config some/config
DEFINE2 del_config
upgrade
rm -f config/"$1"
rmdir -p $(dirname config/"$1") 2>/dev/null || :
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
after_downgrade
narada-restore .backup/full-"$MIGRATE_NEXT_VERSION".tar config/"$1"
echo "$1" | grep -v -q '^crontab/' || narada-setup-cron
echo "$1" | grep -v -q '^qmail/' || narada-setup-qmail
# exclude_from_backup "value"
DEFINE2 exclude_from_backup
upgrade
test -e config/backup/exclude
if ! grep -q -F -x -- "$1" config/backup/exclude; then
echo "$1" >> config/backup/exclude
fi
after_downgrade
test -e config/backup/exclude
grep -v -F -x -- "$1" config/backup/exclude >tmp/config_backup_exclude.$$
mv tmp/config_backup_exclude.$$ config/backup/exclude
# kill process_name ...
# - make sure processes started before upgrade/downgrade but blocked on
# start because of lock won't continue to run after upgrade/downgrade
DEFINE2 kill
upgrade
killall -9 "$@" || :
after_downgrade
killall -9 "$@" || :
# Initial version. MUST be 0.0.0 for new empty projects.
VERSION 0.0.0
# REQUIRED Narada files & directories:
only_upgrade
mkdir -p .backup
mkdir config
mkdir tmp
mkdir var
mkdir var/log
mkdir var/use
add_config backup/exclude -
./.backup/*
./.lock*
./tmp/*
./.release/*
add_config backup/pass
only_upgrade
chmod 0600 config/backup/pass
add_config crontab/backup -
1 3 * * * ( narada-backup && echo Reminder: encrypt .backup/full.tar with config/backup/pass and upload it somewhere >&2) >/dev/null
1 2 * * 1 rm .backup/full.tar >/dev/null 2>&1
add_config log/level DEBUG
add_config log/type syslog
add_config log/output var/log.sock
### narada-plugin-runit
# restart service_to_restart
DEFINE2 restart
upgrade
sv t ./service/"$1" || :
after_downgrade
sv t ./service/"$1" || :
add_config service/type runit
add_config crontab/service -
*/1 * * * * narada-start-services &
exclude_from_backup ./service/*/supervise
exclude_from_backup ./service/*/log/supervise
### narada-plugin-socklog
restart log
### narada-plugin-go-service
add_config http/listen 127.0.0.1:0
add_config http/basepath
add_config http/real_ip_header
### narada-tgms-base
add_config lock_timeout 1s
add_config rsa_public_key
### narada-tgms-base tracker_adapter
add_config http/timeout 10s
restart main
INSTALL
VERSION 0.1.0
restart main
restart main
restart main
upgrade mv service/main service/collabms
downgrade mv service/collabms service/main
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.20.0
restart collabms
INSTALL
VERSION 0.21.0
restart collabms
INSTALL
VERSION 0.22.0
restart collabms
INSTALL
VERSION 0.23.0
restart collabms
INSTALL
VERSION 0.24.0
restart collabms
INSTALL
VERSION 0.25.0
restart collabms
INSTALL
VERSION 0.26.0
restart collabms
INSTALL
VERSION 0.27.0
restart collabms
INSTALL
VERSION 0.28.0
restart collabms
INSTALL
VERSION 0.29.0
restart collabms
INSTALL
VERSION 0.30.0
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.32.0
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.34.0
restart collabms
INSTALL
VERSION 0.35.0
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.37.0
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.39.0
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.70.0
restart collabms
INSTALL
VERSION 0.71.0
restart collabms
INSTALL
VERSION 0.72.0
add_config sentry_dsn
add_config service_name
restart collabms
INSTALL
VERSION 0.73.0
restart collabms
INSTALL
VERSION 0.74.0
restart collabms
INSTALL
VERSION 0.75.0
restart collabms
INSTALL
VERSION 0.76.0
restart collabms
INSTALL
VERSION 0.77.0
restart collabms
INSTALL
VERSION 0.78.0
restart collabms
INSTALL
VERSION 0.79.0
restart collabms
INSTALL
VERSION 0.80.0
restart collabms
INSTALL
VERSION 0.81.0
restart collabms
INSTALL
VERSION 0.82.0
restart collabms
INSTALL
VERSION 0.83.0
restart collabms
INSTALL
VERSION 0.84.0
restart collabms
INSTALL
VERSION 0.85.0
restart collabms
INSTALL
VERSION 0.86.0
restart collabms
INSTALL
VERSION 0.87.0
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.97.0
restart collabms
restart collabms
restart collabms
INSTALL
VERSION 0.99.0
restart collabms
INSTALL
VERSION 0.100.0
restart collabms
INSTALL
VERSION 0.101.0
restart collabms
INSTALL
VERSION 0.102.0
restart collabms
INSTALL
VERSION 0.103.0
restart collabms
INSTALL
VERSION 0.104.0
restart collabms
INSTALL
VERSION 0.105.0
restart collabms
INSTALL
VERSION 0.106.0
restart collabms
INSTALL
VERSION 0.107.0
restart collabms
INSTALL
VERSION 0.108.0
restart collabms
INSTALL
VERSION 0.109.0
restart collabms
INSTALL
VERSION 0.110.0
restart collabms
INSTALL
VERSION 0.111.0
restart collabms
INSTALL
VERSION 0.112.0
restart collabms
INSTALL
VERSION 0.113.0
restart collabms
INSTALL
VERSION 0.114.0
restart collabms
INSTALL
VERSION 0.115.0
restart collabms
INSTALL
VERSION 0.116.0
restart collabms
INSTALL
VERSION 0.117.0
restart collabms
INSTALL
VERSION 0.118.0
restart collabms
INSTALL
VERSION 0.119.0
restart collabms
INSTALL
VERSION 0.120.0
restart collabms
INSTALL
VERSION 0.121.0
restart collabms
INSTALL
VERSION 0.122.0
restart collabms
INSTALL
VERSION 0.123.0
restart collabms
INSTALL
VERSION 0.124.0
restart collabms
INSTALL
VERSION 0.125.0
restart collabms
INSTALL
VERSION 0.126.0
restart collabms
INSTALL
VERSION 0.127.0
restart collabms
INSTALL
VERSION 0.128.0
restart collabms
INSTALL
VERSION 0.129.0
restart collabms
INSTALL
VERSION 0.130.0
restart collabms
INSTALL
VERSION 0.131.0
restart collabms
INSTALL
VERSION 0.132.0
restart collabms
INSTALL
VERSION 0.133.0
restart collabms
INSTALL
VERSION 0.134.0
restart collabms
INSTALL
VERSION 0.135.0
This diff is collapsed.
Click to expand it.
migrate
+
6
−
0
View file @
bbeb1f12
...
...
@@ -814,3 +814,9 @@ restart collabms
INSTALL
VERSION 0.134.0
restart collabms
INSTALL
VERSION 0.135.0
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment