Si j’ai une copie de discourse_docker à la révision A, et que j’exécute launcher bootstrap web_only suivi de launcher run web_only à l’instant T1, puis, à l’instant T2, j’exécute exactement les mêmes commandes, obtiendrai-je exactement le même logiciel en cours d’exécution à T1 qu’à T2 ?
Autrement dit, l’identifiant de commit de discourse_docker + l’état quelconque contenu dans les fichiers YAML constituent-ils l’état complet qui construit l’artefact en cours d’exécution ?
Je soupçonne que non, car il semble que Discourse récupère des données depuis des dépôts git distants lors de la construction et du démarrage, mais je souhaite simplement vérifier cela auprès de la communauté.
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.