Improving the article (#362) #762
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: CI Builds | |
| on: [push] | |
| jobs: | |
| generate-cursor-rules: | |
| name: Generate Cursor Rules | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| submodules: true # Fetches all submodules | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'graalvm' # See 'Supported distributions' for available options | |
| java-version: '25' | |
| - name: Generate Cursor Rules | |
| run: ./mvnw --batch-mode --no-transfer-progress verify --file pom.xml | |
| - name: Archive Cursor Rules | |
| run: | | |
| zip -r cursor-rules.zip .cursor/ | |
| echo "Created cursor-rules.zip with $(du -h cursor-rules.zip | cut -f1) size" | |
| - name: Upload Cursor Rules Archive | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: cursor-rules | |
| path: cursor-rules.zip | |
| retention-days: 90 | |
| validate-markdown: | |
| name: Validate Markdown Files | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| submodules: true # Fetches all submodules | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'graalvm' # See 'Supported distributions' for available options | |
| java-version: '24' | |
| - name: Install JBang | |
| run: | | |
| curl -Ls https://sh.jbang.dev | bash -s - app setup | |
| echo "$HOME/.jbang/bin" >> $GITHUB_PATH | |
| - name: Validate Markdown Files | |
| run: jbang .github/scripts/MarkdownValidator.java --verbose . | |
| examples: | |
| name: Build Examples | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| example: | |
| - { name: "Maven", path: "examples/maven-demo", goal: "verify" } | |
| - { name: "Spring Boot", path: "examples/spring-boot-demo/implementation", goal: "verify -Pjacoco" } | |
| - { name: "AWS Lambda", path: "examples/aws-lambda-hello-world", goal: "package" } | |
| - { name: "Azure Function", path: "examples/azure-function-hello-world", goal: "package" } | |
| - { name: "Spring Boot Memory Leak", path: "examples/spring-boot-memory-leak-demo", goal: "package" } | |
| - { name: "Spring Boot Performance Bottleneck", path: "examples/spring-boot-performance-bottleneck-demo", goal: "package" } | |
| - { name: "Spring Boot JMeter", path: "examples/spring-boot-jmeter-demo", goal: "package" } | |
| - { name: "Quarkus", path: "examples/quarkus-demo", goal: "package" } | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| submodules: true # Fetches all submodules | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'graalvm' # See 'Supported distributions' for available options | |
| java-version: '24' | |
| - name: Build ${{ matrix.example.name }} | |
| run: cd ${{ matrix.example.path }} && ./mvnw --batch-mode --no-transfer-progress ${{ matrix.example.goal }} --file pom.xml |