Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for bitbucket repos cloned with ssh #174

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

prabhu43
Copy link

Signed-off-by: Prabhu Jayakumar j.prabhu91@gmail.com

Fixes #173

@prabhu43
Copy link
Author

@paulirish Can you please review this PR and merge it?

@@ -199,6 +199,15 @@ elif [[ "${#pathargs[@]}" -ge 3 && ${pathargs[${#pathargs[@]} - 3]} == 'scm' ]];
pathargs=(${pathPref[@]} 'projects' ${pathargs[${#pathargs[@]} - 2]} 'repos' "${pathargs[@]:${#pathargs[@]} - 1}")
IFS='/' urlpath="${pathargs[*]}"
providerBranchRef="/browse?at=$remote_ref"
elif [[ "$domain" == *"bitbucket"* ]] && [[ $gitprotocol == 'ssh' ]]; then
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this for bitbucket.org or Bitbucket Server (Self hosted). Can we get a test or at the very least an example URL -> what it should be converted to?

Copy link
Author

@prabhu43 prabhu43 Oct 11, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@derimagia In my case, it is for self-hosted bitbucket. I mentioned the example urls in the issue. Also added a test for the same. Please review it once again.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have the same use case using a self-hosted bitbucket server but bitbucket isn't in the domain name so this would still not work for me. I wonder if there's a way to add a flag or update to this PR that uses the same functionality but doesn't assume that bitbucket is in the domain.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was wondering if this was the case. Currently the way it looks like we determine if it's a bitbucket server is if it has scm in the URL (third to last segment). Is this still valid but only with non-ssh?

Either way the way we may already support this is with the existing open. config params.

It's not gitlab specific and people have used it for other providers, can it be used here?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@derimagia Yes, current way of determining bitbucket server does not work with ssh. It works with the code I pushed in this PR.

The documentation is not clear to use config param for bitbucket if it is already supported.

Remote url in git config: ssh://git@bitbucket.scm.xyz.com/aaa/bbb.git
URL to be opened: https://bitbucket.scm.xyz.com/projects/aaa/repos/bbb/browse

I tried these commands, still it did not work

git config "open.https://bitbucket.scm.xyz.com.domain" "bitbucket.scm.xyz.com/projects"
git config "open.https://bitbucket.scm.xyz.com.domain" "bitbucket.scm.xyz.com"
git config "open.https://bitbucket.scm.xyz.com.protocol" "https"

Signed-off-by: Prabhu Jayakumar <j.prabhu91@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support bitbucket repos cloned with ssh
3 participants