summaryrefslogtreecommitdiff
path: root/linux/deb/02-fs-spring-boot-kamal/package/DEBIAN/postinst
blob: 67fffe035df0ee62db0f5eab66ed7522c52e662e (plain)
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
56
57
58
59
#!/bin/bash

# Stop on error
set -e

if [ "$1" == "configure" ] && [ -z "$2" ]; then
  # Code here executes only during package install (but not during upgrade)

  # Create a system user
  # -r: System user
  # -s /sbin/nologin: Prevent the user from logging into the system interactively
  # -d /var/lib/fs-spring-boot-kamal: Set home directory of user
  # fs-spring-boot-kamal: Username
  useradd -r -s /sbin/nologin -d /var/lib/fs-spring-boot-kamal fs-spring-boot-kamal || true

fi

# Set directory ownership and permissions - Application jar file not to be read by other system users
chown -R root:fs-spring-boot-kamal /opt/mycompany/fs-spring-boot-kamal
chmod 755 /opt/mycompany
chmod 750 /opt/mycompany/fs-spring-boot-kamal
chmod 750 /opt/mycompany/fs-spring-boot-kamal/app
chmod 640 /opt/mycompany/fs-spring-boot-kamal/app/fs-spring-boot-kamal.jar

# Set directory ownership and permissions - Config files not to be read by other system users
chown -R root:fs-spring-boot-kamal /etc/fs-spring-boot-kamal
chmod 750 /etc/fs-spring-boot-kamal
chmod 640 /etc/fs-spring-boot-kamal/application.yaml
chmod 640 /etc/fs-spring-boot-kamal/environment.env

if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then
        if [ -d /run/systemd/system ]; then
                # Reload systemd service configurations
                systemctl daemon-reload > /dev/null || true

                if [ -n "$2" ]; then
			# Upgrade
                        # Restart service
			if systemctl is-enabled fs-spring-boot-kamal > /dev/null; then
                              systemctl start fs-spring-boot-kamal
			fi
                else
			# First install (not upgrade)
                        # Enable service to start at boot time 
                        systemctl enable fs-spring-boot-kamal
			# Start service
                        systemctl start fs-spring-boot-kamal
                fi
        fi
fi

if [ "$1" == "configure" ] && [ -z "$2" ]; then
        # Code here executes only during package install (but not during upgrade)
        echo "[INFO] fs-spring-boot-kamal service installed."
        echo "[INFO] Update /etc/fs-spring-boot-kamal/application.yaml to update the configuration."
        echo "[INFO] By default, TCP port 8085 is used by the installed server."
        echo "[INFO] To allow access from remote systems, you may have to enable firewall for example by running:"
        echo "[INFO]   ufw allow 8085/tcp"
fi