Remove hex and rebar, use paths and add service file
This commit is contained in:
parent
90655e53d9
commit
8c8ee895ea
|
@ -6,20 +6,6 @@
|
||||||
tags:
|
tags:
|
||||||
- setup
|
- setup
|
||||||
- build
|
- build
|
||||||
- name: Fetch hex
|
|
||||||
shell:
|
|
||||||
chdir: "/home/repositories/pleroma/"
|
|
||||||
cmd: "MIX_ENV=prod mix local.hex --force"
|
|
||||||
tags:
|
|
||||||
- setup
|
|
||||||
- build
|
|
||||||
- name: Fetch rebar
|
|
||||||
shell:
|
|
||||||
chdir: "/home/repositories/pleroma/"
|
|
||||||
cmd: "MIX_ENV=prod mix local.rebar --force"
|
|
||||||
tags:
|
|
||||||
- setup
|
|
||||||
- build
|
|
||||||
- name: Fetch dependencies
|
- name: Fetch dependencies
|
||||||
shell:
|
shell:
|
||||||
chdir: "/home/repositories/pleroma/"
|
chdir: "/home/repositories/pleroma/"
|
||||||
|
@ -29,7 +15,7 @@
|
||||||
- build
|
- build
|
||||||
- name: Ensure that output dir is created
|
- name: Ensure that output dir is created
|
||||||
file:
|
file:
|
||||||
path: '/etc/pleroma'
|
path: "{{ pleroma.root }}"
|
||||||
state: directory
|
state: directory
|
||||||
follow: yes
|
follow: yes
|
||||||
tags:
|
tags:
|
||||||
|
@ -38,7 +24,16 @@
|
||||||
- name: Build pleroma
|
- name: Build pleroma
|
||||||
shell:
|
shell:
|
||||||
chdir: "/home/repositories/pleroma/"
|
chdir: "/home/repositories/pleroma/"
|
||||||
cmd: "MIX_ENV=prod mix release --path /etc/pleroma"
|
cmd: "MIX_ENV=prod mix release --path {{ pleroma.root }}"
|
||||||
tags:
|
tags:
|
||||||
- setup
|
- setup
|
||||||
- build
|
- build
|
||||||
|
- name: Copy systemd service file
|
||||||
|
template:
|
||||||
|
follow: yes
|
||||||
|
src: 'pleroma.service.j2'
|
||||||
|
dest: '/etc/systemd/system/pleroma.service'
|
||||||
|
notify: Run service actions
|
||||||
|
tags:
|
||||||
|
- pleroma
|
||||||
|
- systemd
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Pleroma
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/bin/pleroma
|
||||||
|
Restart=on-failure
|
||||||
|
DynamicUser=true
|
||||||
|
ProtectSystem=strict
|
||||||
|
BindReadOnlyPaths={{ pleroma.data }}:/pleroma-data
|
||||||
|
RootDirectory={{ pleroma.root }}
|
||||||
|
ProtectSystem=strict
|
||||||
|
PrivateUsers=true
|
||||||
|
NoNewPrivileges=yes
|
||||||
|
ProtectControlGroups=yes
|
||||||
|
ProtectKernelModules=yes
|
||||||
|
ProtectKernelTunables=yes
|
||||||
|
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 AF_NETLINK
|
||||||
|
RestrictNamespaces=yes
|
||||||
|
RestrictRealtime=yes
|
||||||
|
RestrictSUIDSGID=yes
|
||||||
|
MemoryDenyWriteExecute=yes
|
||||||
|
LockPersonality=yes
|
||||||
|
PrivateTmp=yes
|
||||||
|
PrivateDevices=yes
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
Reference in New Issue