On the other hand: remove_user_pass_from_url("git@repo.com:2222/jks/experiment.git") works correctly as it results in git@repo.com:2222/jks/experiment.git
I need to use SSH-based authentication, so I guess that's not an option. Well the removal affects cloning URL, i.e. while ssh://git@repo.com:2222/jks/experiment.git works fine ssh://repo.com:2222/jks/experiment.git doesn't, because it assumes current user as SSH user.
What about if you specify the repo user/pass in clearml.conf?
I think it removes the user/pass so it wouldn't be shown in the logs
I think it should be something like this:f = furl(url) if f.scheme in ['http', 'https', 'ssh'] and f.password: url = f.remove(username=True, password=True).tostr()instead of:url = furl(url).remove(username=True, password=True).tostr()
Yes, it's the same, because the passed url is the same. I need to have git url in the mentioned format or the agent cannot clone the repo.
VexedElephant56 the line of code you pointed to only removes basic user auth (i.e. https://foo:bar@github.com/ ... is turned in https://github.com/ ... ) - it will not remove the git scheme from the URL
VexedElephant56 as far as I know the agent will only remove this if you provided user/pass for non-ssh authentication
I think it works now by accident, as mailto:git@repo.com is not a valid scheme URL, so it doesn't get parsed at all by furl library
Got you 🙂 , thanks, we'll take a look
Therefore it's a minor bug and not working as intended because that function converts:
ssh://git@repo.com:2222/jks/experiment.git into
ssh://repo.com:2222/jks/experiment.git
Hi VexedElephant56 , does it fail when it runs on the agent?