mirror of
https://github.com/pacnpal/django-anymail.git
synced 2025-12-20 03:41:05 -05:00
CI: Refactor workflows, update test matrix
* Split test, integration-test, and release workflows, simplifying config and logic for each. * Use environment to separate secrets for release workflow. * Update test matrix with newer Django and Python versions.
This commit is contained in:
15
tox.ini
15
tox.ini
@@ -3,11 +3,12 @@ envlist =
|
||||
# Factors: django-python-extras
|
||||
# Test these environments first, to catch most errors early...
|
||||
lint
|
||||
django32-py39-all
|
||||
django40-py310-all
|
||||
django20-py35-all
|
||||
docs
|
||||
# ... then test all the other supported combinations:
|
||||
django32-py{36,37,38,py3}-all
|
||||
django40-py{38,39,py3}-all
|
||||
django32-py{36,37,38,39,py3}-all
|
||||
django31-py{36,37,38,39,py3}-all
|
||||
django30-py{36,37,38,39,py3}-all
|
||||
django22-py{35,36,37,38,39,py3}-all
|
||||
@@ -16,7 +17,7 @@ envlist =
|
||||
# ... then prereleases (if available):
|
||||
djangoDev-py{38,39,310,py3}-all
|
||||
# ... then partial installation (limit extras):
|
||||
django31-py37-{none,amazon_ses,postal}
|
||||
django40-py310-{none,amazon_ses,postal}
|
||||
# ... then older versions of some dependencies:
|
||||
django22-py37-all-old_urllib3
|
||||
|
||||
@@ -28,6 +29,7 @@ deps =
|
||||
django30: django~=3.0.0
|
||||
django31: django~=3.1.0
|
||||
django32: django~=3.2.0
|
||||
django40: django~=4.0.0
|
||||
djangoDev: https://github.com/django/django/tarball/main
|
||||
old_urllib3: urllib3<1.25
|
||||
extras =
|
||||
@@ -40,7 +42,14 @@ setenv =
|
||||
# tell runtests.py to limit some test tags based on extras factor
|
||||
none: ANYMAIL_SKIP_TESTS=amazon_ses,postal
|
||||
amazon_ses: ANYMAIL_ONLY_TEST=amazon_ses
|
||||
mailgun: ANYMAIL_ONLY_TEST=mailgun
|
||||
mailjet: ANYMAIL_ONLY_TEST=mailjet
|
||||
mandrill: ANYMAIL_ONLY_TEST=mandrill
|
||||
postal: ANYMAIL_ONLY_TEST=postal
|
||||
postmark: ANYMAIL_ONLY_TEST=postmark
|
||||
sendgrid: ANYMAIL_ONLY_TEST=sendgrid
|
||||
sendinblue: ANYMAIL_ONLY_TEST=sendinblue
|
||||
sparkpost: ANYMAIL_ONLY_TEST=sparkpost
|
||||
ignore_outcome =
|
||||
# CI that wants to handle errors itself can set TOX_FORCE_IGNORE_OUTCOME=false
|
||||
djangoDev: {env:TOX_FORCE_IGNORE_OUTCOME:true}
|
||||
|
||||
Reference in New Issue
Block a user