Hello Chad, Thank you for all you help so far so i used another project in my azure repo to connect and i still have the unable to clone error i test connection with username:ABC and PAT: ...., url :https://dev.azure.com/test/ test connection is okay only 1 pipeline is using the Migrate test and now i use even a different repo in the azure devops repo and still get the error
On Tuesday 28 May 2024 at 23:20:32 UTC-4 Chad Wilson wrote: > From that error message it looks like it's using an empty username for > some reason, rather than the dummy username you entered/expect. > > Check if you have multiple pipelines with the same exact full > "Migrate-Project-Test" URL in the Git Material (from Materials view). If > you do, go through each one of the pipelines and update the username and > password to the same "correct" ones. If you only have a single pipeline > using that material, I don't know what could cause it. > > Basically, this is a workaround for the issue I mentioned at > https://github.com/gocd/gocd/issues/9153 and > https://github.com/gocd/gocd/issues/8986 (fixed in GoCD 22.2.0 but > definitely an issue in your old version). When doing actual work on agents, > GoCD can get confused about which username/pass combination to use to > authenticate to the repository. When you do "test connection" it uses the > details directly in the web form, which is slightly different to how it > works when distributing work to agents to do. > > -Chad > > On Wed, May 29, 2024 at 2:55 AM Obiageli Adegbite <oec...@gmail.com> > wrote: > >> i did put in user name in the username field and still got the same >> error. but the test connection shows as okay, can't even just upgrade >> seeing as i have over 100 pipelines running, but plan to. just >> hopingthere's a workaround. >> look at that : before the ****** what is that about >> >> >> STDERR: fatal: Authentication failed for 'https://:******@ >> dev.azure.com/Taqauto/Migrate-Project-Test/_git/Migrate-Project-Test/' >> >> On Tuesday 28 May 2024 at 13:43:06 UTC-4 Chad Wilson wrote: >> >>> Try setting a dummy value for the username rather than leaving it blank. >>> >>> On Wed, 29 May 2024, 01:07 Obiageli Adegbite, <oec...@gmail.com> wrote: >>> >>>> still having the git clone failure >>>> >>>> On Tuesday 28 May 2024 at 12:13:59 UTC-4 Obiageli Adegbite wrote: >>>> >>>>> so true, simplest explanations. >>>>> The next issue i'm getting is error message: Failed to run git clone >>>>> command, the test connection is okay so this is strange. >>>>> >>>>> On Tuesday 28 May 2024 at 11:40:55 UTC-4 Chad Wilson wrote: >>>>> >>>>>> OK, that's good to hear. And yes, Azure DevOps seems to include >>>>>> username in the clone URL by default, so has to be edited/removed. >>>>>> >>>>>> I should have applied Occam's razor here....sometimes the simplest >>>>>> explanation is the best one! >>>>>> >>>>>> -Chad >>>>>> >>>>>> On Tue, May 28, 2024 at 11:22 PM Obiageli Adegbite <oec...@gmail.com> >>>>>> wrote: >>>>>> >>>>>>> Hey Chad, >>>>>>> it works >>>>>>> well apparently when i was imputing the url, I was using the part >>>>>>> https://a...@dev.azure.com/******/blah/bla (clone part from azure). >>>>>>> Then in advanced settings i left username blank and password i added my >>>>>>> PAT. It appears GoCD simple read abc@ as username:password thereby the >>>>>>> error message ambiguous credentials. When i used it like you did it >>>>>>> works. >>>>>>> Thank you for all your help. >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tuesday 28 May 2024 at 10:40:39 UTC-4 Chad Wilson wrote: >>>>>>> >>>>>>>> > I tried without the username and password in the url and got pic3 >>>>>>>> which shows the error. Then i remove both username and path from the >>>>>>>> url, >>>>>>>> put a dummy string in username, and the PAT in password the errors are >>>>>>>> in >>>>>>>> pic 4 and pic5. >>>>>>>> >>>>>>>> The error message "ambiguous credentials" implies GoCD thinks there >>>>>>>> is still a username or password in the URL *as well as* set >>>>>>>> separately - this is a GoCD validation failing. I can't see your >>>>>>>> actual >>>>>>>> input since you have redacted the input, but please double/triple >>>>>>>> check >>>>>>>> there is no username left in the URL? If you have definitely removed >>>>>>>> it, >>>>>>>> this is very confusing - possibly an old UI bug, but I'd be surprised. >>>>>>>> >>>>>>>> > shows GoCD is trying to use https://******@ >>>>>>>> dev.azure.com/******/blah/bla >>>>>>>> >>>>>>>> This is possibly expected IF the username is set in the username >>>>>>>> field since the error message comes from the actual git command line >>>>>>>> invocation. GoCD builds the URL dynamically and inserts the >>>>>>>> "username:password@" before invoking the git command line. If the >>>>>>>> username >>>>>>>> was empty in GoCD, that is unusual and points to a bug where GoCD is >>>>>>>> confused about which URL and credentials to use. >>>>>>>> >>>>>>>> - The ability to use separate username/password for Git >>>>>>>> materials (outside the URL) was relatively new in your version >>>>>>>> 19.8.0. That >>>>>>>> version is 5 years old, and there are many things likely to have >>>>>>>> been fixed >>>>>>>> since then, including on the UI. You should upgrade - it's not >>>>>>>> really >>>>>>>> possible to effectively support 5 year old versions. >>>>>>>> - If you have multiple pipelines that have the *same Git URL* >>>>>>>> pointing at them which you are using to test, there could be >>>>>>>> situations >>>>>>>> where GoCD is confused as to which credentials to use and could >>>>>>>> keep using >>>>>>>> "old" credentials. If you *only have one pipeline* using the >>>>>>>> URL you are testing with this will not be the issue. Such bugs have >>>>>>>> been >>>>>>>> fixed since then, but will definitely be broken in your version. >>>>>>>> e.g >>>>>>>> https://github.com/gocd/gocd/issues/9153 >>>>>>>> >>>>>>>> >>>>>>>> After testing this empirically myself on latest GoCD 24.1.0, it >>>>>>>> worked fine for me to connect with a PAT to an Azure DevOps repository >>>>>>>> using a personal access token with a random username. >>>>>>>> >>>>>>>> [image: image.png] >>>>>>>> >>>>>>>> I'd suggest using https://www.gocd.org/test-drive-gocd.html to run >>>>>>>> a quick temporary test GoCD locally and try on a current version with >>>>>>>> the >>>>>>>> same repo/PAT etc. If you can't replicate a problem on the most recent >>>>>>>> version it's likely it's a bug long since fixed. >>>>>>>> >>>>>>>> -Chad >>>>>>>> >>>>>>>> On Tue, May 28, 2024 at 9:54 PM Obiageli Adegbite <oec...@gmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Thank you Chad and Sriram for your response, >>>>>>>>> >>>>>>>>> I tried wihout the username and password in the url and got pic3 >>>>>>>>> which shows the error. Then i remove both username and path from the >>>>>>>>> url, >>>>>>>>> put a dummy string in username, and the PAT in password the errors >>>>>>>>> are in >>>>>>>>> pic 4 and . >>>>>>>>> Something i noticed on commandline is both git clone >>>>>>>>> https://dummyusername:p...@dev.azure.com/blah >>>>>>>>> <https://dummyusername:p...@dev.azure.com/blah> and git clone >>>>>>>>> https://p...@dev.azure.com/blah >>>>>>>>> <https://dummyusername:p...@dev.azure.com/blah> clone just fine. >>>>>>>>> So puting my username in the username slot an PAT in my password >>>>>>>>> should >>>>>>>>> work but it seems GoCD is the error i got in pic3 when i did not use >>>>>>>>> a >>>>>>>>> username an password shows GoCD is trying to use https://******@ >>>>>>>>> dev.azure.com/******/blah/bla >>>>>>>>> >>>>>>>>> >>>>>>>>> On Monday 27 May 2024 at 13:12:56 UTC-4 Chad Wilson wrote: >>>>>>>>> >>>>>>>>>> The way GoCD constructs the URLs for Git materials requires both >>>>>>>>>> username and password to have non-empty values since all it does is >>>>>>>>>> just construct >>>>>>>>>> a URL using these values >>>>>>>>>> <https://github.com/gocd/gocd/blob/67fbd63486f5ac819c74e63996ee8ef7ba3763dd/domain/src/main/java/com/thoughtworks/go/config/materials/git/GitMaterial.java#L193-L206> >>>>>>>>>> >>>>>>>>>> and invokes the command line git with this URL. >>>>>>>>>> >>>>>>>>>> What's the error you get if you remove both username and path >>>>>>>>>> from URL (e.g https://dev.azure.com/blah), put a dummy string in >>>>>>>>>> username, and the PAT in password? >>>>>>>>>> >>>>>>>>>> The docs at >>>>>>>>>> https://learn.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=Windows#use-a-pat >>>>>>>>>> >>>>>>>>>> are a bit confusing to me. It's possible to interpret that as saying >>>>>>>>>> it's >>>>>>>>>> not possible to use PATs on Azure DevOps with default Git URLs if >>>>>>>>>> Azure >>>>>>>>>> requires the username to be empty/blank; since it talks about using >>>>>>>>>> a >>>>>>>>>> custom constructed header with a blank username as a workaround (one >>>>>>>>>> that >>>>>>>>>> wouldn't be possible via GoCD). >>>>>>>>>> >>>>>>>>>> GoCD would be effectively doing the same as "git clone >>>>>>>>>> https://dummyusername:p...@dev.azure.com/blah >>>>>>>>>> <https://dummyusername:p...@dev.azure.com/blah>" so if this >>>>>>>>>> doesn't work from the command line, it might not be possible to make >>>>>>>>>> this >>>>>>>>>> work right now, and unfortunately for some historic reasons GoCD >>>>>>>>>> doesn't >>>>>>>>>> classify the username as "secret/secure" and so you can't put the >>>>>>>>>> PAT there >>>>>>>>>> either (in case that works). >>>>>>>>>> >>>>>>>>>> -Chad >>>>>>>>>> >>>>>>>>>> On Mon, May 27, 2024 at 11:15 PM Obiageli Adegbite < >>>>>>>>>> oec...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hello, >>>>>>>>>>> >>>>>>>>>>> i am currently using gocd v19.8.0 and i want to connect to my >>>>>>>>>>> Azure repo. When i put in my credentials in the advanced settings >>>>>>>>>>> the >>>>>>>>>>> username and password(Personal Access Token(PAT)) and click >>>>>>>>>>> connection it >>>>>>>>>>> fails (pic1). However if i put it same PAT in the repo url it >>>>>>>>>>> works >>>>>>>>>>> (pic2). The issue is the PAT is exposed. I also cannot use aws >>>>>>>>>>> secret >>>>>>>>>>> manager to hide the PAT in the repo url. If i don't want to use ssh >>>>>>>>>>> is >>>>>>>>>>> there something i am doing wrong >>>>>>>>>>> [image: pic1.png] >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> >>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>>> Google Groups "go-cd" group. >>>>>>>>>>> To unsubscribe from this group and stop receiving emails from >>>>>>>>>>> it, send an email to go-cd+un...@googlegroups.com. >>>>>>>>>>> To view this discussion on the web visit >>>>>>>>>>> https://groups.google.com/d/msgid/go-cd/14651c28-7e39-45b3-946f-f4705830e134n%40googlegroups.com >>>>>>>>>>> >>>>>>>>>>> <https://groups.google.com/d/msgid/go-cd/14651c28-7e39-45b3-946f-f4705830e134n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>>>> . >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "go-cd" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to go-cd+un...@googlegroups.com. >>>>>>>>> >>>>>>>> To view this discussion on the web visit >>>>>>>>> https://groups.google.com/d/msgid/go-cd/b272b4ab-cb19-4350-8301-d73d29f8291dn%40googlegroups.com >>>>>>>>> >>>>>>>>> <https://groups.google.com/d/msgid/go-cd/b272b4ab-cb19-4350-8301-d73d29f8291dn%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> >>>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "go-cd" group. >>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>> send an email to go-cd+un...@googlegroups.com. >>>>>>> >>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/msgid/go-cd/5656e4a7-150c-4f75-a594-ede69a2a5c7fn%40googlegroups.com >>>>>>> >>>>>>> <https://groups.google.com/d/msgid/go-cd/5656e4a7-150c-4f75-a594-ede69a2a5c7fn%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>> . >>>>>>> >>>>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "go-cd" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to go-cd+un...@googlegroups.com. >>>> >>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/go-cd/c994a2c9-2951-48ed-8b4c-ff337461584en%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/go-cd/c994a2c9-2951-48ed-8b4c-ff337461584en%40googlegroups.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> -- >> You received this message because you are subscribed to the Google Groups >> "go-cd" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to go-cd+un...@googlegroups.com. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/go-cd/e167b3c9-d40d-4113-8e05-20b25a2f7fe9n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/go-cd/e167b3c9-d40d-4113-8e05-20b25a2f7fe9n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "go-cd" group. To unsubscribe from this group and stop receiving emails from it, send an email to go-cd+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/go-cd/e9ef2f31-b0fc-4438-98d7-4b5f017ef8b0n%40googlegroups.com.