Skip to content

main

main #2539

Workflow file for this run

name: main
on: [push, pull_request]
jobs:
# We use "o" as the name to keep it short since the flavor repeats
# it, and the current actions interface doesn't show very many
# characters in the test names.
o:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# Change the pb_test_gh_job_id definition below after any
# additions/removals of matrix axes. The flavor "/" is
# converted to "_" in the pdb-job-id below.
flavor:
- core+ext/openjdk17/pg-14
- core+ext/openjdk17/pg-16
- rspec/pup-main
- lint/openjdk17
os: [ubuntu-20.04]
ruby: ['3.2']
# Defaults for special-case influencing vars
lein-profile: ['']
drop-joins: ['']
# Special cases
include:
# integration
- flavor: int/openjdk17/pup-main/srv-main/pg-16/rich
os: ubuntu-20.04
ruby: '3.2'
- flavor: int/openjdk17/pup-7.x/srv-7.x/pg-14/rich
os: ubuntu-20.04
ruby: '2.7'
steps:
- name: Compute job outputs
id: computed
run: |
# This id must be unique across all jobs
pdb_test_gh_job_id="${{ matrix.os }}/${{ matrix.flavor }}"
pdb_test_gh_job_id="${pdb_test_gh_job_id//\//_}"
pdb_test_gh_job_id+="_${{ matrix.lein-profile }}"
pdb_test_gh_job_id+="_${{ matrix.drop-joins }}"
echo "day=$(date +%Y-%m-%d)" >> "$GITHUB_OUTPUT"
echo "pdb-job-id=$pdb_test_gh_job_id" >> "$GITHUB_OUTPUT"
- uses: actions/checkout@v3
with:
persist-credentials: false
- uses: ruby/setup-ruby@v1
with:
ruby-version: '${{ matrix.ruby }}'
- uses: actions/cache@v3
with:
key: |
${{ matrix.flavor }}
${{ runner.os }}
${{ hashFiles('**/Gemfile') }}
${{ hashFiles('**/project.clj') }}
${{ steps.computed.outputs.day }}
path: |
ci/local/jdk
vendor/bundle/ruby
~/.m2/repository
~/Library/Caches/Homebrew
- name: Gather inital host info
run: ext/bin/host-info
- env:
LEIN_PROFILES: ${{ matrix.lein-profile }}
PDB_QUERY_OPTIMIZE_DROP_UNUSED_JOINS: ${{ matrix.drop-joins }}
NO_ACCEPTANCE: true
run: ci/bin/prep-and-run-in github ${{ matrix.flavor }}
- uses: actions/upload-artifact@v3
with:
name: "${{ steps.computed.outputs.pdb-job-id }}"
path: |
pg.log
test.log