Page MenuHomeDevCentral

Solve chicken egg problem for zr container deployment
Open, LowPublic

Description

Some containers require Zemke-Rhyne to provision credentials.

In the current state of the unit, the first pass applying the roles/paas-docker will have some failures for Etherpad and Cachet containers, as all isn't ready to query zr.

To zr work we need:

  • a zr command
  • a Phabricator container (and so a MySQL container)
  • a front-end nginx to pass the request to the container

Plan is to ensure a sane order for Docker role:

  1. We need nginx to be first, so HTTP access to containers work
  2. Wrappers must be there before containers too, so we can use the zr command
  3. Now it's time for containers in the following orders:
  4. MySQL (required by Phabricator)
  5. Phabricator (required by zr containers)
  6. Other ones

Event Timeline

dereckson created this task.Sep 19 2018, 10:22
dereckson triaged this task as Low priority.
dereckson added a project: Salt.
dereckson moved this task from Backlog to Servers config on the Salt board.
dereckson added a comment.EditedSep 19 2018, 10:32

That's not enough: Salt will first execute zr to compile yaml and jinja into an ordered Python dictionary, BEFORE zr is ready.

So a two-passes approach is needed, with something (a grain? something like a grain at infra level?) to indicate if zr can be used.

In such a solution, we'd bypass at first pass the states requiring zr, and at second pass we could execute them.