Feat/form brown bear #2118
Workflow file for this run
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
| # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node | |
| # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions | |
| name: Node.js CI | |
| on: | |
| push: | |
| branches: [ master ] | |
| pull_request: | |
| branches: [ master ] | |
| jobs: | |
| sqlite: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| redis-version: [3, latest] | |
| steps: | |
| - name: Install imagemagick and HEIF support | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y imagemagick libheif-examples | |
| - uses: actions/checkout@v6 | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .nvmrc | |
| - name: Start Redis ${{ matrix.redis-version }} | |
| uses: zhulik/redis-action@1.1.0 | |
| with: | |
| redis version: ${{ matrix.redis-version }} | |
| - run: npm ci | |
| - run: npm run test:sqlite | |
| env: | |
| CI: true | |
| postgres: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| redis-version: [3, latest] | |
| postgresql-version: [17.3-alpine, latest] | |
| steps: | |
| - name: Install HEIF support | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y libheif-examples | |
| - uses: actions/checkout@v6 | |
| - name: Start Postgres ${{ matrix.postgresql-version }} | |
| uses: harmon758/postgresql-action@v1 | |
| with: | |
| postgresql version: ${{ matrix.postgresql-version }} | |
| postgresql db: testdb | |
| postgresql user: testuser | |
| postgresql password: testpass | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .nvmrc | |
| - name: Start Redis ${{ matrix.redis-version }} | |
| uses: zhulik/redis-action@1.1.0 | |
| with: | |
| redis version: ${{ matrix.redis-version }} | |
| - run: npm ci | |
| - run: npm run test:pg | |
| env: | |
| CI: true | |
| TEST_DATABASE_URL: 'postgres://testuser:testpass@localhost/testdb' | |
| dbschema: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| redis-version: [3] | |
| postgresql-version: [17.3-alpine] | |
| steps: | |
| # Step to install PostgreSQL 17 client tools and HEIF support | |
| - name: Add PostgreSQL 17 repository | |
| run: | | |
| sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' | |
| wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - | |
| sudo apt-get update | |
| sudo apt-get install -y postgresql-client-17 libheif-examples | |
| # Ensure PostgreSQL 17 binaries are used by exporting the correct PATH | |
| - name: Check version of pg_dump | |
| run: | | |
| export PATH="/usr/lib/postgresql/17/bin:$PATH" | |
| pg_dump -V | |
| - uses: actions/checkout@v6 | |
| - name: Start Postgres ${{ matrix.postgresql-version }} | |
| uses: harmon758/postgresql-action@v1 | |
| with: | |
| postgresql version: ${{ matrix.postgresql-version }} | |
| postgresql db: testdb | |
| postgresql user: testuser | |
| postgresql password: testpass | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .nvmrc | |
| - name: Start Redis ${{ matrix.redis-version }} | |
| uses: zhulik/redis-action@1.1.0 | |
| with: | |
| redis version: ${{ matrix.redis-version }} | |
| - run: npm ci | |
| - run: npm run test:dbschema | |
| env: | |
| CI: true | |
| TEST_DATABASE_URL: 'postgres://testuser:testpass@localhost/testdb' |