Skip to content

⬆️ Update qodana to v2024.1.4 #247

⬆️ Update qodana to v2024.1.4

⬆️ Update qodana to v2024.1.4 #247

Workflow file for this run

name: 'node'
on:
workflow_dispatch:
pull_request:
paths-ignore:
- 'orb/**'
- 'gradle/**'
- 'src/**'
- 'build.gradle.kts'
- 'settings.gradle.kts'
- 'gradle.properties'
- 'gradlew'
- 'gradlew.bat'
- '.github/workflows/gradle.yml'
push:
branches:
- main
- 'releases/*'
paths-ignore:
- 'orb/**'
- 'gradle/**'
- 'src/**'
- 'build.gradle.kts'
- 'settings.gradle.kts'
- 'gradle.properties'
- 'gradlew'
- 'gradlew.bat'
- '.github/workflows/gradle.yml'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Set Node.js 16.x
uses: actions/setup-node@v4.0.2
with:
node-version: 16.x
- name: Install dependencies
run: npm ci && npm run build
- name: Rebuild scan/dist/
run: cd scan && npm run package
- name: Compare the expected and actual dist/ directories
run: |
if [ "$(git diff --ignore-space-at-eol scan/dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m ":bricks: Update \`scan/dist/index.js\`"
git push
exit 1
fi
id: diffscan
# If index.js was different from expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v4
if: ${{ failure() && steps.diffscan.conclusion == 'failure' }}
with:
name: dist
path: scan/dist/
- name: Rebuild vsts/QodanaScan/
run: cd vsts && npm run package
- name: Compare the expected and actual QodanaScan/ directories
run: |
if [ "$(git diff --ignore-space-at-eol vsts/QodanaScan/ | wc -l)" -gt
"0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
git config user.name github-actions
git config user.email github-actions@github.com
git add .
git commit -m ":bricks: Update \`vsts/QodanaScan/index.js\`"
git push
exit 1
fi
id: diffvsts
- uses: actions/upload-artifact@v4
if: ${{ failure() && steps.diffvsts.conclusion == 'failure' }}
with:
name: dist
path: vsts/QodanaScan/
- name: Lint the code
run: npm run lint
build-test:
runs-on: '${{ matrix.os }}'
strategy:
matrix:
os:
- macos-latest
- ubuntu-latest
- windows-latest
needs: [ lint ]
steps:
- uses: actions/checkout@v4
- run: npm ci && npm run build && npm run test
test-action:
runs-on: ${{ matrix.os }}
needs: [lint, build-test]
strategy:
matrix:
os: [ubuntu-latest]
arguments: [
'-i,tests/dotnet',
'-i,tests/duplicates',
'-i,tests/go',
'-i,tests/java',
'-i,tests/js',
'-i,tests/py_error',
'-i,tests/dotnet,--ide,QDNET' # TODO: '-i,tests/dotnet,--linter,jetbrains/qodana-cdnet',
]
# TODO: pr: [ 'true', 'false' ]
include:
- arguments: '-i,tests/dotnet,--ide,QDNET'
os: 'windows-latest'
pr: 'false'
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/checkout@v4
with:
repository: 'JetBrains/code-analytics-examples'
fetch-depth: 0
path: 'tests'
- name: Qodana
uses: ./
with:
args: '${{ matrix.arguments }}'
pr-mode: false
post-pr-comment: false
use-annotations: false
env:
QODANA_TOKEN: ${{ secrets.QODANA_PROJECT_TESTS_TOKEN }}
azure-dev-release:
runs-on: ubuntu-latest
needs: [ lint, build-test ]
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
azure-dev:
- "vsts/vss-extension.dev.json"
- name: Set Node.js 12.x
if: steps.filter.outputs.azure-dev == 'true'
uses: actions/setup-node@v4.0.2
with:
node-version: 12.x
- name: Install dependencies
if: steps.filter.outputs.azure-dev == 'true'
run: cd vsts && npm install && cd QodanaScan && npm install && npm i -g tfx-cli
- name: Package and publish
id: publisher-run
if: steps.filter.outputs.azure-dev == 'true'
continue-on-error: true
run: |
cd vsts && npm run azure-dev
mv JetBrains.qodana-dev-*.vsix qodana-dev.vsix
tfx extension publish --publisher JetBrains --vsix qodana-dev.vsix --share-with qodana-demo -t $AZURE_TOKEN
env:
AZURE_TOKEN: ${{ secrets.AZURE_TOKEN }}
- name: Upload vsix
if: steps.filter.outputs.azure-dev == 'true'
uses: actions/upload-artifact@v4
with:
name: qodana-dev.vsix
path: vsts/qodana-dev.vsix