name: Develop & Snapshot on: push: branches: - "develop" jobs: build-and-snapshot: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '11' - name: Setup Clojure uses: DeLaGuardo/setup-clojure@master with: cli: '1.12.0.1488' - name: Cache All The Things uses: actions/cache@v4 with: path: | ~/.m2/repository ~/.gitlibs ~/.clojure ~/.cpcache key: ${{ runner.os }}-${{ hashFiles('**/deps.edn') }} - name: Setup Databases run: docker compose up -d env: MYSQL_ROOT_PASSWORD: testing - name: Run MariaDB Tests run: clojure -M:test:runner env: MYSQL_ROOT_PASSWORD: testing NEXT_JDBC_TEST_MYSQL: yes NEXT_JDBC_TEST_MARIADB: yes - name: Run All Tests and Snapshot run: clojure -T:build ci :snapshot true env: MYSQL_ROOT_PASSWORD: testing NEXT_JDBC_TEST_MYSQL: yes NEXT_JDBC_TEST_XTDB: yes NEXT_JDBC_TEST_MSSQL: yes MSSQL_SA_PASSWORD: Str0ngP4ssw0rd - name: Deploy Snapshot run: clojure -T:build deploy :snapshot true env: CLOJARS_PASSWORD: ${{secrets.DEPLOY_TOKEN}} CLOJARS_USERNAME: ${{secrets.DEPLOY_USERNAME}} build: runs-on: ubuntu-latest strategy: matrix: java: [ '11', '17', '21' ] steps: - uses: actions/checkout@v4 - uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: ${{ matrix.java }} - name: Setup Clojure uses: DeLaGuardo/setup-clojure@master with: cli: '1.12.0.1488' - name: Cache All The Things uses: actions/cache@v4 with: path: | ~/.m2/repository ~/.clojure ~/.cpcache key: ${{ runner.os }}-${{ hashFiles('**/deps.edn') }} - name: Run Tests run: clojure -T:build test