supabase / setup-cli

A GitHub action for interacting with your Supabase projects using the CLI.
MIT License
107 stars 15 forks source link

bind: address already in use #265

Open eliabieri opened 6 months ago

eliabieri commented 6 months ago

Bug report

Describe the bug

supabase start fails randomly due to a port already being in use. It seems to be a timing issue as it only happens every other time when running the Github Action below.

This is the error generated:

Digest: sha256:48d2fabef1b0b1e8f9b208518008686a1cd336503af4fd6f62e169268ed9066e
Status: Downloaded newer image for ghcr.io/supabase/postgres:15.1.0.137
failed to start docker container: Error response from daemon: driver failed programming external connectivity on endpoint supabase_db_jobmate (8a76852f7f3f62ebe3fbd7ebf9cff92182749ee130513dc2b2c51d2b672a422c): Error starting userland proxy: listen tcp4 0.0.0.0:54322: bind: address already in use
Try rerunning the command with --debug to troubleshoot the error.

To Reproduce

  1. Create a Github Action
    
    name: "Push migrations"
    on:
    push:
    branches:
      - main

jobs: test: runs-on: ubuntu-latest

permissions:
  # Required to checkout the code
  contents: read
env:
  SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_ACCESS_TOKEN }}
steps:
  - name: Checkout repo
    uses: actions/checkout@v4
  - uses: supabase/setup-cli@v1
  - name: Link Supabase project
    run: supabase link --project-ref ${{ vars.SUPABASE_PROJECT_ID }} --password ${{ secrets.SUPABASE_DB_PASSWORD }}
  - name: Start Supabase
    run: supabase start
  - name: Push migrations
    run: supabase db push --password ${{ secrets.SUPABASE_DB_PASSWORD }}

2. Run the action

## Expected behavior

I expect this action to run successfully every time.

## Full logs

[5_Start Supabase.txt](https://github.com/supabase/setup-cli/files/14347891/5_Start.Supabase.txt)