Skip to main content

Remote service trigger with mail

Project description

Mail Trigger

PyPI Travis Coverage License

Requirements

  • Python (3.7+)
  • pip
  • python-dev

Installation

On Ubuntu / Mint, install Mail Trigger with the following commands:

sudo apt update
sudo apt install python3-dev python3-pip python3-setuptools
sudo pip install mailtrigger

On OS X, install Mail Trigger via Homebrew (or via Linuxbrew on Linux):

TBD

On Windows, install Mail Trigger with the following commands:

pip install -U pywin32
pip install -U PyInstaller
pip install -Ur requirements.txt

pyinstaller --clean --name mailtrigger -F trigger.py

Updating

pip install mailtrigger --upgrade

Running

mailtrigger --mailer-config mailer.json --scheduler-config scheduler.json --trigger-config trigger.json

Settings

Mail Trigger parameters can be set in the directory config.

An example of configuration in mailer.json:

{
  "pop3": {
    "host": "pop.example.com",
    "pass": "pass",
    "port": 995,
    "ssl": true,
    "timeout": 10,
    "user": "user"
  },
  "smtp": {
    "host": "smtp.example.com",
    "pass": "pass",
    "port": 465,
    "ssl": true,
    "timeout": 10,
    "user": "user"
  }
}

An example of configuration in scheduler.json:

{
  "interval": 30
}

An example of configuration in trigger.json:

{
  "gerrit": {
    "filter": [
      {
        "from": "name@example.com",
        "subject": "[trigger]"
      }
    ],
    "server": [
      {
        "host": "localhost",
        "port": 8080
      }
    ]
  },
  "helper": {
    "filter": [
      {
        "from": "name@example.com",
        "subject": "[trigger]"
      }
    ]
  },
  "jenkins": {
    "filter": [
      {
        "from": "name@example.com",
        "subject": "[trigger]"
      }
    ],
    "server": [
      {
        "host": "localhost",
        "port": 8081
      }
    ]
  },
  "jira": {
    "filter": [
      {
        "from": "name@example.com",
        "subject": "[trigger]"
      }
    ],
    "server": [
      {
        "host": "localhost",
        "port": 8082
      }
    ]
  },
  "printer": {
    "file": "output.xlsx",
    "filter": [
      {
        "from": "name@example.com",
        "subject": ""
      }
    ]
  }
}

Usage

Subject

[trigger]: Write your description here

Note: [trigger] is the reserved word in subject

Recipient

The recipient is mail receiver as Mail Trigger.

Content

Gerrit Trigger

@gerrit help
@gerrit list
@gerrit restart <host>
@gerrit start <host>
@gerrit stop <host>
@gerrit verify <host>

@gerrit review <host>:<port>
  [--project <PROJECT> | -p <PROJECT>]
  [--branch <BRANCH> | -b <BRANCH>]
  [--message <MESSAGE> | -m <MESSAGE>]
  [--notify <NOTIFYHANDLING> | -n <NOTIFYHANDLING>]
  [--submit | -s]
  [--abandon | --restore]
  [--rebase]
  [--move <BRANCH>]
  [--publish]
  [--json | -j]
  [--delete]
  [--verified <N>] [--code-review <N>]
  [--label Label-Name=<N>]
  [--tag TAG]
  {COMMIT | CHANGEID,PATCHSET}

Jenkins Trigger

@jenkins build <host>:<port> JOB [--parameter <PARAMETER> | -p <PARAMETER>]
@jenkins help
@jenkins list
@jenkins list <host>:<port>
@jenkins query <host>:<port> JOB
@jenkins rebuild <host>:<port> JOB
@jenkins stop <host>:<port> JOB
@jenkins verify <host>:<port> JOB

Jira Trigger

TBD

Trigger Help

@help

License Apache

Project License can be found here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mailtrigger-2.4.0.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

mailtrigger-2.4.0-py2.py3-none-any.whl (19.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file mailtrigger-2.4.0.tar.gz.

File metadata

  • Download URL: mailtrigger-2.4.0.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for mailtrigger-2.4.0.tar.gz
Algorithm Hash digest
SHA256 ed4ea0eb53cffabe8def979c7f6c477604968088bba50f6557f46ff07cedef28
MD5 d950e179cfeb68c987b64268cb787bbc
BLAKE2b-256 f957bb3751ef63637c96735dcfd49f934cd2b80d1c5bc2b743189ed5e8fb8eb2

See more details on using hashes here.

File details

Details for the file mailtrigger-2.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: mailtrigger-2.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for mailtrigger-2.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 cd4a561562f6dfd74339dd73b49197af47f245aaaa0e2cf28628dbcb5f466d59
MD5 86844a6e4381cfbc4f8e4543a683a099
BLAKE2b-256 b179c62f22c7d2a4c41656256ad4f9b468b9538ce79a602ff199e11e84f1fc7e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page