bunufi
bunufi

Reputation: 764

How to setup rabbitmq service with Github Actions?

I am trying to set up Github Actions CI for an app that is using RabbitMQ.

RabbitMQ container is started using:

services:
  rabbitmq:
    image: rabbitmq:3-management
    ports:
      - 5672:5672

But now I need to configure it with smth like rabbitmqctl add_user user password.

How can it be done? Should I be using rabbitmq container here at all?

Upvotes: 6

Views: 2930

Answers (2)

Stan
Stan

Reputation: 8976

If you have trouble connecting to RabbitMQ, try with a dynamic port.

Use this:

jobs:
  test:
    runs-on: ubuntu-latest

    services:
      rabbitmq:
        image: rabbitmq:3.8
        env:
          RABBITMQ_DEFAULT_USER: guest
          RABBITMQ_DEFAULT_PASS: guest
        ports:
          - 5672

    steps:
    - name: Run Tests
      run: |
        python manage.py test
      env:
        RABBITMQ_HOST: 127.0.0.1
        RABBITMQ_PORT: ${{ job.services.rabbitmq.ports['5672'] }}

Upvotes: 4

Craig Anderson
Craig Anderson

Reputation: 804

As this is using the rabbitmq Docker image, you can configure user credentials by passing in the RABBITMQ_DEFAULT_USER and RABBITMQ_DEFAULT_PASS environment variables.

rabbitmq:
  image: rabbitmq
  env:
    RABBITMQ_DEFAULT_USER: craiga
    RABBITMQ_DEFAULT_PASS: security_is_important
  ports:
    - 5672:5672

Upvotes: 4

Related Questions