Closed michaelweiser closed 6 years ago
This is very similar to #8 I agree.
The installer contains a lot ot files that can be used without running the installer itself therefore I would prefer to use a submodule. It's even possible to specify the corresponding release branch to clone the matching version.
It's not good practice to change the submodule config before doing the release commit and changing it back to master afterwards I guess. Any ideas on that?
From what I know about submodules in git, a submodule is normally fixed at a specific commit and you have to update it manually. The information to what commit you've updated the submodule can then be commited to the superproject.
This should for the most part fit the normal installer/peekaboo-core development interaction: If you want to test the installer with a more current devel version of peekaboo you update the submodule, test and if it works, you commit that new upstream peekaboo repo reference.
Do you plan to switch to a git submodule for release deployments as well? In that case you could branch off an installer release branch matching and referencing the peekaboo release commit and just never update it after.
A simple apporach to test the installer with pre-releases would be the following:
master
keep an installer, that installs the current DEV version of PeekabooAV (master
branch).I would vote to keep using pip/pypi for released peekaboo versions and only install from the submodule when developing the installer. This could be a flag to the ansible script that is based on which branch of the installer repo it finds itself on: master -> git submodule, release branch -> pip.
@SebastianDeiss: Total agreement.
970661cf2d72d64eb9c1b73cc8aa8d9b2f20c032 installs what is inside PeekabooAV submodule directory
We should enhance the installer so it can install unreleased Peekaboo versions, e.g. directly from the git repo. The ansible playbook could have a flag for that. Maybe the PeekabooAV repo could be a submodule or the ansible playbook checks it out into a temporary directory itself.