Welcome! Please see the About page for a little more info on how this works.

+1 vote
in Cloud by

Hi!

After I upgraded Datomic cloud to version 2023/02/28 990-9202 the bastion disappeared in AWS. So now I can't connect to Datomic anymore.

When I try to connect to it with datomic client access <SYSTEM-NAME>

I get this error:

`
{:clojure.main/message
"Execution error at datomic.tools.ops.aws/get-ip (aws.clj:116).\nGateway not found, make sure gateway is running.\n",
:clojure.main/triage
{:clojure.error/class java.lang.RuntimeException,
:clojure.error/line 116,
:clojure.error/cause
"Gateway not found, make sure gateway is running.",
:clojure.error/symbol datomic.tools.ops.aws/get-ip,
:clojure.error/source "aws.clj",
:clojure.error/phase :execution},
:clojure.main/trace
{:via
[{:type java.lang.RuntimeException,

:message "Gateway not found, make sure gateway is running.",
:at [datomic.tools.ops.aws$get_ip invokeStatic "aws.clj" 116]}],

:trace
[[datomic.tools.ops.aws$get_ip invokeStatic "aws.clj" 116]
[datomic.tools.ops.aws$get_ip invoke "aws.clj" 113]
[datomic.tools.ops.ssh$access invokeStatic "ssh.clj" 77]
[datomic.tools.ops.ssh$access invoke "ssh.clj" 56]
[datomic.tools.ops.cli.client$eval13301$fn__13302

invoke
"client.clj"
68]

[clojure.lang.MultiFn invoke "MultiFn.java" 229]
[datomic.tools.ops$_main invokeStatic "ops.clj" 83]
[datomic.tools.ops$_main doInvoke "ops.clj" 76]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.lang.Var applyTo "Var.java" 705]
[clojure.core$apply invokeStatic "core.clj" 667]
[clojure.main$main_opt invokeStatic "main.clj" 514]
[clojure.main$main_opt invoke "main.clj" 510]
[clojure.main$main invokeStatic "main.clj" 664]
[clojure.main$main doInvoke "main.clj" 616]
[clojure.lang.RestFn applyTo "RestFn.java" 137]
[clojure.lang.Var applyTo "Var.java" 705]
[clojure.main main "main.java" 40]],
:cause "Gateway not found, make sure gateway is running."}}
`

What should I do to be able to connect to Datomic again?

1 Answer

+1 vote
by

I got it working!

You don't need the the socks proxy anymore with the datomic client since the bastion is replaced with an AWS api gateway.

Go to your AWS console and look at the api gatewats

https://eu-central-1.console.aws.amazon.com/apigateway/main/apis

Click on datomic-YOUR-SYSTEM-NAME-client-api

Use the Invoke URL as the value for the endpoint in your configuration when connecting to datomic.

{:server-type :ion

      :region "eu-central-1" ;; e.g. us-east-1
      :system SYSTEM_NAME
      :endpoint  INVOKE_URL}
...