Update .gitignore #4
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: Build All Projects | |
| on: | |
| push: | |
| branches: [ main ] | |
| workflow_dispatch: | |
| jobs: | |
| build-section-01: | |
| name: "Section 01: Java Fundamentals (2 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 01: Java Fundamentals" | |
| find section-01-java-fundamentals -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 01 completed successfully" | |
| build-section-02: | |
| name: "Section 02: Conditionals (1 project)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 02: Conditionals" | |
| find section-02-conditionals -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 02 completed successfully" | |
| build-section-03: | |
| name: "Section 03: Loops (1 project)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 03: Loops" | |
| find section-03-loops -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 03 completed successfully" | |
| build-section-04: | |
| name: "Section 04: Methods (1 project)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 04: Methods" | |
| find section-04-methods -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 04 completed successfully" | |
| build-section-05: | |
| name: "Section 05: Arrays (1 project)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 05: Arrays" | |
| find section-05-arrays -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 05 completed successfully" | |
| build-section-06: | |
| name: "Section 06: Java OOP (18 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 06: Java OOP" | |
| find section-06-java-oop -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 06 completed successfully" | |
| build-section-07: | |
| name: "Section 07: Collections (7 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 07: Collections" | |
| find section-07-collections -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 07 completed successfully" | |
| build-section-08: | |
| name: "Section 08: Exception Handling (7 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 08: Exception Handling" | |
| find section-08-exception-handling -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 08 completed successfully" | |
| build-section-09: | |
| name: "Section 09: Lambdas & Streams (7 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 09: Lambdas & Streams" | |
| find section-09-lambdas-streams -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 09 completed successfully" | |
| build-section-10: | |
| name: "Section 10: Unit Testing (9 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 10: Unit Testing" | |
| find section-10-unit-testing-quick-start -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 10 completed successfully" | |
| build-section-11: | |
| name: "Section 11: TDD (3 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 11: TDD" | |
| find section-11-test-driven-development-quick-start -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 11 completed successfully" | |
| build-section-12: | |
| name: "Section 12: Spring Boot Quick Start (1 project)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 12: Spring Boot Quick Start" | |
| find section-12-spring-boot-3-quick-start -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 12 completed successfully" | |
| build-section-13: | |
| name: "Section 13: Spring Boot REST APIs (4 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 13: Spring Boot REST APIs" | |
| find section-13-spring-boot-3-rest-apis-quick-start -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 13 completed successfully" | |
| build-section-14: | |
| name: "Section 14: Spring Boot MVC (2 projects)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 25 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '25' | |
| distribution: 'temurin' | |
| cache: 'maven' | |
| - name: Build all projects in section | |
| run: | | |
| set -e | |
| echo "Building Section 14: Spring Boot MVC" | |
| find section-14-spring-boot-3-spring-mvc-quick-start -name pom.xml -not -path "*/target/*" | sort | while read pom; do | |
| echo "Building $(dirname $pom)" | |
| mvn clean compile -B -q -f "$pom" || { | |
| echo "Failed to compile $pom" | |
| exit 1 | |
| } | |
| done | |
| echo "Section 14 completed successfully" |