Skip to content

Simulated IOCs fail on macOS (outside Docker) #128

Description

@hyperrealist

After following the installation instructions on macOS, running supervisor/start_supervisor.sh status shows the following output:

decay                            BACKOFF   Exited too quickly (process log may have details)
mini_beamline                    BACKOFF   Exited too quickly (process log may have details)
random_walk                      BACKOFF   Exited too quickly (process log may have details)
random_walk_horiz                BACKOFF   Exited too quickly (process log may have details)
random_walk_vert                 BACKOFF   Exited too quickly (process log may have details)
simple                           BACKOFF   Exited too quickly (process log may have details)
thermo_sim                       BACKOFF   Exited too quickly (process log may have details)
trigger_with_pc                  BACKOFF   Exited too quickly (process log may have details)

Attempting to restart IOCs using supervisor/start_supervisor.sh restart all generate the following error message.

decay: ERROR (spawn error)
random_walk: ERROR (spawn error)
random_walk_vert: ERROR (spawn error)
mini_beamline: ERROR (spawn error)
random_walk_horiz: ERROR (spawn error)
simple: ERROR (spawn error)
thermo_sim: ERROR (spawn error)
trigger_with_pc: ERROR (spawn error)

Apparent Cause
macOS loopback interface only configures address 127.0.0.1 by default. But the supervisor script attempts to bind to udp ports on other local addresses, e.g: in decay.conf,

command = /usr/bin/env python3 -m caproto.ioc_examples.decay -v --interfaces=127.0.0.5

Possible Solution
Add temporary aliases to macOS loopback interface, e.g:

sudo ifconfig lo0 alias 127.0.0.5

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions