mirror of https://github.com/go-gitea/gitea
update snapcraft.yaml for core18 and latest features (#11300)
Removing some of the complexity, together with the install and configure hook. Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>pull/11346/head
parent
119173130a
commit
b09ec508c3
@ -1,66 +0,0 @@ |
||||
APP_NAME = Gitea: Go Git Service |
||||
RUN_USER = root |
||||
RUN_MODE = prod |
||||
CUSTOM_PATH = SNAP_DIR_DATA/custom |
||||
|
||||
[server] |
||||
DOMAIN = localhost |
||||
PROTOCOL = http |
||||
HTTP_PORT = 3001 |
||||
ROOT_URL = http://localhost:3001/ |
||||
DISABLE_SSH = false |
||||
SSH_PORT = 22 |
||||
STATIC_ROOT_PATH = SNAP_DIR_DATA/static |
||||
APP_DATA_PATH = SNAP_DIR_COMMON/data |
||||
SSH_ROOT = SNAP_DIR_COMMON/ssh |
||||
SSH_KEY_TEST_PATH = SNAP_DIR_DATA/sshkeytest |
||||
|
||||
[database] |
||||
DB_TYPE = sqlite3 |
||||
PATH = SNAP_DIR_COMMON/gitea.db |
||||
|
||||
[repository] |
||||
ROOT = SNAP_DIR_COMMON/repositories/data |
||||
|
||||
[repository.upload] |
||||
ENABLED = true |
||||
ALLOWED_TYPES = "image/jpeg|image/png" |
||||
FILE_MAX_SIZE = 10 |
||||
MAX_FILES = 5 |
||||
TEMP_PATH = SNAP_DIR_COMMON/repositories/tmp |
||||
|
||||
[release.attachment] |
||||
PATH = SNAP_DIR_COMMON/releases/attachments |
||||
|
||||
[smartypants] |
||||
ENABLED = true |
||||
|
||||
[indexer] |
||||
ISSUE_INDEXER_PATH = SNAP_DIR_COMMON/indexers/issues.bleve |
||||
|
||||
|
||||
[mailer] |
||||
ENABLED = false |
||||
|
||||
[service] |
||||
REGISTER_EMAIL_CONFIRM = false |
||||
ENABLE_NOTIFY_MAIL = false |
||||
DISABLE_REGISTRATION = false |
||||
ENABLE_CAPTCHA = false |
||||
REQUIRE_SIGNIN_VIEW = false |
||||
|
||||
[picture] |
||||
AVATAR_UPLOAD_PATH = SNAP_DIR_COMMON/pictures/avatars |
||||
DISABLE_GRAVATAR = true |
||||
ENABLE_FEDERATED_AVATAR = false |
||||
|
||||
[attachment] |
||||
PATH = SNAP_DIR_COMMON/attachments |
||||
|
||||
[session] |
||||
PROVIDER = memory |
||||
|
||||
[log] |
||||
MODE = file |
||||
LEVEL = Trace |
||||
ROOT_PATH = SNAP_DIR_COMMON/log |
@ -1,126 +0,0 @@ |
||||
#!/bin/bash |
||||
if snapctl get gitea.snap.custom; then |
||||
cdir=$(snapctl get gitea.snap.custom) |
||||
else |
||||
cdir=$SNAP_COMMON |
||||
fi |
||||
|
||||
cfg="$cdir/conf/app.ini" |
||||
bak="$cdir/conf/app.ini.bak-$(date -Ins)" |
||||
basecfg="$SNAP/snap/helpers/app.ini" |
||||
smp="$SNAP/gitea/custom/conf/app.ini.sample" |
||||
|
||||
function toSnap() { |
||||
OIFS=$IFS |
||||
IFS=' |
||||
' |
||||
category="none" |
||||
src="$cfg" |
||||
[[ "$1" = "init" ]] && src="$smp" |
||||
[[ "$1" = "snap" ]] && src="$basecfg" |
||||
|
||||
for l in $(sed 's_;\([A-Z]*\)_\1_g' $src | grep -v -e '^;' -e '^$'); do |
||||
if echo $l | grep -q '^[[]'; then |
||||
category=$(CatToSnap "$l") |
||||
elif echo $l | grep -q '^[A-Z]'; then |
||||
option=$(OptToSnap "$l") |
||||
value=$(ValToSnap "$l") |
||||
if [[ $category = "none" ]]; then |
||||
snapctl set "$option=$value" |
||||
else |
||||
snapctl set "$category.$option=$value" |
||||
fi |
||||
fi |
||||
done |
||||
IFS=$OIFS |
||||
} |
||||
|
||||
function toIni() { |
||||
OIFS=$IFS |
||||
IFS=' |
||||
' |
||||
category="none"; option="none"; catUnset=true |
||||
src=$smp |
||||
[[ -f $cfg ]] && src="$cfg" |
||||
tmpIni="$cfg.tmp" |
||||
[[ -f $src ]] && cp "$src" "$tmpIni" |
||||
cp $tmpIni $bak |
||||
echo '' > $cfg |
||||
for l in $(grep -v -e '^;' -e '^$' $tmpIni); do |
||||
if echo $l | grep -q '^[[]'; then |
||||
category=$(CatToSnap "$l") |
||||
catUnset=true |
||||
elif echo $l | grep -q '^[A-Z]'; then |
||||
option=$(OptToSnap "$l") |
||||
if [[ $category = "none" ]]; then |
||||
value=$(snapctl get $option) |
||||
echo $(OptToIni "$option") = $value >> $cfg |
||||
else |
||||
value=$(snapctl get $category.$option) |
||||
if $catUnset; then |
||||
echo "" >> $cfg |
||||
echo "[$(CatToIni "$category")]" >> $cfg |
||||
catUnset=false |
||||
fi |
||||
echo $(OptToIni "$option") = $value >> $cfg |
||||
fi |
||||
fi |
||||
done; |
||||
IFS=$OIFS |
||||
} |
||||
|
||||
function CatToSnap { |
||||
ret=$(echo "$1" \ |
||||
| grep -oP '[A-Za-z0-9._]+' \ |
||||
| sed 's|\.|-|g' \ |
||||
| sed 's|_|99|g') |
||||
echo $ret |
||||
} |
||||
function OptToSnap { |
||||
ret=$(echo "$1" \ |
||||
| grep -oP '^[A-Z_]+' \ |
||||
| tr '[:upper:]' '[:lower:]' \ |
||||
| sed 's|_|-|g') |
||||
echo $ret |
||||
} |
||||
function ValToSnap { |
||||
ret=$(echo "$1" \ |
||||
| grep -oP '=.*$' \ |
||||
| sed 's_^= __g' \ |
||||
| sed 's_^=__g' \ |
||||
| sed "s|SNAP_DIR_DATA|$SDATA|g" \ |
||||
| sed "s|SNAP_DIR_COMMON|$SCOMMON|g" \ |
||||
| sed 's|{}||g') |
||||
echo $ret |
||||
} |
||||
|
||||
function CatToIni { |
||||
ret=$(echo "$1" \ |
||||
| sed 's|-|.|g' \ |
||||
| sed 's|\ |_|g' \ |
||||
| sed 's|99|_|g') |
||||
echo $ret |
||||
} |
||||
function OptToIni { |
||||
ret=$(echo "$1" \ |
||||
| tr '[:lower:]' '[:upper:]' \ |
||||
| sed 's|-|_|g') |
||||
echo $ret |
||||
} |
||||
|
||||
[[ "$1" = "configure" ]] \ |
||||
&& toIni \ |
||||
&& exit 0 |
||||
|
||||
[[ "$1" = "install" ]] \ |
||||
&& echo "Initial Configuration..." \ |
||||
&& mkdir -p $SNAP_COMMON/conf \ |
||||
&& toSnap init \ |
||||
&& toSnap snap \ |
||||
&& toIni sample \ |
||||
&& exit 0 |
||||
|
||||
[[ "$1" = "save" ]] \ |
||||
&& echo "Saving current config..." \ |
||||
&& toSnap \ |
||||
&& exit 0 |
@ -1,23 +0,0 @@ |
||||
#!/bin/bash |
||||
|
||||
if ! env | grep -q root; then |
||||
echo " |
||||
+----------------------------------------+ |
||||
| You are not running gitea as root. | |
||||
| This is required for the snap package. | |
||||
| Please re-run as root. | |
||||
+----------------------------------------+ |
||||
" |
||||
$SNAP/gitea/gitea --help |
||||
exit 1 |
||||
fi |
||||
|
||||
# Set usernames for gitea |
||||
export USERNAME=root |
||||
export USER=root |
||||
|
||||
export GITEA_WORK_DIR=$(snapctl get gitea.snap.workdir) |
||||
export GITEA_CUSTOM=$(snapctl get gitea.snap.custom) |
||||
|
||||
$SNAP/bin/gconfig save |
||||
cd $SNAP/gitea; ./gitea $@ |
@ -1,3 +0,0 @@ |
||||
#!/bin/bash |
||||
|
||||
$SNAP/bin/gconfig configure |
@ -1,45 +0,0 @@ |
||||
#!/bin/bash |
||||
|
||||
export SDATA=$(echo $SNAP_DATA | sed "s|$SNAP_REVISION|current|") |
||||
export SCOMMON="$SNAP_COMMON" |
||||
export isRoot=`true` |
||||
snapctl set gitea.snap.workdir="$SDATA/custom" |
||||
snapctl set gitea.snap.custom="$SCOMMON" |
||||
|
||||
function mkDirCommon(){ |
||||
for dir in $@; do |
||||
mkdir -p "$SCOMMON/$dir" |
||||
done |
||||
} |
||||
|
||||
function mkdirData(){ |
||||
for dir in $@; do |
||||
mkdir -p "$SDATA/$dir" |
||||
if [ -d $SNAP/$dir ]; then |
||||
cp -r --preserve=mode \ |
||||
$SNAP/$dir/* \ |
||||
$SNAP/$dir/.[a-zA-Z0-9-]* \ |
||||
$SDATA/$dir/ 2> $SCOMMON/log/snap-mkdirData.log |
||||
fi |
||||
done |
||||
} |
||||
|
||||
mkDirCommon pictures \ |
||||
repositories \ |
||||
attachments \ |
||||
data \ |
||||
log |
||||
|
||||
mkdirData certs \ |
||||
sshkeytest \ |
||||
custom/conf \ |
||||
static/templates \ |
||||
static/scripts \ |
||||
static/public |
||||
|
||||
[[ -f $SNAP_COMMON/conf/app.ini ]] || $SNAP/bin/gconfig install |
||||
|
||||
# Configure Git to use the right templates |
||||
mkdir -p $SDATA/git/ |
||||
cp -r --preserve=mode $SNAP/usr/share/git-core/templates $SDATA/git/ |
||||
$SNAP/usr/bin/git config --global init.templateDir $SDATA/git/templates/ |
Loading…
Reference in new issue