Skip to content

setup-cli fails in Alpine based container jobs #427

@jjao-sc

Description

@jjao-sc

Bug report

  • I confirm this is a bug with Supabase, not with my own application.
  • I confirm I have searched the Docs, GitHub Discussions, and Discord.

Describe the bug

As far as I can tell, the setup-cli doesn't seem to work in GitHub Actions container jobs using Alpine-based images (musl libc) after the latest update. Tried it on both v1 and v2 with differing results.

v1: Seems like it downloads and extracts the CLI binary successfully, but fails the supabase --version check. The binary isn't found on PATH. I think this started happening with the recent CLI v2.100.1, which changed the archive to include both supabase and supabase-go.

  /bin/tar xz -v -C /__w/_temp/2bdaa264-a942-428c-bb7e-9d85361cb64b -f /__w/_temp/cc6714c9-a32e-45cd-b629-ed541aee3319
  supabase
  supabase-go
  Error: Command failed: supabase --version
  /bin/sh: supabase: not found

Trying to set version: 2.100.0 seems to not work, the action still downloads v2.100.1.

On v2: It fails earlier because it tries to run a glibc Bun binary on musl Alpine:

Run supabase/setup-cli@v2
Run oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6
  
/usr/bin/docker exec  887f9f32e0060f390e67c2f100f0f887cccf50ef75e8e39cbaa8a78924ebffaf sh -c "cat /etc/*release | grep ^ID"
Obtained version 1.3.10 from /__w/_actions/supabase/setup-cli/v2/.bun-version
Downloading a new version of Bun: https://github.com/oven-sh/bun/releases/download/bun-v1.3.10/bun-linux-x64.zip
/usr/bin/unzip -o -q /__w/_temp/f056c2ef-b908-4825-9cc1-8670bd414107.zip
/github/home/.bun/bin/bun --revision
Error: Error: There was an error when attempting to execute the process '/github/home/.bun/bin/bun'. This may indicate the process failed to start. Error: spawn /github/home/.bun/bin/bun ENOENT

To Reproduce

Need a Github Action workflow that utilizes the setup-cli on the specific runners, e.g.

  jobs:
    example:
      runs-on: ubuntu-latest
      container:
        image: node:20-alpine
      steps:
        - name: Install Supabase CLI
          uses: supabase/setup-cli@v1  # or @v2, both fail
          with:
            version: latest
        - run: supabase --version

This seems to work fine without the container: directive on a bare ubuntu-latest runner, on my other action workflows.

Expected behavior

The supabase CLI downloads and installs correctly without failing the workflow.

System information

Environment:

  • Action: supabase/setup-cli@v1 and @v2
  • CLI version resolved: v2.100.1
  • Container: Alpine-based (ghcr.io/railwayapp/cli:latest, ID=alpine)
  • Runner: ubuntu-latest

Additional context

This just started happening today, and my runners were fine last week, so I imagine it was the most recent update.

This is my understanding of the issue so far. Any clarifications would be greatly appreciated, thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions