:task: QD-13129 Add special image for llm experiments #2097
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: '⚙️ CLI' | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - '**.md' | |
| - '.github/dependabot.yml' | |
| - '.github/ISSUE_TEMPLATE/**' | |
| - '.github/pull_request_template.md' | |
| - '.github/SECURITY.md' | |
| - '.github/CODE_OF_CONDUCT.md' | |
| - '.devcontainer/**' | |
| - '.gitattributes' | |
| - '.idea/**' | |
| - '.mailmap' | |
| - '.run/**' | |
| - '.teamcity/**' | |
| - 'LICENSE' | |
| - 'qodana.spdx.json' | |
| - 'bots.json' | |
| pull_request: | |
| paths-ignore: | |
| - '**.md' | |
| - '.github/dependabot.yml' | |
| - '.github/ISSUE_TEMPLATE/**' | |
| - '.github/pull_request_template.md' | |
| - '.github/SECURITY.md' | |
| - '.github/CODE_OF_CONDUCT.md' | |
| - '.devcontainer/**' | |
| - '.gitattributes' | |
| - '.idea/**' | |
| - '.mailmap' | |
| - '.run/**' | |
| - '.teamcity/**' | |
| - 'LICENSE' | |
| - 'qodana.spdx.json' | |
| - 'bots.json' | |
| jobs: | |
| lint: | |
| name: "Lint" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| checks: write | |
| pull-requests: write | |
| actions: read | |
| contents: read | |
| security-events: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/mock-dependencies | |
| - name: Setup Go | |
| uses: actions/setup-go@v6 | |
| with: | |
| cache-dependency-path: "**/*.sum" | |
| go-version-file: go.mod | |
| - name: golangci-lint | |
| uses: golangci/golangci-lint-action@v9 | |
| with: | |
| version: v2.6 | |
| - uses: github/codeql-action/init@v4 | |
| with: | |
| languages: go | |
| - uses: github/codeql-action/autobuild@v4 | |
| - uses: github/codeql-action/analyze@v4 | |
| test: | |
| name: "Test (⚙️ ${{ matrix.os }}, 🐳 ${{ matrix.container-engine }})" | |
| uses: ./.github/workflows/test.yaml | |
| with: | |
| os: ${{ matrix.os }} | |
| container-engine: ${{ matrix.container-engine }} | |
| secrets: inherit | |
| strategy: | |
| matrix: | |
| include: | |
| - os: macos-15-large # Only intel-based macOS runners support virtualization for Docker. | |
| container-engine: docker@latest | |
| - os: windows-latest | |
| container-engine: docker@latest | |
| - os: ubuntu-latest | |
| container-engine: docker@latest | |
| - os: ubuntu-latest | |
| container-engine: podman@latest | |
| - os: ubuntu-latest | |
| container-engine: [email protected] # See also: https://endoflife.date/docker-engine | |
| code-quality: | |
| name: "Qodana" | |
| runs-on: ubuntu-latest | |
| needs: test | |
| permissions: | |
| checks: write | |
| pull-requests: write | |
| actions: read | |
| contents: write | |
| security-events: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - uses: ./.github/actions/mock-dependencies | |
| - uses: docker/login-action@v3 | |
| with: | |
| registry: registry.jetbrains.team | |
| username: ${{ secrets.SPACE_USERNAME }} | |
| password: ${{ secrets.SPACE_PASSWORD }} | |
| - uses: actions/setup-go@v6 | |
| with: | |
| cache-dependency-path: "**/*.sum" | |
| go-version-file: go.mod | |
| - name: Download coverage artifacts | |
| uses: actions/download-artifact@v7 | |
| with: | |
| pattern: coverage-* | |
| path: coverage-reports | |
| - name: Merge coverage reports | |
| run: | | |
| mkdir -p .qodana/code-coverage | |
| echo "mode: set" > .qodana/code-coverage/coverage.out | |
| find coverage-reports -name "*.out" -exec tail -n +2 {} \; >> .qodana/code-coverage/coverage.out | |
| - uses: JetBrains/qodana-action@main | |
| env: | |
| QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }} | |
| with: | |
| args: --baseline,.github/qodana.sarif.json | |
| use-nightly: true | |
| pr-mode: false | |
| upload-result: true | |
| - uses: actions/upload-artifact@v6 | |
| with: | |
| name: qodana-artifacts | |
| path: "${{ runner.temp }}/qodana/results" | |
| goreleaser: | |
| name: "GoReleaser (${{ github.ref == 'refs/heads/main' && 'nightly' || 'build' }})" | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| cache-dependency-path: "**/*.sum" | |
| go-version-file: go.mod | |
| - name: Mock closed-source dependencies | |
| shell: bash | |
| run: >- | |
| touch | |
| internal/tooling/baseline-cli.jar | |
| internal/tooling/intellij-report-converter.jar | |
| internal/tooling/qodana-fuser.jar | |
| - name: Download CLI dependencies | |
| run: go generate -v ./internal/tooling/... | |
| - name: Build CLI only | |
| if: github.ref != 'refs/heads/main' | |
| uses: goreleaser/goreleaser-action@v6 | |
| with: | |
| distribution: goreleaser-pro | |
| version: "~> v2" | |
| args: build --snapshot --clean --id cli | |
| env: | |
| GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }} | |
| - name: Release nightly CLI only | |
| if: github.ref == 'refs/heads/main' | |
| uses: goreleaser/goreleaser-action@v6 | |
| with: | |
| distribution: goreleaser-pro | |
| version: "~> v2" | |
| args: release --nightly --clean --skip=chocolatey,nfpm,homebrew,scoop,snapcraft | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }} | |
| # install-script-check: | |
| # strategy: | |
| # fail-fast: false | |
| # matrix: | |
| # os: [ubuntu-latest, macos-latest] | |
| # runs-on: ${{ matrix.os }} | |
| # steps: | |
| # - uses: actions/checkout@v6 | |
| # - run: | | |
| # ./install | |
| # ./install nightly |