1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- name: CI
- on:
- pull_request:
- schedule:
- # Run every on Friday to ensure everything works as expected.
- - cron: '0 6 * * 5'
- jobs:
- CI:
- runs-on: ubuntu-latest
- container:
- image: zammad/zammad-ci:latest
- services:
- postgresql:
- image: postgres:17
- env:
- POSTGRES_USER: zammad
- POSTGRES_PASSWORD: zammad
- redis:
- # Use Redis 5 which is shipped in Debian 10.
- image: redis:5
- env:
- RAILS_ENV: test
- Z_LOCALES: "en-us:de-de"
- TZ: 'Europe/London'
- REDIS_URL: redis://redis:6379
- # Compile assets only once.
- CI_SKIP_ASSETS_PRECOMPILE: 'true'
- # Avoid unnecessary DB resets.
- CI_SKIP_DB_RESET: 'true'
- steps:
- - name: Checkout
- uses: actions/checkout@v4
- - name: Install pnpm
- uses: pnpm/action-setup@v4
- - name: Use Node.js 20
- uses: actions/setup-node@v4
- with:
- node-version: 20
- cache: 'pnpm'
- - name: Cache Rubygems
- id: cache-bundler
- uses: actions/cache@v4
- with:
- path: vendor/bundle
- key: ${{ runner.os }}-cache-bundler-${{ hashFiles('Gemfile.lock') }}
- - name: Pre
- run: .github/workflows/ci/pre.sh
- - name: Lint
- run: .github/workflows/ci/lint.sh
- - name: Test
- run: .github/workflows/ci/test.sh
|