zertrin/duplicity-backup.sh

Email log does not include GPG failure

Closed this issue · 8 comments

I noticed that the email arrives with ERROR correctly set in the Subject, but if the error was a GPG error like (sample from the command line):

GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: no default secret key: bad passphrase
gpg: [stdin]: sign+encrypt failed: bad passphrase
===== End GnuPG log =====

then I cannot see it in the email:

--------    START DUPLICITY-BACKUP SCRIPT for sea   --------

Attempting to acquire lock [...]
successfully acquired lock.
Reading globbing filelist [...]
Warning: exclude-device-files is not the first selector.
This may not be what you intended
Local and Remote metadata are synchronized, no sync needed.
----------------[ Duplicity Cleanup ]----------------
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Tue Sep  6 13:55:54 2016
No old backup sets found, nothing deleted.

-----------[ Source Disk Use Information ]-----------
189G    /home

---------[ Destination Disk Use Information ]--------
Destination disk use information is currently only available for the following storage backends:
File, SSH, Amazon S3 and Google Cloud

---------    END DUPLICITY-BACKUP SCRIPT    ---------

Hi, thanks again for reporting your findings :)

Did you try the new branch rework-logging (Pull request #137)?

Since I reworked the whole reporting system, I'm letting it run a few days on my system before merging, but I'd love some external testing ;) I suspect it could solve this issue 5 days before it being reported ^^

Edit: I've merged dev into rework-logging since the last commit to dev was a bugfix for s-nail for you ;)

Oh cool let me try that one ;)

Oh nice, the error is there, not very clear what caused it but it is better than before for sure, thanks for working on it!


--------    START DUPLICITY-BACKUP SCRIPT for sea   --------

Attempting to acquire lock [...]
successfully acquired lock.
Reading globbing filelist [...]
Warning: exclude-device-files is not the first selector.
This may not be what you intended
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Tue Sep  6 13:55:54 2016
/usr/lib/python2.7/getpass.py:83: GetPassWarning: Can not control echo on the terminal.
  passwd = fallback_getpass(prompt, stream)
Warning: Password input may be echoed.
GnuPG passphrase: Traceback (most recent call last):
  File "/usr/bin/duplicity", line 1546, in <module>
    with_tempdir(main)
  File "/usr/bin/duplicity", line 1540, in with_tempdir
    fn()
  File "/usr/bin/duplicity", line 1391, in main
    do_backup(action)
  File "/usr/bin/duplicity", line 1465, in do_backup
    globals.gpg_profile.passphrase = get_passphrase(1, action)
  File "/usr/bin/duplicity", line 201, in get_passphrase
    pass1 = getpass_safe(_("GnuPG passphrase:") + " ")
  File "/usr/bin/duplicity", line 98, in getpass_safe
    return getpass.getpass(message)
  File "/usr/lib/python2.7/getpass.py", line 83, in unix_getpass
    passwd = fallback_getpass(prompt, stream)
  File "/usr/lib/python2.7/getpass.py", line 118, in fallback_getpass
    return _raw_input(prompt, stream)
  File "/usr/lib/python2.7/getpass.py", line 135, in _raw_input
    raise EOFError
EOFError

----------------[ Duplicity Cleanup ]----------------
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: Tue Sep  6 13:55:54 2016
No old backup sets found, nothing deleted.

-----------[ Source Disk Use Information ]-----------
du: cannot read directory '/home/lost+found': Permission denied
190G    /home

---------[ Destination Disk Use Information ]--------
Destination disk use information is currently only available for the following storage backends:
File, SSH, Amazon S3 and Google Cloud

---------    END DUPLICITY-BACKUP SCRIPT    ---------

If I can add one little question (not a script guru myself or I would help 😄). The du error is not blocking right? I mean, the script I guess continues the backup? It is weird because I am explicitly excluding it so probably the du thing is done before the exclusion takes place.

At the point where [ Source Disk Use Information ] starts, the backup is already finished ;)

So I'm closing this issue already, I will probably include the branch in dev during the weekend.

The du thing is issue #101, When using include-exclude-filelists, du basically scans ROOT completely since I've no way to give the same include/exclude filelist to du easily for now.

Yeah I guess it is a bit of a hassle to parse the exclude/include file and execute du accordingly, in any case, if it is just for reporting, it is not that big of a deal.