(cherry picked from commit 1d7ce2a39c841e77492ef08c0e86c3544ecca88d)
(cherry picked from commit 1abfc0c0a17a429102ba5f70b874263cc7b2ecf8)
(cherry picked from commit 823ab34c64b275bf57fa60fef25a67338d8cb26e)
(cherry picked from commit 095a5b0c88543e40853cc95dc21e7cc6614d20e8)
(cherry picked from commit b0e5c7504a)
(cherry picked from commit 107f64a02ec4f9a7e6174cdd13fd9f78faf81878)
(cherry picked from commit e76c50c95d)
(cherry picked from commit 6ebb567eb5)
(cherry picked from commit c99026eb35)
(cherry picked from commit aa0087d124)
Disable this test for the moment because the used imap container image
seems unstable which results in many failed CI builds.
Co-authored-by: Jason Song <i@wolfogre.com>
closes#13585fixes#9067fixes#2386
ref #6226
ref #6219fixes#745
This PR adds support to process incoming emails to perform actions.
Currently I added handling of replies and unsubscribing from
issues/pulls. In contrast to #13585 the IMAP IDLE command is used
instead of polling which results (in my opinion 😉) in cleaner code.
Procedure:
- When sending an issue/pull reply email, a token is generated which is
present in the Reply-To and References header.
- IMAP IDLE waits until a new email arrives
- The token tells which action should be performed
A possible signature and/or reply gets stripped from the content.
I added a new service to the drone pipeline to test the receiving of
incoming mails. If we keep this in, we may test our outgoing emails too
in future.
Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>