Closed Bug 1532069 Opened 7 years ago Closed 7 years ago

[tc-auth] azure_test.js flakes

Categories

(Taskcluster :: Services, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: dustin, Assigned: dustin)

Details

https://tools.taskcluster.net/groups/SPVTou7rQlCt1bAWql01RA/tasks/PFrKiMl1TU6VxI4G892NCw/runs/0/logs/public%2Flogs%2Flive_backing.log

  1) azure_test.js (real)
       azureContainers:
     Uncaught Error: socket hang up
      at createHangUpError (_http_client.js:323:15)
      at Socket.socketCloseListener (_http_client.js:364:25)
      at Socket.EventEmitter.emit (domain.js:441:20)
      at TCP._handle.close (net.js:600:12)

  2) client_test.js (mock)
       auth.createClient (no scopes):
     Error: Client ID static/taskcluster/root does not have sufficient scopes and are missing the following scopes:

auth:azure-container:list-containers:fakeaccount

You have the scopes:

[
  "auth:azure-container:read-write:jungle/allowed-container"
]

This request requires you to satisfy this scope expression:

auth:azure-container:list-containers:fakeaccount

---

* method:     azureContainers
* errorCode:  InsufficientScopes
* statusCode: 403
* time:       2019-03-02T16:12:48.341Z
      at /taskcluster/clients/client/src/client.js:374:21
      at process._tickCallback (internal/process/next_tick.js:68:7)

  3) client_test.js (real)
       "before all" hook for "ping":
     Error: listen EADDRINUSE: address already in use :::60553
      at Server.setupListenHandle [as _listen2] (net.js:1277:14)
      at listenInCluster (net.js:1325:12)
      at Server.listen (net.js:1412:7)
      at /taskcluster/libraries/app/src/app.js:54:12
      at tryCallTwo (/taskcluster/node_modules/promise/lib/core.js:45:5)
      at doResolve (/taskcluster/node_modules/promise/lib/core.js:200:13)
      at new Promise (/taskcluster/node_modules/promise/lib/core.js:66:3)
      at Function.createServer (/taskcluster/libraries/app/src/app.js:37:10)
      at app (/taskcluster/libraries/app/src/app.js:149:14)
      at Context.<anonymous> (test/helper.js:381:24)


I suspect the first error caused the remainder, although I'm not sure how.

Elsewhere in that log:

    client_test.js (real)
      3) "before all" hook for "ping"
(node:116) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'currentRetry' of undefined
    at /taskcluster/node_modules/mocha/lib/runner.js:646:28
    at done (/taskcluster/node_modules/mocha/lib/runnable.js:334:5)
    at /taskcluster/node_modules/mocha/lib/runnable.js:398:11
    at process._tickCallback (internal/process/next_tick.js:68:7)
(node:116) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:116) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
    containers_test.js (real)

which is an internal error in mocha -- somehow a test is finishing in mocha after the runner thinks it's finished.

It really looks like somehow some Promise returned twice here -- for some reason the azureContainers call is still being made after the API client's scopes have been changed to auth:azure-container:read-write:jungle/allowed-container (which occurs later in azure_test_js. Then that error is being reported much later, when client_test.js is running, and yet that failure somehow is causing an auth.createClient test to fail -- and a mock test at that, which doesn't even talk to Azure.

Here's hoping recent mocha upgrades have fixed this..

Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.