Archy authentication failing since this morning

Hi,

Last week we were able to use Archy to publish flows etc. We created the OAuth client, went through setup and all was fine. I was able to publish flows and encountered no issues.

However, this morning we (multiple users) are experiencing issues - authentication is failing. I've tried generating a new secret, and even creating a new OAuth client but still get the same result. The OAuth client is definitely set to use Client Credentials and has the appropriate permissions.

I've updated to the latest version of Archy (2.4.0) but still the same. I've re-run setup to validate that we're using the correct region etc.

Is anyone else getting this - or have any suggestion on what to do?

2022-03-14T10:09:35.940Z: - resolving session start promise.e[36m -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'r1DPEchZ9']e[39m
2022-03-14T10:09:35.941Z: setting the Archy exit code to 116
2022-03-14T10:09:35.941Z: An error occurred.
2022-03-14T10:09:35.941Z: 
2022-03-14T10:09:35.942Z: 
2022-03-14T10:09:35.943Z: *****************************************************************************************
2022-03-14T10:09:35.943Z:      Archy - Architect Yaml Flow Processor ver. 2.4.0 - Failure                          
2022-03-14T10:09:35.943Z: *****************************************************************************************
2022-03-14T10:09:35.944Z: DateTime: Mon Mar 14 2022 10:09:35 GMT+0000 (Greenwich Mean Time)
2022-03-14T10:09:35.944Z: 
2022-03-14T10:09:35.944Z: Summary
2022-03-14T10:09:35.944Z: 
2022-03-14T10:09:35.944Z: Command: 'publish'
2022-03-14T10:09:35.944Z: unable to authenticate with the supplied client ID and secret. Are they valid and is the OAuth client set up with a client credentials grant?

Hi JDunn,

Thanks for reaching out. Is this issue still happening for you? I just attempted this in my own org in this region and wasnt able to reproduce this.

If it is still happening, could you try running with the --debug flag enabled and seeing if there is a line in the response such as: - response received - statusCode:400, statusMessage:Bad Request, correlationId:a8c0a351-2649-40e3-590e-d807d55c56e0 -- [POST::https://login.cac1.pure.cloud/token]

It may have a different status code or message, but I'm just looking for the correlationId associated with the POST for the token.

Thanks,
Jon

Hi Jon,

Maybe I'm being blind but I don't see anything like that at all.

I ran:

archy publish --file "<path to my YAML flow>" --debug

The response in the Terminal is the same. Not sure if the error loading Discovery properties is the real issue here but I can load that page in my browser and retrieve the file manually.

startup Mode:  Using client ID and secret.  Treating as client credentials grant.

- setting session status to 'running'. -- [ArchSession, ArchSessionId:'SkWKq32-9']
navigator unavailable - setting operating system to unknown
- architect scripting version: 0.24.0 -- [ArchSession, ArchSessionId:'SkWKq32-9']
- core environment configuration.  env: 'prod', host: 'apps.cac1.pure.cloud', region: 'ca-central-1', clientId: '*************', clientSecret: '**************', isClientCredentialsOAuthClient: 'true' -- [ArchSession, ArchSessionId:'SkWKq32-9']
- getting discovery properties... -- [ArchSession, ArchSessionId:'SkWKq32-9']
- calling url -- [GET::https://apps.cac1.pure.cloud/services/discovery.properties]
- ERROR! Unable to read discovery properties.  ending the Session.  Setting the exit code to 99. -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- waiting for any pending work to complete before ending the session -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- setting session status to 'ended'. -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- waiting for any pending work to complete before ending the session -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- ending with exit code: 99 -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- the session is ending but is not configured to terminate the process in which it is running. -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
- resolving session start promise. -- [ArchSession, Environment:'prod', Host:'apps.cac1.pure.cloud', Region:'ca-central-1', ArchSessionId:'SkWKq32-9']
setting the Archy exit code to 116
An error occurred.


*****************************************************************************************
     Archy - Architect Yaml Flow Processor ver. 2.4.0 - Failure
*****************************************************************************************
DateTime: Mon Mar 14 2022 12:52:09 GMT+0000 (Greenwich Mean Time)

Summary

Command: 'publish'
unable to authenticate with the supplied client ID and secret. Are they valid and is the OAuth client set up with a client credentials grant?

Hi JDunn,

It does look like the Unable to read discovery properties is what is causing the issues with running Archy. This is the first network request that is made when starting up so it needs to be able to access that URL.

Could you try running curl https://apps.cac1.pure.cloud/services/discovery.properties in the same command prompt/terminal window that you are running Archy in? This command should be available on Linux/macOS and Windows systems (I did test this via my Windows 10 VM at least). Im curious if you are able to get a response via that command.

Thanks,
Jon

Sure thing.
If I run that command from Windows 10 Command Line it returns a list of URLs (same as if I visit the page in browser and open the file).

If I then try to run the Archy publish command I get the same error.

--

Normally I'm using Archy inside the terminal in VS Code. I can run the curl command inside this terminal and get a successful result (although it is like a HTTP response rather than the list of URLs):

PS C:\> curl https://apps.cac1.pure.cloud/services/discovery.properties

StatusCode        : 200
StatusDescription : OK
Content           : {97, 112, 105, 46...}
RawContent        : HTTP/1.1 200 OK
                    Connection: keep-alive
                    x-amz-id-2: Rn9c3S3u/tTLOmk9tw8C2/hdACtoz3vtX5na1uep2+BTdt1JAYtfPBPDHTzCjZbuJgt5tHPPxs8=
                    x-amz-request-id: MSWRNVG3BJC5SAJA
                    Accept-Ranges: bytes
                    Content-Len...
Headers           : {[Connection, keep-alive], [x-amz-id-2, Rn9c3S3u/tTLOmk9tw8C2/hdACtoz3vtX5na1uep2+BTdt1JAYtfPBPDHTzCjZbuJgt5tHPPxs8=], [x-amz-request-id, MSWRNVG3BJC5SAJA], [Accept-Ranges, bytes]...}
RawContentLength  : 958

But again if I run the Archy publish command right after this, it fails with the same exact error log as before.

Kind of baffled, really...

JDunn,

So just to make sure I am following correctly, you can use that curl command both inside the vscode terminal and a normal command prompt and they both are able to return something successfully? But then if you try to run Archy in either the same exact vscode terminal or command prompt the commands fail?

If you are able to, could you try running the Archy command in an elevated command prompt (running command prompt as administrator)? It shouldnt be necessary but I am just curious if that help out at all. This is a really odd issue!

And just to double check, theres no firewall settings blocking Archy from executing/accessing the network is there? Could you also try running archy checkVersion to see if it can check for updates successfully?

Thanks,
Jon

That's correct... I can use archy checkVersion and it is successful. Archy is able to update itself (I did that this morning when I first got the error, in case). There shouldn't be any network blocks for this - does the checkVersion test prove that? If not I can double-check with our team internally but I'm fairly sure we aren't blocking traffic to GC.

Running as Admin command prompt makes no difference unfortunately.

Hi JDunn,

Correct, I was having you use the checkVersion command just to see if Archy could make a network request to a URL that wasnt the discovery.properties endpoint.

Could you open a ticket with our care team for this issue? They should be able to help further troubleshoot this issue and and they will work to get this to the proper engineering group.

Thanks,
Jon

Thanks Jon, I will.

Even stranger, just out of interest, is that I used the same Client Credentials in an API call from a command prompt on the same machine, and that worked. So it does seem specifically related to Archy somehow (?!).

Thank you.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.