From cbbc75b485a6f2403844d67b0843eff46eafc6f9 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Sat, 15 Aug 2026 21:51:05 +0300 Subject: [PATCH] fix CI --- .github/workflows/ci.yml | 42 ++++++++++++++------------------ spec/system/signing_form_spec.rb | 7 +++--- 2 files changed, 22 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ae923e59..11987880 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -112,47 +112,38 @@ jobs: name: RSpec runs-on: ubuntu-latest timeout-minutes: 10 + container: + image: ruby:4.0.5-alpine services: postgres: - image: postgres:14 + image: postgres:18 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: docuseal_test - ports: ["5432:5432"] options: >- - --health-cmd pg_isready + --health-cmd "pg_isready -U postgres -d docuseal_test" --health-interval 10s --health-timeout 5s --health-retries 5 steps: + - name: Install packages + run: apk add --no-cache build-base git libpq-dev yaml-dev nodejs yarn tar zstd gzip wget unzip vips leptonica chromium - uses: actions/checkout@v4 - - name: Install Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: 4.0.5 - - name: Set up Node - uses: actions/setup-node@v1 - with: - node-version: 20.19.0 - - name: Install Chrome - uses: browser-actions/setup-chrome@latest - with: - chrome-version: 125 - name: Cache node_modules uses: actions/cache@v4 with: path: node_modules - key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} + key: ${{ runner.os }}-musl-node-${{ hashFiles('**/yarn.lock') }} - name: Cache gems uses: actions/cache@v4 with: path: vendor/bundle - key: ${{ runner.os }}-gem-${{ hashFiles('**/Gemfile.lock') }} + key: ${{ runner.os }}-musl-gem-${{ hashFiles('**/Gemfile.lock') }} restore-keys: | - ${{ runner.os }}-gem- + ${{ runner.os }}-musl-gem- - name: Install dependencies env: RAILS_ENV: test @@ -161,17 +152,20 @@ jobs: bundle config path vendor/bundle bundle install --jobs 4 --retry 4 yarn install - sudo apt-get update - sudo apt-get install -y libvips liblept5 - wget -O pdfium-linux.tgz "https://github.com/bblanchon/pdfium-binaries/releases/latest/download/pdfium-linux-$(uname -m | sed 's/x86_64/x64/;s/aarch64/arm64/').tgz" - sudo tar -xzf pdfium-linux.tgz --strip-components=1 -C /usr/lib lib/libpdfium.so - rm -f pdfium-linux.tgz + wget -O pdfium-linux.zip "https://github.com/docusealco/pdfium-binaries/releases/download/20260813/pdfium-musl-$(uname -m).zip" + case "$(uname -m)" in + x86_64) echo "c5c7dde243ecb66ab0819c8193515ef38ad53549fe260f3c2dfd93ea56eda2e7 pdfium-linux.zip" ;; + aarch64) echo "64c4483449b1b4dccc696ad0c5c96e0b7f74dcc57b4f23c676b7a70671b0bbb5 pdfium-linux.zip" ;; + esac | sha256sum -c - + unzip -q pdfium-linux.zip -d /tmp/pdfium-linux + cp /tmp/pdfium-linux/lib/libpdfium.so /usr/lib/libpdfium.so + rm -rf pdfium-linux.zip /tmp/pdfium-linux - name: Run env: RAILS_ENV: test NODE_ENV: test COVERAGE: true - DATABASE_URL: postgres://postgres:postgres@localhost:5432/docuseal_test + DATABASE_URL: postgres://postgres:postgres@postgres:5432/docuseal_test run: | bundle exec rake db:create bundle exec rake db:migrate diff --git a/spec/system/signing_form_spec.rb b/spec/system/signing_form_spec.rb index 0002dbc4..d4c2dc43 100644 --- a/spec/system/signing_form_spec.rb +++ b/spec/system/signing_form_spec.rb @@ -1153,9 +1153,10 @@ RSpec.describe 'Signing Form' do click_on 'next' draw_canvas - expect do - click_on 'Sign and Complete' - end.to change(ProcessSubmitterCompletionJob.jobs, :size).by(1) + click_on 'Sign and Complete' + + expect(page).to have_content('Document has been signed!') + expect(ProcessSubmitterCompletionJob.jobs.size).to eq(1) end end