Not really. I have three run stages that have been working fine. It
was when I tried to add
Apt::Source <| |> -> Exec["apt-update"]
Exec['apt-update'] -> Package <| |>
to site.pp to globally enforce apt source installs, an apt-get update
and then installation of packages, in that order, that the dependency
cycles started. I thought maybe mixing the two was bad, which was when
I tried replacing the run stages with Class->, which doesn't seem to
be allowed syntactically btw. Looks like a bug?
I could put the installation of apt sources in their own run stage
that runs first. However, different classes of servers need different
apt sources, and therefore I need the ability to be able to add apt
sources at arbitrary points after the initial run stage, yet still
ensuring that an apt-get update happens only once after all the apt
sources have been installed, but before any packages are installed.
This must be a general problem. Wonder how people have solved it...?
Doug.