55 lines
1.6 KiB
Plaintext
55 lines
1.6 KiB
Plaintext
[Unit]
|
|
Description=AIOS Baseline 1.1 isolated validation API (no production authority cutover)
|
|
After=local-fs.target
|
|
ConditionPathExists=@PYTHON_EXECUTABLE@
|
|
ConditionPathExists=/etc/aios-baseline/server.json
|
|
ConditionPathExists=@RELEASE_ROOT@/active-runtime/app/aios_baseline/cli.py
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=aios-baseline
|
|
Group=aios-baseline
|
|
WorkingDirectory=@RELEASE_ROOT@
|
|
Environment=PYTHONPATH=@RELEASE_ROOT@/active-runtime/app
|
|
Environment=PYTHONDONTWRITEBYTECODE=1
|
|
Environment=AIOS_GITOPS_WRITES_ENABLED=false
|
|
Environment=PATH=/usr/bin:/bin
|
|
LoadCredentialEncrypted=aios-baseline-machine-key:/etc/credstore.encrypted/aios-baseline-machine-key
|
|
LoadCredentialEncrypted=aios-baseline-user-token:/etc/credstore.encrypted/aios-baseline-user-token
|
|
LoadCredentialEncrypted=aios-baseline-worker-token:/etc/credstore.encrypted/aios-baseline-worker-token
|
|
ExecStart=@PYTHON_EXECUTABLE@ -B -m aios_baseline.cli server --config /etc/aios-baseline/server.json
|
|
Restart=on-failure
|
|
RestartSec=5s
|
|
TimeoutStopSec=30s
|
|
KillMode=control-group
|
|
UMask=0077
|
|
StateDirectory=aios-baseline
|
|
StateDirectoryMode=0700
|
|
ReadWritePaths=/var/lib/aios-baseline
|
|
NoNewPrivileges=yes
|
|
CapabilityBoundingSet=
|
|
AmbientCapabilities=
|
|
ProtectSystem=strict
|
|
ProtectHome=yes
|
|
PrivateTmp=yes
|
|
PrivateDevices=yes
|
|
ProtectKernelTunables=yes
|
|
ProtectKernelModules=yes
|
|
ProtectKernelLogs=yes
|
|
ProtectControlGroups=yes
|
|
ProtectClock=yes
|
|
ProtectProc=invisible
|
|
ProcSubset=pid
|
|
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
|
|
IPAddressDeny=any
|
|
IPAddressAllow=localhost
|
|
RestrictSUIDSGID=yes
|
|
LockPersonality=yes
|
|
SystemCallArchitectures=native
|
|
RestrictRealtime=yes
|
|
TasksMax=64
|
|
MemoryMax=512M
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|