```docker run --rm -i -v /tmp/dev_root/workspace:/...
# contributing-to-airbyte
c
Copy code
docker run --rm -i -v /tmp/dev_root/workspace:/data -v /tmp/airbyte_local:/local -w /data/27/0 --network host airbyte/source-exchangeratesapi-singer-abprotocol:dev check --config tap_config.json
{"type": "LOG", "log": {"level": "INFO", "message": "Ping response code: 200"}}
{"type": "LOG", "log": {"level": "INFO", "message": "Check succeeded"}}
@Jared Rhizor (Airbyte) shouldn’t this be returning a
StandardCheckConnectionOutput
u
right now it is just returning loglines.
u
I thought the interface for this was the return code similar to singer.
u
I thought
StandardCheckConnectionOutput
was purely a UI model
u
oh maybe we said that.
u
how would we propagate error message though?
u
e.g. expired password.
u
if we just use the code
u
through log messages is what I was assuming
u
how would that work?
u
the check worker could convert the log lines to the
StandardCheckConnectionOutput.message
field?
u
which ones though?
u
do you have a link to the protocol doc?
u
errors?
u
i can’t find iit.
u
i don’t think this is a robust interface.
u
if the integration fails and wants to tell the user why, it should designate exactly what the message should be.
u
if you'd prefer a specific message, I'd want it to be defined as part of the protocol
u
it doesn’t make sense for the worker to guess at it by parsing logs.
u
and I'd prefer if it had optional messages per input field and a global one
u
should this check response extend
AirbyteMessage
?
u
or be separate
u
I guess separate
u
like how catalog is separate
u
yeah.
u
do you have access to the original protocl doc?
u
i can’t find this.
u
I don't know where more up to date ones are
u
a lot has changed
u
i don’t remember their being a more up to date one. 😭
u
that’s why we’re out of sync 🤣
u
most of the conversation was on PRs
u
even in this old one it used logs and error code as a response though
u
i’ll put up an airbytecheckconnection message quickly now. then let’s go from there.
u
yep
u
it should have a dict for spec field name to error message and a global error message (all optional)
u
and of course the status enum
u
why not just a global error mesage?
u
eh. actually i see what you’re sayng.
u
willg vie it a try.
u
does that look okay?
u
yep
u
@charles are you going to actually make the sources return this object? if you aren't working on it I'll pick it up now
u
nope.
u
if you could do that that would be great.