name: AutoUpdate on: schedule: - cron: "0 3 * * *" workflow_dispatch: permissions: contents: write actions: write jobs: prepare: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Go uses: actions/setup-go@v5 with: go-version: "1.24" cache: true - name: Install dependencies run: go get ./... test: needs: prepare runs-on: ubuntu-latest container: golang:1 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: apt-get update && apt-get install -y ca-certificates make - name: Tidy and update modules run: | go mod tidy go get -u -v ./... - name: Run tests run: CI_RUN=${CI} go test -v ./... - name: Configure git safe directory run: git config --global --add safe.directory /__w/lolcathost/lolcathost - name: Commit changes id: auto-commit uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: "Update go.mod and go.sum" file_pattern: "go.mod go.sum" - name: Trigger release workflow if: steps.auto-commit.outputs.changes_detected == 'true' uses: actions/github-script@v7 with: github-token: ${{ secrets.GITHUB_TOKEN }} script: | await github.rest.actions.createWorkflowDispatch({ owner: 'lukaszraczylo', repo: 'lolcathost', workflow_id: 'release.yml', ref: 'main' })