Skip to content

Replace firebirdsql-github-action with direct Docker commands#364

Merged
mariuz merged 3 commits intomasterfrom
copilot/fix-docker-api-version-issue
Feb 13, 2026
Merged

Replace firebirdsql-github-action with direct Docker commands#364
mariuz merged 3 commits intomasterfrom
copilot/fix-docker-api-version-issue

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Feb 13, 2026

The juarezr/firebirdsql-github-action@v2.0.1 fails with Docker API version 1.44 requirement (client version 1.40 is too old).

Changes

  • Replaced action with direct docker run using firebirdsql/firebird:3 image
  • Health check with retry logic: Polls isql until ready (30 retries × 2s intervals)
  • Explicit failure handling: Exits with error code if Firebird doesn't start within timeout
  • Volume mount: /firebird/data/firebird/data preserves existing test path expectations

Implementation

- name: Setup FirebirdSQL container
  run: |
    sudo mkdir -p /firebird/data && sudo chmod 755 /firebird/data
    
    docker run -d \
      --name firebird \
      -e FIREBIRD_ROOT_PASSWORD="masterkey" \
      -e FIREBIRD_CONF_WireCrypt="Enabled" \
      -e FIREBIRD_CONF_AuthServer="Legacy_Auth, Srp, Win_Sspi" \
      -p 3050:3050 \
      -v /firebird/data:/firebird/data \
      firebirdsql/firebird:3
    
    # Health check with timeout
    for i in $(seq 1 30); do
      docker exec firebird /opt/firebird/bin/isql -user SYSDBA -password masterkey -z 2>&1 | grep -q "ISQL Version" && break
      sleep 2
    done

Environment variables and port mappings match the previous action configuration. Test step unchanged.

Original prompt

Problem

The CI workflow is currently failing due to Docker API version incompatibility when using the juarezr/firebirdsql-github-action@v2.0.1 action:

docker: Error response from daemon: client version 1.40 is too old. 
Minimum supported API version is 1.44, please upgrade your client to a newer version.
## Failed to create the FirebirdSQL container! ##

Failing workflow run: https://github.com/hgourvest/node-firebird/actions/runs/21980193602

Error location: The "Setup FirebirdSQL container" step (lines 19-26 in .github/workflows/node.js.yml)

Solution

Replace the juarezr/firebirdsql-github-action@v2.0.1 action with direct Docker commands that are compatible with the current GitHub Actions runner environment.

Current Workflow Configuration

- name: Setup FirebirdSQL container
  uses: juarezr/firebirdsql-github-action@v2.0.1
  with:
    version: ${{ matrix.firebird-version }}
    firebird_root_password: "masterkey"
  env:
    FIREBIRD_CONF_WireCrypt: "Enabled"
    FIREBIRD_CONF_AuthServer: "Legacy_Auth, Srp, Win_Sspi"

Required Changes

Replace the above step with direct Docker commands that:

  1. Start a FirebirdSQL v3 container using the official firebirdsql/firebird:v3 image
  2. Set the root password to "masterkey"
  3. Expose port 3050
  4. Configure the Firebird settings for WireCrypt and AuthServer
  5. Wait for the container to be healthy/ready before proceeding
  6. Ensure proper cleanup with a container stop/remove in a post-run step if needed

Implementation approach:

  • Use docker run with appropriate flags
  • Set environment variables for Firebird configuration
  • Add health check/wait logic to ensure the database is ready before tests run
  • Use --detach mode to run in background
  • Publish port 3050 to host

Matrix variable to use: ${{ matrix.firebird-version }} is currently set to 'v3'

File to modify: .github/workflows/node.js.yml

Acceptance Criteria

  • Docker container starts successfully without API version errors
  • Firebird configuration (WireCrypt, AuthServer) is properly applied
  • The workflow waits for Firebird to be ready before running tests
  • All existing test steps continue to work
  • CI build passes successfully

This pull request was created from Copilot chat.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits February 13, 2026 09:05
Co-authored-by: mariuz <18359+mariuz@users.noreply.github.com>
Co-authored-by: mariuz <18359+mariuz@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix CI workflow failing due to Docker API version incompatibility Replace firebirdsql-github-action with direct Docker commands Feb 13, 2026
Copilot AI requested a review from mariuz February 13, 2026 09:11
@mariuz mariuz marked this pull request as ready for review February 13, 2026 09:54
@mariuz mariuz merged commit 142ef9b into master Feb 13, 2026
0 of 4 checks passed
@mariuz
Copy link
Copy Markdown
Collaborator

mariuz commented Feb 17, 2026

@copilot revert previous pull request and use new juarezr/firebirdsql-github-action@v2.0.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants