name: pull on: push: branches: - main env: CONTAINER_NAME: mc-neoforge DIRECTORY_WITH_MODS: /mnt/host/c/Apps/Programs/Docker/mine-mods jobs: stopping: name: Save and backup minecraft world runs-on: ubuntu-latest container: image: alpine/git volumes: - /var/run/docker.sock:/var/run/docker.sock steps: - name: main run: | docker exec ${{ env.CONTAINER_NAME }} rcon-cli save-all docker exec ${{ env.CONTAINER_NAME }} bash -c 'LAST_BACKUP_TIME=$(date +%F-%T) && mkdir backups/$LAST_BACKUP_TIME && cp -R -t backups/$LAST_BACKUP_TIME world/' pulling: name: Pull repo to the mods directory runs-on: ubuntu-latest container: image: alpine/git volumes: - ${{ env.DIRECTORY_WITH_MODS }}:/workspace/project defaults: run: working-directory: /workspace/project steps: - name: main run: | git fetch origin main git reset --hard origin/main starting: name: Restart minecraft server runs-on: ubuntu-latest container: image: alpine/git volumes: - /var/run/docker.sock:/var/run/docker.sock steps: - name: main run: | docker exec ${{ env.CONTAINER_NAME }} rcon-cli stop