8 Sitoutukset 03375c3097 ... d4aa60a4f5

Tekijä SHA1 Viesti Päivämäärä
  Lukas Angerer d4aa60a4f5 Delayed service restart to avoid hammering the logs with errors 10 kuukautta sitten
  Lukas Angerer 2ff5947aa3 Explicitly using ARM32 build for running on musicbox Raspberry Pi 10 kuukautta sitten
  Lukas Angerer 6d55a30eea Running cron trigger scripts in situ 10 kuukautta sitten
  Lukas Angerer ae1c83df00 Added missing cron trigger scripts 10 kuukautta sitten
  Lukas Angerer a9f83e882a Setting executable flag on mopidy init script 10 kuukautta sitten
  Lukas Angerer 5d61803d90 Update to .NET 9 1 vuosi sitten
  Lukas Angerer 03375c3097 Setting executable flag on mopidy init script 10 kuukautta sitten
  Lukas Angerer 5b66b9785e Update to .NET 9 1 vuosi sitten

+ 1 - 0
.gitignore

@@ -1,3 +1,4 @@
+*.log
 *.swp
 *.*~
 project.lock.json

+ 3 - 3
Dockerfile

@@ -1,11 +1,11 @@
 #See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
 
-FROM mcr.microsoft.com/dotnet/aspnet:5.0-buster-slim AS base
+FROM mcr.microsoft.com/dotnet/aspnet:9.0-bookworm-slim AS base
 WORKDIR /app
 EXPOSE 80
 EXPOSE 443
 
-FROM mcr.microsoft.com/dotnet/sdk:5.0-buster-slim AS build
+FROM mcr.microsoft.com/dotnet/sdk:9.0-bookworm-slim AS build
 WORKDIR /src
 COPY ["CronAlarm/CronAlarm.csproj", "CronAlarm/"]
 RUN dotnet restore "CronAlarm/CronAlarm.csproj"
@@ -19,4 +19,4 @@ RUN dotnet publish "CronAlarm.csproj" -c Release -o /app/publish
 FROM base AS final
 WORKDIR /app
 COPY --from=publish /app/publish .
-ENTRYPOINT ["dotnet", "CronAlarm.dll"]
+ENTRYPOINT ["dotnet", "CronAlarm.dll"]

+ 1 - 1
data/settings.json

@@ -3,7 +3,7 @@
     "BaseUri": "http://172.17.0.1:5000"
   },
   "Alerts": {
-    "Command": "/home/pi/mpc-alarm-cron.sh",
+    "Command": "/home/pi/projects/CronAlarm/scripts/mpc-alarm-cron.sh",
     "Groups": [
       {
         "Name": "Weekdays",

+ 2 - 2
docker-compose.yml

@@ -1,11 +1,11 @@
 version: "2.0"
 services:
   web:
-    image: executry/cronalarm:latest
+    image: executry/cronalarm:arm32
     build:
       context: .
       dockerfile: ./Dockerfile
     ports:
-      - "7080:80"
+      - "7080:8080"
     volumes:
       - ./data:/app/wwwroot/data

+ 9 - 0
scripts/mpc-alarm-cron.sh

@@ -0,0 +1,9 @@
+#!/bin/bash
+
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null 2>&1 && pwd )"
+LOG="$DIR/mpc-alarm.log"
+
+date -Iseconds >> $LOG
+$DIR/mpc-alarm.sh >> $LOG 2>&1
+echo "" >> $LOG
+

+ 15 - 0
scripts/mpc-alarm.sh

@@ -0,0 +1,15 @@
+#!/bin/bash
+
+mpc --quiet volume 0
+sleep 1
+
+mpc play
+
+for i in {10..70}
+do
+	mpc --quiet volume $i
+	sleep 0.5
+done
+
+echo "wakeup sequence complete"
+

+ 1 - 0
service-units/cron-alarm.service

@@ -6,6 +6,7 @@ Description=CronAlarm Web UI
 
 [Service]
 Restart=always
+RestartSec=10
 # Shutdown container (if running) when unit is stopped
 ExecStartPre=/usr/bin/docker compose -f %h/projects/CronAlarm/docker-compose.yml down -v
 # Start container when unit is started

+ 1 - 0
service-units/cron-api.service

@@ -4,6 +4,7 @@ Description=CronAlarm Host API
 [Service]
 Type=simple
 Restart=always
+RestartSec=10
 ExecStart= %h/projects/CronAlarm/scripts/cron-api.py
 
 # Hardening

+ 1 - 0
service-units/mopidy.service

@@ -4,6 +4,7 @@ Description=Mopidy Server
 [Service]
 Type=simple
 Restart=always
+RestartSec=10
 ExecStart= %h/projects/CronAlarm/scripts/mopidy-init.sh
 
 # No hardening since Mopidy has to load plugins and such