You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I run attic check from cron (daily while testing, once a week in future). Attic uses a $ATTIC_PASSPHRASE set in the environment. This is running from cron.
attic check does the repository check OK but when it does the archive consistency check it fails with:
Starting repository check...
Repository check complete, no problems found.
Starting archive consistency check...
/usr/lib/python3.4/getpass.py:92: GetPassWarning: Can not control echo on the terminal.
passwd = fallback_getpass(prompt, stream)
Warning: Password input may be echoed.
Enter passphrase for /backup/attic/work-backup.attic: Traceback (most recent call last):
File "/usr/lib/python3.4/getpass.py", line 70, in unix_getpass
old = termios.tcgetattr(fd) # a copy to save
termios.error: (25, 'Inappropriate ioctl for device')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/attic", line 3, in <module>
main()
File "/usr/local/lib/python3.4/dist-packages/attic/archiver.py", line 730, in main
exit_code = archiver.run(sys.argv[1:])
File "/usr/local/lib/python3.4/dist-packages/attic/archiver.py", line 720, in run
return args.func(args)
File "/usr/local/lib/python3.4/dist-packages/attic/archiver.py", line 85, in do_check
if not args.repo_only and not ArchiveChecker().check(repository, repair=args.repair):
File "/usr/local/lib/python3.4/dist-packages/attic/archive.py", line 542, in check
self.key = self.identify_key(repository)
File "/usr/local/lib/python3.4/dist-packages/attic/archive.py", line 576, in identify_key
return key_factory(repository, cdata)
File "/usr/local/lib/python3.4/dist-packages/attic/key.py", line 45, in key_factory
return PassphraseKey.detect(repository, manifest_data)
File "/usr/local/lib/python3.4/dist-packages/attic/key.py", line 187, in detect
passphrase = getpass(prompt)
File "/usr/lib/python3.4/getpass.py", line 92, in unix_getpass
passwd = fallback_getpass(prompt, stream)
File "/usr/lib/python3.4/getpass.py", line 127, in fallback_getpass
return _raw_input(prompt, stream)
File "/usr/lib/python3.4/getpass.py", line 149, in _raw_input
raise EOFError
EOFError
Is this a known issue and is there a command line parameter or environment variable or similar that I can set to make getpass.py not break when it thinks it's not talking to a terminal?
I think I could possibly get this working if I set up ssh key auth and have the cron job ssh to localhost to run attic-check. I'll test that (haven't yet) if there is no more standard way to fix.
Gerald Quimpo
The text was updated successfully, but these errors were encountered:
Thank you Thomas. After further investigation, I had a misunderstanding about how exporting a variable in a sourced script. The variable would be available to subshells, but not to the calling shell :-). I've changed how the attic passphrase env variable is initialized and it's now available to attic check.
I was confused since there was this:
Starting repository check...
Repository check complete, no problems found.
I'd assumed that repository check would also require the passphrase. but it looks like it doesn't since that succeeded and only the archive checks failed.
I run attic check from cron (daily while testing, once a week in future). Attic uses a $ATTIC_PASSPHRASE set in the environment. This is running from cron.
attic check does the repository check OK but when it does the archive consistency check it fails with:
Is this a known issue and is there a command line parameter or environment variable or similar that I can set to make getpass.py not break when it thinks it's not talking to a terminal?
I think I could possibly get this working if I set up ssh key auth and have the cron job ssh to localhost to run attic-check. I'll test that (haven't yet) if there is no more standard way to fix.
Gerald Quimpo
The text was updated successfully, but these errors were encountered: