Complete rename from typo to typr including Maven coordinates (dev.typr) #746
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 | |
| on: | |
| push: | |
| tags: [ 'v*' ] | |
| branches: [ 'main' ] | |
| pull_request: | |
| branches: [ 'main' ] | |
| jobs: | |
| scalafmt: | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-latest | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Scalafmt Check | |
| run: bleep fmt --check | |
| tests: | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-latest | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| env: | |
| PG_MAJOR: 16 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Start Postgres | |
| run: docker compose up -d postgres | |
| - name: Wait for Postgres | |
| run: | | |
| for i in {1..30}; do | |
| if docker compose exec -T postgres pg_isready -U postgres; then | |
| echo "Postgres is ready" | |
| break | |
| fi | |
| echo "Waiting for Postgres... ($i/30)" | |
| sleep 2 | |
| done | |
| - name: Run general tests | |
| run: bleep test tests | |
| build-scala212: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Compile for 2.12 | |
| run: bleep compile typr@jvm212 | |
| build-postgres: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 25 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| postgres-version: [12, 16] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Start Postgres | |
| env: | |
| PG_MAJOR: ${{ matrix.postgres-version }} | |
| run: docker compose up -d postgres | |
| - name: Wait for Postgres | |
| run: | | |
| for i in {1..30}; do | |
| if docker compose exec -T postgres pg_isready -U postgres; then | |
| echo "Postgres is ready" | |
| break | |
| fi | |
| echo "Waiting for Postgres... ($i/30)" | |
| sleep 2 | |
| done | |
| - name: Compile all Scala versions | |
| run: | | |
| bleep compile typr@jvm213 | |
| bleep compile typr@jvm3 | |
| - name: Run Scala 2.13 Postgres tests | |
| env: | |
| CI: true | |
| run: | | |
| bleep test typr-tester-anorm@jvm213 | |
| bleep test typr-tester-doobie@jvm213 | |
| bleep test typr-tester-zio-jdbc@jvm213 | |
| - name: Run Scala 3 Postgres tests | |
| env: | |
| CI: true | |
| run: | | |
| bleep test typr-tester-anorm@jvm3 | |
| bleep test typr-tester-doobie@jvm3 | |
| bleep test typr-tester-zio-jdbc@jvm3 | |
| bleep test typr-tester-typr-scala-new | |
| bleep test typr-tester-typr-scala-old | |
| - name: Run Java Postgres tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-typr-java | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Run Kotlin Postgres tests | |
| env: | |
| CI: true | |
| run: ./gradlew :typr-tester-typr-kotlin:test | |
| build-mariadb: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Start MariaDB | |
| run: docker compose up -d mariadb | |
| - name: Wait for MariaDB | |
| run: | | |
| for i in {1..30}; do | |
| if docker compose exec -T mariadb mariadb -u typr -ppassword -e "SELECT 1" typr 2>/dev/null; then | |
| echo "MariaDB is ready" | |
| break | |
| fi | |
| echo "Waiting for MariaDB... ($i/30)" | |
| sleep 2 | |
| done | |
| - name: Run MariaDB Scala tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-mariadb-scala | |
| - name: Run MariaDB Java tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-mariadb-java | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Run MariaDB Kotlin tests | |
| env: | |
| CI: true | |
| run: ./gradlew :typr-tester-mariadb-kotlin:test | |
| build-oracle: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Start Oracle and wait for healthy | |
| run: | | |
| docker compose up -d oracle | |
| echo "Waiting for Oracle to be healthy (this may take several minutes)..." | |
| docker compose up -d --wait oracle | |
| - name: Run Oracle Scala tests | |
| env: | |
| CI: true | |
| run: | | |
| bleep test typr-tester-oracle-scala | |
| bleep test typr-tester-oracle-scala-new | |
| - name: Run Oracle Java tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-oracle-java | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Run Oracle Kotlin tests | |
| env: | |
| CI: true | |
| run: ./gradlew :typr-tester-oracle-kotlin:test | |
| build-duckdb: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Run DuckDB Scala tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-duckdb-scala | |
| - name: Run DuckDB Java tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-duckdb-java | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Run DuckDB Kotlin tests | |
| env: | |
| CI: true | |
| run: ./gradlew :typr-tester-duckdb-kotlin:test | |
| build-sqlserver: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 25 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Start SQL Server and wait for healthy | |
| run: | | |
| docker compose up -d sqlserver | |
| echo "Waiting for SQL Server to be healthy..." | |
| docker compose up -d --wait sqlserver | |
| - name: Run SQL Server Scala tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-sqlserver-scala | |
| - name: Run SQL Server Java tests | |
| env: | |
| CI: true | |
| run: bleep test typr-tester-sqlserver-java | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Run SQL Server Kotlin tests | |
| env: | |
| CI: true | |
| run: ./gradlew :typr-tester-sqlserver-kotlin:test | |
| build-openapi: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Set up JDK | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '21' | |
| distribution: 'temurin' | |
| - name: Compile Scala OpenAPI testers | |
| run: | | |
| bleep compile openapi-test-scala-http4s | |
| bleep compile openapi-test-scala-spring | |
| - name: Compile Java OpenAPI testers | |
| run: | | |
| bleep compile openapi-test-java-jaxrs-client-jdk | |
| bleep compile openapi-test-java-quarkus | |
| bleep compile openapi-test-java-spring | |
| - name: Sourcegen | |
| run: bleep sourcegen | |
| - name: Compile Kotlin OpenAPI testers (via gradle) | |
| run: | | |
| ./gradlew :openapi-test-kotlin-server-jaxrs-client-jdk:compileKotlin | |
| ./gradlew :openapi-test-kotlin-server-spring-client-jdk:compileKotlin | |
| ./gradlew :openapi-test-kotlin-server-quarkus-reactive-client-jdk:compileKotlin | |
| build-docs: | |
| timeout-minutes: 20 | |
| runs-on: ubuntu-latest | |
| if: "!contains(github.event.head_commit.message, 'ci skip')" | |
| env: | |
| PG_MAJOR: 16 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - name: Start up Postgres | |
| run: docker compose up -d postgres | |
| - name: Wait for Postgres | |
| run: | | |
| for i in {1..30}; do | |
| if docker compose exec -T postgres pg_isready -U postgres; then | |
| echo "Postgres is ready" | |
| break | |
| fi | |
| echo "Waiting for Postgres... ($i/30)" | |
| sleep 2 | |
| done | |
| - name: Build docs | |
| run: bleep generate-docs | |
| release: | |
| timeout-minutes: 15 | |
| runs-on: ubuntu-latest | |
| needs: [ scalafmt, tests, build-postgres, build-mariadb, build-oracle, build-duckdb, build-sqlserver ] | |
| if: "startsWith(github.ref, 'refs/tags/v')" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: bleep-build/[email protected] | |
| - uses: coursier/cache-action@v6 | |
| with: | |
| extraFiles: bleep.yaml | |
| - id: get_version | |
| uses: battila7/get-version-action@v2 | |
| with: | |
| repo-token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Release | |
| run: bleep --dev publish | |
| env: | |
| PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }} | |
| PGP_SECRET: ${{ secrets.PGP_SECRET }} | |
| SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} | |
| SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} | |
| - name: Create github release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| repo-token: ${{ secrets.GITHUB_TOKEN }} | |
| name: "${{ steps.get_version.outputs.version-without-v }}" | |
| prerelease: false | |
| generate_release_notes: true | |
| permissions: | |
| contents: write |