mirror of https://github.com/zulip/zulip.git
fb338f22d7
The production CI image starts `rabbitmq-server` but does not stop it, which leaves a stale `/var/run/rabbitmq/pid` file in the image. `rabbitmqctl wait --timeout 600 /var/run/rabbitmq/pid`, which is run after starting the rabbitmq node, reads the PID file and waits for the PID to be running, and for rabbitmq's port to be responding to pings. If it reads an old PID file before the new PID is written, it aborts (all but the first and last lines are output from `rabbitmqctl wait` that is hidden by `/etc/init.d/rabbitmq-server`): ``` * Starting RabbitMQ Messaging Server rabbitmq-server Waiting for pid file '/var/run/rabbitmq/pid' to appear pid is 341 Waiting for erlang distribution on node 'rabbit@fc8f64d6acdb' while OS process '341' is running Error: process_not_running * FAILED - check /var/log/rabbitmq/startup_\{log, _err\} ``` If it failed, the `production-upgrade` script tried to start `rabbitmq` again -- despite it already still starting in the background. These two attempts conflicted, and often one or both failed. Stop `rabbitmq-server` when building the image, which removes the stale PID file. |
||
---|---|---|
.. | ||
.gitattributes | ||
Dockerfile | ||
Dockerfile.prod | ||
activate-venv | ||
build-docker-images | ||
production-build | ||
production-install | ||
production-pgroonga | ||
production-upgrade | ||
production-upgrade-pg | ||
production-verify | ||
send-failure-message | ||
setup-backend | ||
setup-frontend | ||
success-http-headers.template.txt |