Wenn ich ein Checkout von discourse_docker in Revision A habe und zum Zeitpunkt T1 launcher bootstrap web_only gefolgt von launcher run web_only ausführe und dann zum Zeitpunkt T2 exakt dieselben Befehle ausführe, erhalte ich dann exakt dieselbe Software, die zum Zeitpunkt T1 läuft, auch zum Zeitpunkt T2?
Das heißt: Bilden die Commit-ID von discourse_docker plus der jeweilige Zustand in den YAML-Dateien den vollständigen Zustand, der das laufende Artefakt erstellt?
Ich vermute, dass dies nicht der Fall ist, da ich während des Builds und beim Start von Discourse Zugriffe auf Git-Remotes sehe, aber ich möchte dies gerne bei der Community überprüfen.
It depends on what branch you are pulling. If it’s tests-passed, then you are likely to get a different version at every rebuild /bootstrap. You could or either a beta version or a commit id there to see that things stay the same.
If you want paid support to get your larger problem solved and have a budget, my contact info is in my profile.
thanks @pfaffman . Quick clarification. By branch do you mean the branch of discourse_docker or is there another setting that can lock the main discourse to a certain branch? Just to be clear, in my example, I am not deliberately pulling new code for either discourse_docker or discourse . I’m getting the feeling that discourse_docker does either one, or both behind the scenes. Ideally I would want to disable this behaviour so I can get a repeatable build. Is this possible?
Launcher will pull the version of Discourse specified by the params: version: key in web_only.yml. As described in that file, the default is tests-passed.
In addition, plugins will normally update unless you pin a version in their git clone.