Mail results Plugin

The Mail result plugin enables you to receive email notifications for job start and completion events within the Avocado testing framework.

Note

Currently only supports Gmail.

Installation

To install the Mail results plugin from pip, use:

$ pip install avocado-framework-plugin-result-mail

Configuration

To use the Mail Result plugin, you need to configure it in the Avocado settings file.

(avocado.conf located /etc/avocado/ if not present you can create the file) Below is an configuration example:

Note

More information on configuration here. For detailed configuration instructions, please visit Avocado Configuration.

[plugins.mail]

# The email address to which job notification emails will be sent.
recipient = avocado@local.com

# The subject header for the job notification emails.
header = [AVOCADO JOB NOTIFICATION]

# The email address from which the job notification emails will be sent.
sender = avocado@local.com

# The SMTP server address for sending the emails.
server = smtp.gmail.com

# The SMTP server port for sending the emails.
port = 587

# The application-specific password for the sender email address.
password = abcd efgh ijkl mnop

# The detail level of the email content.
# Set to false for a summary with essential details
# or true for detailed information about each failed test.
verbose = false

Usage

Once configured, the Mail result plugin will automatically send email notifications for job start and completion events based on the specified settings.

Obtaining an App Password for Gmail

Please follow these steps to generate an App Password:

Create & use app passwords

Important: To create an app password, you need 2-Step Verification on your Google Account.

  1. Go to your Google Account.

  2. Select Security.

  3. Under “How you sign in to Google,” select 2-Step Verification.

  4. At the bottom of the page, select App passwords.

  5. Enter a name that helps you remember where you’ll use the app password.

  6. Select Generate.

  7. To enter the app password, follow the instructions on your screen.

  8. The app password is the 16-character code that generates on your device.

  9. Select Done.

Enter the App Password inside of the avocado configuration file.

Remember to keep this App Password secure and don’t share it with anyone. If you suspect it has been compromised, you can always revoke it and generate a new one.

Example Plugin Outputs

Verbose True

Job Notification - Job abca44fb69558024b0af74a5654ab282f00f1253
===============================================================

Job Total Time: 24.03 Seconds
Job Finished At: 2024-06-25 16:31:58

Results
-------

- PASS: 6
- ERROR: 0
- FAIL: 1
- SKIP: 0
- WARN: 0
- INTERRUPT: 0
- CANCEL: 0

Test Summary
------------

Name: selftests/safeloader.sh
Status: FAIL
Fail Reason:
Actual Time Start: 1719325898.06546
Actual Time End: 1719325902.474006
ID: static-checks-4-selftests/safeloader.sh
Log Directory: /home/hlynden/avocado/job-results/job-2024-06-25T16.31-abca44f/test-results/static-checks-4-selftests_safeloader.sh
Log File: /home/hlynden/avocado/job-results/job-2024-06-25T16.31-abca44f/test-results/static-checks-4-selftests_safeloader.sh/debug.log
Time Elapsed: 4.410571283999161 seconds
Time Start: 22630.607959844
Time End: 22635.018531128
Tags: {}
Whiteboard:
Verbose False

Job Notification - Job 83da84014a9cbe7a89bea398eb1608dc04743897
===============================================================

Job Total Time: 24.03 Seconds
Job Finished At: 2024-06-25 16:31:58

Results
-------

- PASS: 6
- ERROR: 0
- FAIL: 1
- SKIP: 0
- WARN: 0
- INTERRUPT: 0
- CANCEL: 0

Test Summary
------------

Name: selftests/safeloader.sh
Fail Reason: