Summary
When trying to add a custom connector to a local Airbyte instance, an ‘Internal Server Error: Get Spec job failed’ is returned. The error seems to be related to fetching the spec from the custom connector.
Question
Hi! I built a custom connector outside of the airbyte repo and have its docker image published. When I try to add it to my local airbyte it resturns Internal Server Error: Get Spec job failed.
"message": "Internal Server Error: Get Spec job failed.",
"exceptionClassName": "java.lang.IllegalStateException",
"exceptionStack": [
"java.lang.IllegalStateException: Get Spec job failed.",
"\tat com.google.common.base.Preconditions.checkState(Preconditions.java:502)",
"\tat io.airbyte.commons.server.converters.SpecFetcher.getSpecFromJob(SpecFetcher.java:17)",
"\tat io.airbyte.commons.server.handlers.helpers.ActorDefinitionHandlerHelper.getSpecForImage(ActorDefinitionHandlerHelper.java:153)",
"\tat io.airbyte.commons.server.handlers.helpers.ActorDefinitionHandlerHelper.defaultDefinitionVersionFromCreate(ActorDefinitionHandlerHelper.java:72)",
"\tat io.airbyte.commons.server.handlers.DestinationDefinitionsHandler.createCustomDestinationDefinition(DestinationDefinitionsHandler.java:240)",
"\tat io.airbyte.server.apis.DestinationDefinitionApiController.lambda$createCustomDestinationDefinition$0(DestinationDefinitionApiController.java:66)",
"\tat io.airbyte.server.apis.ApiHelper.execute(ApiHelper.java:28)",
"\tat io.airbyte.server.apis.DestinationDefinitionApiController.createCustomDestinationDefinition(DestinationDefinitionApiController.java:66)",
"\tat io.airbyte.server.apis.$DestinationDefinitionApiController$Definition$Exec.dispatch(Unknown Source)",
"\tat io.micronaut.context.AbstractExecutableMethodsDefinition$DispatchedExecutableMethod.invoke(AbstractExecutableMethodsDefinition.java:371)",
"\tat io.micronaut.context.DefaultBeanContext$4.invoke(DefaultBeanContext.java:594)",
"\tat io.micronaut.web.router.AbstractRouteMatch.execute(AbstractRouteMatch.java:303)",
"\tat io.micronaut.web.router.RouteMatch.execute(RouteMatch.java:111)",
"\tat io.micronaut.http.context.ServerRequestContext.with(ServerRequestContext.java:103)",
"\tat io.micronaut.http.server.RouteExecutor.lambda$executeRoute$14(RouteExecutor.java:659)",
"\tat reactor.core.publisher.FluxDeferContextual.subscribe(FluxDeferContextual.java:49)",
"\tat reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:62)",
"\tat reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.run(FluxSubscribeOn.java:194)",
"\tat io.micronaut.reactive.reactor.instrument.ReactorInstrumentation.lambda$init$0(ReactorInstrumentation.java:62)",
"\tat reactor.core.scheduler.WorkerTask.call(WorkerTask.java:84)",
"\tat reactor.core.scheduler.WorkerTask.call(WorkerTask.java:37)",
"\tat io.micronaut.scheduling.instrument.InvocationInstrumenterWrappedCallable.call(InvocationInstrumenterWrappedCallable.java:53)",
"\tat java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)",
"\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)",
"\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)",
"\tat java.base/java.lang.Thread.run(Thread.java:1583)"
]
}```
But when i pulll the docker image and run the spec command it works just fine.
<br>
---
This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. [Click here](https://airbytehq.slack.com/archives/C027KKE4BCZ/p1707845710859589) if you want to access the original thread.
[Join the conversation on Slack](https://slack.airbyte.com)
<sub>
["custom-connector", "docker-image", "internal-server-error", "get-spec-job-failed"]
</sub>