name: Build & Deploy on: push: tags: - '[0-9]+.[0-9]+.[0-9]+' jobs: deploy: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Login au registry run: | echo "${{ secrets.REGISTRY_PASSWORD }}" | \ docker login registry.maisongrondin.fr \ -u ${{ secrets.REGISTRY_USERNAME }} \ --password-stdin - name: Build et push vers le registry run: | docker build \ -t registry.maisongrondin.fr/alexandre/budget-commun:${{ gitea.ref_name }} \ -t registry.maisongrondin.fr/alexandre/budget-commun:latest \ -f backend/Dockerfile . docker push registry.maisongrondin.fr/alexandre/budget-commun:${{ gitea.ref_name }} docker push registry.maisongrondin.fr/alexandre/budget-commun:latest - name: Mettre à jour la version sur TrueNAS run: | docker run --rm \ -v /mnt/.ix-apps/app_configs/budget-commun:/app \ alpine:3 sh -c \ "sed -i 's/\"app_version\": \".*\"/\"app_version\": \"${{ gitea.ref_name }}\"/' /app/versions/1.0.0/app.yaml && \ sed -i 's/^\"version\": \".*\"/\"version\": \"${{ gitea.ref_name }}\"/' /app/versions/1.0.0/app.yaml && \ sed -i 's/\"app_version\": \".*\"/\"app_version\": \"${{ gitea.ref_name }}\"/' /app/metadata.yaml && \ sed -i 's/^\"version\": \".*\"/\"version\": \"${{ gitea.ref_name }}\"/' /app/metadata.yaml && \ sed -i 's/\"human_version\": \".*\"/\"human_version\": \"${{ gitea.ref_name }}_${{ gitea.ref_name }}\"/' /app/metadata.yaml" - name: Redéployer sur TrueNAS run: | curl -sf -X POST http://172.16.11.1/api/v2.0/app/redeploy \ -H "Authorization: Bearer ${{ secrets.TRUENAS_API_KEY }}" \ -H "Content-Type: application/json" \ -d '"budget-commun"'