code samples: Gradle 8.10.2 #1183
This file contains 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: Code Samples | |
on: | |
push: | |
branches: [ main ] | |
paths: [ 'code_samples/**','.github/workflows/code-samples.yml' ] | |
pull_request: | |
paths: [ 'code_samples/**','.github/workflows/code-samples.yml' ] | |
env: | |
PLUGIN_VERIFIER_IDE_VERSIONS: '2023.3.7 2024.1.5 2024.2' | |
jobs: | |
gradleValidation: | |
name: Gradle Wrappers | |
runs-on: ubuntu-latest | |
steps: | |
- name: Fetch Sources | |
uses: actions/checkout@v4 | |
- name: Gradle Wrapper Validation | |
uses: gradle/actions/wrapper-validation@v4 | |
samples: | |
name: Code Samples / ${{ matrix.plugin }} | |
needs: gradleValidation | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
plugin: | |
- action_basics | |
- comparing_string_references_inspection | |
- conditional_operator_intention | |
- editor_basics | |
- facet_basics | |
- framework_basics | |
- kotlin_demo | |
- live_templates | |
- max_opened_projects | |
- module | |
- project_model | |
- project_view_pane | |
- project_wizard | |
- psi_demo | |
- run_configuration | |
- simple_language_plugin | |
- tool_window | |
- tree_structure_provider | |
steps: | |
- name: Fetch Sources | |
uses: actions/checkout@v4 | |
- name: Setup Java | |
uses: actions/setup-java@v4 | |
with: | |
distribution: zulu | |
java-version: 17 | |
- name: Verify Plugin | |
run: (cd code_samples/${{ matrix.plugin }}; ./gradlew verifyPlugin) | |
- name: Test Plugin | |
run: (cd code_samples/${{ matrix.plugin }}; ./gradlew test) | |
- name: Export Properties | |
id: properties | |
shell: bash | |
run: | | |
echo "ideVersions=${PLUGIN_VERIFIER_IDE_VERSIONS// /-}" >> $GITHUB_OUTPUT | |
echo "pluginVerifierHomeDir=~/.pluginVerifier" >> $GITHUB_OUTPUT | |
- name: Run Plugin Verifier | |
run: | | |
echo " | |
tasks { | |
runPluginVerifier { | |
ideVersions.set("\"$PLUGIN_VERIFIER_IDE_VERSIONS\"".split(' ').toList()) | |
} | |
} | |
" >> code_samples/${{ matrix.plugin }}/build.gradle.kts | |
cd code_samples/${{ matrix.plugin }} | |
./gradlew runPluginVerifier -Pplugin.verifier.home.dir=${{ steps.properties.outputs.pluginVerifierHomeDir }} | |
- name: Collect Plugin Verifier Result | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.plugin }}-pluginVerifier-result | |
path: ${{ github.workspace }}/code_samples/${{ matrix.plugin }}/build/reports/pluginVerifier | |
mirror: | |
name: Code Samples Mirror | |
if: github.ref == 'refs/heads/main' && github.repository == 'JetBrains/intellij-sdk-docs' | |
needs: samples | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install SSH key | |
uses: shimataro/ssh-key-action@v2 | |
with: | |
key: ${{ secrets.SSH_KEY }} | |
known_hosts: ${{ secrets.KNOWN_HOSTS }} | |
- name: Prepare Mirror | |
run: | | |
git clone --bare git@github.com:JetBrains/intellij-sdk-docs.git . | |
git branch | grep -v "main" | xargs -r git branch -D | |
git filter-branch --prune-empty --subdirectory-filter code_samples main | |
git push --mirror git@github.com:JetBrains/intellij-sdk-code-samples.git |