File: runtime_patch.sh

package info (click to toggle)
python-trame 3.12.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 101,620 kB
  • sloc: python: 13,515; sh: 183; javascript: 93; makefile: 7
file content (55 lines) | stat: -rwxr-xr-x 1,730 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#!/usr/bin/env bash

# Remap trame-user to a file/directory owner (TRAME_USER_DATA)
if [[ -n "$TRAME_USER_DATA" ]]
then
    new_uid=$(stat -c '%u' $TRAME_USER_DATA)
    new_gid=$(stat -c '%g' $TRAME_USER_DATA)
    trame_uid=$(id -u trame-user)
    trame_gid=$(id -g trame-user)
    if [[ "$new_uid" != "$trame_uid" ]]; then
        usermod --uid $new_uid trame-user
    fi
    if [[ "$new_gid" != "$trame_gid" ]]; then
        groupmod --gid $new_gid trame-user
    fi
    
    # Run chown on all trame-user directories/files
    chown -R trame-user:trame-user /opt/trame
    chown trame-user:proxy-mapping /opt/trame/proxy-mapping.txt
    find /deploy -exec chown trame-user:trame-user {} \;
    chown -R trame-user:trame-user /deploy
fi

# Remap internal docker group to the group of /var/run/docker.sock
# This is to support docker-in-docker when /var/run/docker.sock is mounted
dnd_socket=/var/run/docker.sock
if [ -S $dnd_socket ]
then
    docker_gid=$(stat -c '%g' $dnd_socket)
    groupmod --gid $docker_gid docker
fi

# Patch Apache configuration to add prefix
if [[ -n "$TRAME_URL_PREFIX" ]]
then
    # Fix Apache
    TEMPLATE_INPUT=/opt/trame/apache.tpl
    CONFIG_OUTPUT=/etc/apache2/sites-available/001-trame.conf

    OUTPUT=$(<"${TEMPLATE_INPUT}")

    REPLACEMENT_STRING="TRAME_URL_PREFIX"
    OUTPUT="${OUTPUT//$REPLACEMENT_STRING/$TRAME_URL_PREFIX}"
    echo -e "$OUTPUT" > "${CONFIG_OUTPUT}"

    service apache2 restart

    # Fix index.html <base href=".">
    FILE_TO_PATCH=/deploy/server/www/index.html
    OUTPUT=$(<"${FILE_TO_PATCH}")
    BASE_OLD='<base href=".">'
    BASE_NEW="<base href=\"$TRAME_URL_PREFIX/\">"
    OUTPUT="${OUTPUT//$BASE_OLD/$BASE_NEW}"
    echo -e "$OUTPUT" > "${FILE_TO_PATCH}"
fi