I get this when I run `pants check ::` on remote (...
# general
c
I get this when I run
pants check ::
on remote (though not locally).
Copy code
11:56:23.62 [ERROR] 1 Exception encountered:
Engine traceback:
  in `check` goal
TypeError: Session.set_credentials() missing 1 required positional argument: 'secret_key'
Is this a pyright or pants issue?
w
Kinda hard to say without more context, but should it be an error?
Rule of thumb, if you're running that through pants, with the same pants version, same dependency versions, same OS, and same pyright - they should have the same results.
c
Ok, so I had forgotten to do
SCIE_BOOT=update pants
on the server, so that's my bad. Version pants=2.25.0 works as expected, while pants=2.26.0 fails with the above error. It's not important for me to be at 2.26, so I think I'll settle for 2.25. Is there any info that would be of interested to you concering this?
f
Maybe run
with
--print-stacktrace` so we get the full stack trace (if it is from Pants)? https://www.pantsbuild.org/stable/reference/global-options#print_stacktrace
That should give better context.
w
What code is causing that? From which library? Pyright has a note that it was inconsistently reporting errors, and now it's more deterministically erroring out.
f
Also, is the Pants S3 URL handler in use? Because there is a call to `boto`'s
Session.set_credentials
in
src/python/pants/backend/url_handlers/s3/register.py
c
Stacktrace reveals that tdyas was right. It's on L:86 when doing
aws_secret_key = env_vars.get("AWS_SECRET_ACCESS_KEY")
. It seems like the aws credentials have been recently redone to get credentials from env variables rather than ~/.aws.
And it seems I have to specify which env variables are passed into pantsd? Is it possible to force use ~/.aws instead of env variables?