# https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#workflow_dispatch
name: "CI: Manual"

on:
  workflow_dispatch:

env:
  CORE_VERSION: dev

jobs:
  qa:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6

      - name: Set up Go
        uses: actions/setup-go@v6
        with:
          go-version-file: 'go.mod'

      - name: Install system dependencies
        run: |
          sudo apt-get update
          sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev

      - name: Build core CLI
        run: |
          go build -ldflags "-X github.com/host-uk/core/pkg/cli.AppVersion=${{ env.CORE_VERSION }}" -o /usr/local/bin/core .
          core --version

      - name: Generate code
        run: go generate ./internal/cmd/updater/...

      - name: Run QA
        # Skip lint until golangci-lint supports Go 1.25
        run: core go qa --skip=lint

      - name: Verify build
        run: |
          core build --targets=linux/amd64 --ci
          dist/linux_amd64/core --version
