Skip to content

make dashy config read only #125

make dashy config read only

make dashy config read only #125

name: Update Homelab Files
on:
push:
branches:
- main
workflow_dispatch:
env:
DOCKER_FILES: -f ai.yml -f monitor.yml -f network.yml -f media.yml -f utilities.yml
DOCKER_ENV: --env-file ./secrets/homelab.env
DOCKER_FLAGS: -d --remove-orphans
jobs:
deploy:
runs-on: "self-hosted"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v4
with:
repository: LegitCamper/homelab-secrets
path: "secrets"
sparse-checkout: |
homelab.env
sparse-checkout-cone-mode: false
token: ${{ secrets.ACCESS_TOKEN }}
- name: install docker compose for tests
uses: KengoTODA/actions-setup-docker-compose@v1
with:
version: "2.14.2"
- name: docker compose dry run
run: |
docker compose --dry-run ${{ env.DOCKER_ENV }} ${{ env.DOCKER_FILES }} up ${{ env.DOCKER_FLAGS }}
exit $?
- name: Copy folder content recursively to remote
uses: garygrossgarten/github-action-scp@v0.8.0
with:
local: ${{ github.workspace }}
remote: /home/${{ secrets.SSH_USER }}/stacks/homelab/
host: ${{ secrets.HOST }}
username: ${{ secrets.SSH_USER }}
password: ${{ secrets.PASSWORD }}
- name: multiple command
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.SSH_USER }}
password: ${{ secrets.PASSWORD }}
script: |
cd ~/stacks/homelab/
docker compose ${{ env.DOCKER_ENV }} ${{ env.DOCKER_FILES }} up ${{ env.DOCKER_FLAGS }}