Fix/desktop open with tool access (#6056) #56
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: AI Engine CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| jobs: | |
| engine: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| defaults: | |
| run: | |
| working-directory: engine | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies | |
| run: make install | |
| - name: Run fixers | |
| # Ignore errors here because we're going to add comments for them in the following steps before actually failing | |
| run: make fix || true | |
| - name: Check for fixer changes | |
| id: fixer_changes | |
| run: | | |
| if git diff --quiet; then | |
| echo "changed=false" >> "$GITHUB_OUTPUT" | |
| else | |
| echo "changed=true" >> "$GITHUB_OUTPUT" | |
| fi | |
| - name: Post fixer suggestions | |
| if: steps.fixer_changes.outputs.changed == 'true' && github.event_name == 'pull_request' | |
| uses: reviewdog/action-suggester@v1 | |
| continue-on-error: true | |
| with: | |
| tool_name: engine-make-fix | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| filter_mode: file | |
| fail_level: any | |
| level: info | |
| - name: Comment on fixer suggestions | |
| if: steps.fixer_changes.outputs.changed == 'true' && github.event_name == 'pull_request' | |
| uses: actions/github-script@v7 | |
| with: | |
| script: | | |
| await github.rest.issues.createComment({ | |
| owner: context.repo.owner, | |
| repo: context.repo.repo, | |
| issue_number: context.issue.number, | |
| body: "The Python code in your PR has formatting/linting issues. Consider running `make fix` locally or setting up your editor's Ruff integration to auto-format and lint your files as you go, or commit the suggested changes on this PR.", | |
| }); | |
| - name: Verify fixer changes are committed | |
| if: steps.fixer_changes.outputs.changed == 'true' | |
| run: | | |
| if ! git diff --exit-code; then | |
| echo "Fixes are out of date." | |
| echo "Apply the reviewdog suggestions or run 'make fix' from engine/ and commit the updated files." | |
| git --no-pager diff --stat | |
| exit 1 | |
| fi | |
| - name: Run linting | |
| run: make lint | |
| - name: Run type checking | |
| run: make typecheck | |
| - name: Run tests | |
| run: make test |