on: workflow_dispatch: inputs: reason: description: 'Reason for running' required: false default: 'Manual trigger' push: branches: [main] pull_request: types: [opened, synchronize, reopened] jobs: sonarqube: # 1. Update this to match your EXACT Gitea runner label runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v6 with: fetch-depth: 0 - name: SonarQube Scan # 2. Replaced with the official, actively maintained action uses: SonarSource/sonarqube-scan-action@v8.1.0 env: # 3. SonarSource uses environment variables, not 'with' parameters SONAR_HOST_URL: ${{ secrets.SONARQUBE_HOST }} SONAR_TOKEN: ${{ secrets.SONARQUBE_TOKEN }}