kotlin_demo: Kotlin 1.9.25 #1166
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.2.6 2023.3.6 2024.1.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/[email protected] | |
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 [email protected]: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 [email protected]:JetBrains/intellij-sdk-code-samples.git |