AstonishingSeaturtle47 that's awesome! Could you explain the hack, it might be helpful for others (I assume :))
As for credentials issue it is a github issue where you can not add same deploy-key to two different repositories (If I am wrong here please let me know) .
As for a solution you are right, I would add flag that to the agent for example --submodules-pull <true|false>.
Well it is a bit ugly. I changed the hostname of my submodule then I added another key in the .ssh/config file. The problem is that now, who ever uses this repo needs to do something about that, so in order to avoid issues with the developers I added an alias in AWS (route 53 CNAME) from my-new-hostname to http://github.com . AgitatedDove14 Does that make sense to you?
AstonishingSeaturtle47 yes it does. But I have to ask how come you have sub modules that one will have credentials for the master repo and not the sub ones? Also it sounds like a good solution would be for the trains-agent to try and pull the sub-modules and if it cannot, it should just print a warning and continue. What do you think?
FYI all the git pulls are cached even in docker mode so there is no "tax" to pay for pulling the sub-modules (only the first time of course)
Wow very Nice thanks AgitatedDove14
AstonishingSeaturtle47 I think there's a workaround for the GitHub multiple repo issue. See https://gist.github.com/gubatron/d96594d982c5043be6d4
I had a problem that related to deploy keys since each git repository needs a different deploy key. And both uses the same hostname, it failed, I hacked it using an alias of the submodule git host name
AstonishingSeaturtle47 How would the code run without the sub-modules? And what is the problem we are trying to solve? (Because unfortunately there is no switch to disable it)