Graphcool deploy locally gives Error 500


#1

Hm, doing a graphcool deploy locally, with everything recently pulled gives me a


{
  "error": "There was an internal server error.",
  "status": 500
}

Looking at the docker logs I see this:

[ERROR] [10/17/2017 19:26:47.528] [single-server-akka.actor.default-dispatcher-2] [akka.actor.ActorSystemImpl(single-server)] Error during processing of request: 'No client with id 'cj8vdawxb00000163r18nrlzc''. Completing with 500 Internal Server Error response. To change default exception handling behavior, provide a custom ExceptionHandler.
cool.graph.shared.errors.SystemErrors$InvalidClientId: No client with id 'cj8vdawxb00000163r18nrlzc'

That client id is not mine, and I can’t find it anywhere in the code

my types:

type Course @model {
  club: String!
  createdAt: DateTime!
  updatedAt: DateTime!
}

and my .graphcoolrc

targets:
  prod: shared-eu-west-1/xxxx
  local: local/xxxx
  default: local
clusters:
  local:
    host: 'http://localhost:60000'
    clusterSecret:
      xxxx

#2

Seems like if i removed the local target (and removed the “clusters” part) from my projects .graphcoolrc I got it working.

So my guess to what happened: when I cleared out all docker stuff to start over, of course my project was not deployed on the new instances, and when trying to deploy it was using the old target.

Is this by design?
I’m thinking about if you are more than one developer, should the local target project id be unique per developer?, should .graphcoolrc not be commited?


#3

Hi,

at the moment we are still trying to iron out the local flow in the case that you described. It is probably a good idea to not commit the .graphcoolrc right now.

For reference:
You have an invalid token in the .graphcoolrc in your home folder, and you need to replace that token with a valid one (your client ID is in this token basically). This is usually the case when starting a new local cluster. One way to do that is shown by you by deleting the cluster part, another one is to curl a new token and replace it in the config with:

curl 'http://localhost:60000/system' -H 'Content-Type: application/json' -H 'Accept: */*' -d '{"query":"mutation {authenticateCustomer(input:{auth0IdToken:\"MuchTokenSuchMasterWow\"}){token, user{id}}}"}' --compressed

#4

I hate to bump an old thread like this, but this still seems to be an issue. I would be wonderful to have this resolved. Seems like if it’s a local deploy then it could just overwrite anything necessary and force it to work. This makes it unnecessarily difficult to work in a team on a project that uses graphcool.