canonical-hw-cert team mailing list archive
-
canonical-hw-cert team
-
Mailing list archive
-
Message #37315
[Merge] ~nhutsko/hwcert-jenkins-jobs:rewrite-dm-commands into hwcert-jenkins-jobs:master
Nadzeya Hutsko has proposed merging ~nhutsko/hwcert-jenkins-jobs:rewrite-dm-commands into hwcert-jenkins-jobs:master.
Commit message:
Change commands that use dashboard-manager to conform the new style
Requested reviews:
Jonathan Cave (jocave)
For more details, see:
https://code.launchpad.net/~nhutsko/hwcert-jenkins-jobs/+git/hwcert-jenkins-jobs/+merge/433112
The new style for the commands and env vars is defined there: https://github.com/canonical/certification-dashboard-manager#readme
Please, check it for typos and errors
--
Your team hwcert-jenkins is subscribed to branch hwcert-jenkins-jobs:master.
diff --git a/jobs/dgx/dgx-template.yaml b/jobs/dgx/dgx-template.yaml
index 805bf31..72b3b9a 100644
--- a/jobs/dgx/dgx-template.yaml
+++ b/jobs/dgx/dgx-template.yaml
@@ -38,13 +38,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-kernel-deb
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
diff --git a/jobs/dgx/run-dgx.sh b/jobs/dgx/run-dgx.sh
index 97a7977..39dc96e 100644
--- a/jobs/dgx/run-dgx.sh
+++ b/jobs/dgx/run-dgx.sh
@@ -137,6 +137,6 @@ if [ -f artifacts/submission.json ]; then
cat artifacts/submission.json |jq -r '. | {{results: .results}}' > results.json
curl "https://testflinger-revcache.canonical.com/v1/results/$JOB_NAME" -X POST --header "Content-Type: application/json" --data @results.json
fi
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.deb-board-updater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} -q {queue} artifacts/raw_summary
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello debupdater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} -q {queue} --summaryfile artifacts/raw_summary
echo "Test exit status: $TEST_STATUS"
exit $EXITCODE
diff --git a/jobs/image-testing/image-testing-desktop.yaml b/jobs/image-testing/image-testing-desktop.yaml
index 7be2808..565641a 100644
--- a/jobs/image-testing/image-testing-desktop.yaml
+++ b/jobs/image-testing/image-testing-desktop.yaml
@@ -46,13 +46,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-image-testing
- variable: TRELLO_BOARD
+ variable: APP_BOARD
builders:
- shell:
!include-raw: run-image-testing-server.sh
diff --git a/jobs/image-testing/image-testing-server.yaml b/jobs/image-testing/image-testing-server.yaml
index 59aad57..e2c9c5d 100644
--- a/jobs/image-testing/image-testing-server.yaml
+++ b/jobs/image-testing/image-testing-server.yaml
@@ -46,13 +46,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-image-testing
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
diff --git a/jobs/image-testing/image-testing.yaml b/jobs/image-testing/image-testing.yaml
index d690899..04e9067 100644
--- a/jobs/image-testing/image-testing.yaml
+++ b/jobs/image-testing/image-testing.yaml
@@ -44,13 +44,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-image-testing
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
diff --git a/jobs/image-testing/run-image-testing-server.sh b/jobs/image-testing/run-image-testing-server.sh
old mode 100644
new mode 100755
index 9785fb3..e8f6580
--- a/jobs/image-testing/run-image-testing-server.sh
+++ b/jobs/image-testing/run-image-testing-server.sh
@@ -197,6 +197,6 @@ if [ -f artifacts/submission.json ]; then
cat artifacts/submission.json |jq -r '. | {{results: .results}}' > results.json
curl -s "https://testflinger-revcache.canonical.com/v1/results/$JOB_NAME" -X POST --header "Content-Type: application/json" --data @results.json
fi
-flock /tmp/TRELLO-IMAGE-UPDATE.LOCK certification-dashboard-manager.image-board-updater -n {name} -i {image_file} -c {image_channel} -v $BUILD_ID artifacts/summary
+flock /tmp/TRELLO-IMAGE-UPDATE.LOCK certification-dashboard-manager.image-board-updater --key $APP_API_KEY --token $APP_TOKEN --board $APP_BOARD -n {name} -i {image_file} -c {image_channel} -v $BUILD_ID artifacts/summary
echo "Test exit status: $TEST_STATUS"
exit $EXITCODE
diff --git a/jobs/image-testing/run-image-testing.sh b/jobs/image-testing/run-image-testing.sh
old mode 100644
new mode 100755
index d4fb680..39324e7
--- a/jobs/image-testing/run-image-testing.sh
+++ b/jobs/image-testing/run-image-testing.sh
@@ -241,6 +241,6 @@ if [ -f artifacts/submission.json ]; then
cat artifacts/submission.json |jq -r '. | {{results: .results}}' > results.json
curl -s "https://testflinger-revcache.canonical.com/v1/results/$JOB_NAME" -X POST --header "Content-Type: application/json" --data @results.json
fi
-flock /tmp/TRELLO-IMAGE-UPDATE.LOCK certification-dashboard-manager.image-board-updater -n {device}-{image-type} -i {image_file} -c {image_channel} -v $BUILD_ID artifacts/summary
+flock /tmp/TRELLO-IMAGE-UPDATE.LOCK certification-dashboard-manager.image-board-updater --key $APP_API_KEY --token $APP_TOKEN --board $APP_BOARD -n {device}-{image-type} -i {image_file} -c {image_channel} -v $BUILD_ID artifacts/summary
echo "Test exit status: $TEST_STATUS"
exit $EXITCODE
diff --git a/jobs/infrastructure/trello/deb-board-manager.sh b/jobs/infrastructure/trello/deb-board-manager.sh
old mode 100644
new mode 100755
index 3e345e7..f699def
--- a/jobs/infrastructure/trello/deb-board-manager.sh
+++ b/jobs/infrastructure/trello/deb-board-manager.sh
@@ -19,15 +19,15 @@ set -x
git -C hwcert-data pull || git clone git+ssh://ce-certification-qa@xxxxxxxxxxxxxxxxx/~canonical-hw-cert/hwcert-jenkins-jobs/+git/hwcert-data
# This marks kernel sru bugs complete for kernel debs that are marked complete in trello
-certification-dashboard-manager.sru-bug-manager --board "$TRELLO_BOARD" --project kernel-sru-workflow --deb
+certification-dashboard-manager.sru-bug-manager --key "$APP_API_KEY" --token "$APP_TOKEN" --board "$APP_BOARD" --project kernel-sru-workflow --deb
BUG_MANAGER_RESULT="$?"
# This migrates trello cards to the appropriate lane based on kernel deb status
-certification-dashboard-manager.deb-board-manager --board "$TRELLO_BOARD" hwcert-data/debs.yaml
+certification-dashboard-manager.dashboard-manager --app trello --board "$APP_BOARD" debmanager --config hwcert-data/debs.yaml
BOARD_MANAGER_RESULT="$?"
if [ "$BUG_MANAGER_RESULT" -ne 0 ] || [ "$BOARD_MANAGER_RESULT" -ne 0 ]; then
exit 1
fi
-exit 0
\ No newline at end of file
+exit 0
diff --git a/jobs/infrastructure/trello/snap-board-manager.sh b/jobs/infrastructure/trello/snap-board-manager.sh
old mode 100644
new mode 100755
index f826b06..3b4fab6
--- a/jobs/infrastructure/trello/snap-board-manager.sh
+++ b/jobs/infrastructure/trello/snap-board-manager.sh
@@ -19,11 +19,11 @@ set -x
git -C hwcert-data pull || git clone git+ssh://ce-certification-qa@xxxxxxxxxxxxxxxxx/~canonical-hw-cert/hwcert-jenkins-jobs/+git/hwcert-data
# This marks kernel sru bugs complete for snaps that are marked complete in trello
-certification-dashboard-manager.sru-bug-manager --board "$TRELLO_BOARD" --project kernel-sru-workflow
+certification-dashboard-manager.sru-bug-manager --key "$APP_API_KEY" --token "$APP_TOKEN" --board "$APP_BOARD" --project kernel-sru-workflow
BUG_MANAGER_RESULT="$?"
# This migrates trello cards to the appropriate lane based on snap status
-certification-dashboard-manager.snap-board-manager --board "$TRELLO_BOARD" hwcert-data/snaps.yaml
+certification-dashboard-manager.dashboard-manager --app trello --board "$APP_BOARD" snapmanager --config hwcert-data/snaps.yaml
BOARD_MANAGER_RESULT="$?"
if [ "$BUG_MANAGER_RESULT" -ne 0 ] || [ "$BOARD_MANAGER_RESULT" -ne 0 ]; then
diff --git a/jobs/infrastructure/trello/trello.yaml b/jobs/infrastructure/trello/trello.yaml
index f8418f9..17e8bad 100644
--- a/jobs/infrastructure/trello/trello.yaml
+++ b/jobs/infrastructure/trello/trello.yaml
@@ -26,13 +26,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-suv
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- file:
credential-id: lp-credentials
variable: LAUNCHPAD_CREDENTIALS
@@ -62,13 +62,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-kernel-deb
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- file:
credential-id: lp-credentials
variable: LAUNCHPAD_CREDENTIALS
diff --git a/jobs/kpis/trello-kpi.yaml b/jobs/kpis/trello-kpi.yaml
index 031c894..90fc76f 100644
--- a/jobs/kpis/trello-kpi.yaml
+++ b/jobs/kpis/trello-kpi.yaml
@@ -25,13 +25,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-suv
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- text:
credential-id: influx_pass
variable: INFLUX_PASS
diff --git a/jobs/snap-testing/generic-snappy-testflinger-candidate-snaps.yaml b/jobs/snap-testing/generic-snappy-testflinger-candidate-snaps.yaml
index 4d741da..176f0cb 100644
--- a/jobs/snap-testing/generic-snappy-testflinger-candidate-snaps.yaml
+++ b/jobs/snap-testing/generic-snappy-testflinger-candidate-snaps.yaml
@@ -61,13 +61,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-suv
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- text:
credential-id: influx_pass
variable: INFLUX_PASS
diff --git a/jobs/snap-testing/list-bootstrapped-templates.yaml b/jobs/snap-testing/list-bootstrapped-templates.yaml
index a1c7f13..05dadd1 100644
--- a/jobs/snap-testing/list-bootstrapped-templates.yaml
+++ b/jobs/snap-testing/list-bootstrapped-templates.yaml
@@ -24,13 +24,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-suv
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
diff --git a/jobs/snap-testing/run-cdts-list-bootstrapped.sh b/jobs/snap-testing/run-cdts-list-bootstrapped.sh
index c70e127..063d5d7 100644
--- a/jobs/snap-testing/run-cdts-list-bootstrapped.sh
+++ b/jobs/snap-testing/run-cdts-list-bootstrapped.sh
@@ -185,7 +185,7 @@ git -C hwcert-jenkins-tools pull -q || (rm -rf hwcert-jenkins-tools && git clone
git -C hwcert-data pull -q || git clone -q git+ssh://ce-certification-qa@xxxxxxxxxxxxxxxxx/~canonical-hw-cert/hwcert-jenkins-jobs/+git/hwcert-data
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.snap-board-updater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} --cardonly /dev/null
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello snapupdater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} --cardonly --summaryfile /dev/null
JOB_ID=$(testflinger submit -q job.yaml)
echo "JOB_ID: $JOB_ID"
@@ -222,7 +222,7 @@ cat artifacts/snaplist.txt >> artifacts/summary
hwcert-jenkins-tools/mailtool -t {email} -s "[TESTFLINGER] {name} {snap} ($REV) {track}/{channel}" artifacts/summary
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.snap-board-updater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} artifacts/raw_summary
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello snapupdater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} --summaryfile artifacts/raw_summary
echo "Test exit status: $TEST_STATUS"
exit $TEST_STATUS
diff --git a/jobs/snap-testing/run-checkbox-snappy.sh b/jobs/snap-testing/run-checkbox-snappy.sh
index 2b9f731..bcc16bc 100644
--- a/jobs/snap-testing/run-checkbox-snappy.sh
+++ b/jobs/snap-testing/run-checkbox-snappy.sh
@@ -340,7 +340,7 @@ EOF
. build-env.sh
git -C hwcert-jenkins-tools pull -q || (rm -rf hwcert-jenkins-tools && git clone -q https://git.launchpad.net/hwcert-jenkins-tools)
git -C hwcert-data pull -q || git clone -q git+ssh://ce-certification-qa@xxxxxxxxxxxxxxxxx/~canonical-hw-cert/hwcert-jenkins-jobs/+git/hwcert-data
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.snap-board-updater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v ${{VERSION}} -r ${{REV}} -t __track__{track} -c {channel} --cardonly /dev/null
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello snapupdater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v ${{VERSION}} -r ${{REV}} -t __track__{track} -c {channel} --cardonly --summaryfile /dev/null
JOB_ID=$(testflinger submit -q job.yaml)
echo "JOB_ID: $JOB_ID"
echo "$JOB_ID" > JOB_ID
@@ -382,7 +382,7 @@ if [ -f artifacts/submission.json ]; then
cat artifacts/submission.json |jq -r '. | {{results: .results}}' > results.json
curl -s "https://testflinger-revcache.canonical.com/v1/results/$JOB_NAME" -X POST --header "Content-Type: application/json" --data @results.json
fi
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.snap-board-updater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} artifacts/raw_summary
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello snapupdater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} --summaryfile artifacts/raw_summary
if [ "{influx_reporting}" == "True" ]; then
pip3 install influxdb
diff --git a/jobs/spread/run-spread.sh b/jobs/spread/run-spread.sh
old mode 100644
new mode 100755
index 566cb5a..7ec24d4
--- a/jobs/spread/run-spread.sh
+++ b/jobs/spread/run-spread.sh
@@ -145,6 +145,6 @@ hwcert-jenkins-tools/mailtool -t {email} -s "[TESTFLINGER-SPREAD] {name} {snap}
if [ -f artifacts/spread.json ]; then
curl -s "https://testflinger-revcache.canonical.com/v1/results/$JOB_NAME" -X POST --header "Content-Type: application/json" --data @artifacts/spread.json
fi
-flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.snap-board-updater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} artifacts/raw_summary
+flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello snapupdater --config hwcert-data/snaps.yaml -a {arch} -b {store} -n {name} -s {snap} -v $VERSION -r $REV -t __track__{track} -c {channel} --summaryfile artifacts/raw_summary
exit $EXITCODE
diff --git a/jobs/spread/spread-test-template.yaml b/jobs/spread/spread-test-template.yaml
index bf6b7fd..ef09f6d 100644
--- a/jobs/spread/spread-test-template.yaml
+++ b/jobs/spread/spread-test-template.yaml
@@ -25,13 +25,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-suv
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
diff --git a/jobs/sru/run-sru.sh b/jobs/sru/run-sru.sh
index 2d489c6..6b1f0d7 100644
--- a/jobs/sru/run-sru.sh
+++ b/jobs/sru/run-sru.sh
@@ -268,9 +268,9 @@ git -C hwcert-data pull -q || git clone -q git+ssh://ce-certification-qa@xxxxxxx
# Create a card if this is a proper SRU run
if [ "{trello_reporting}" == "True" ]; then
if [[ "{srutype}" =~ "raspi" ]] || [[ "{series}" == "impish" ]] || [[ "{series}" == "jammy" ]]; then
- flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.deb-board-updater --config hwcert-data/debs.yaml -a {arch} -n {system-id} -k {kernel-to-check} -s {series} -t {srutype} --cardonly /dev/null
+ flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello debupdater --config hwcert-data/debs.yaml -a {arch} -n {system-id} -k {kernel-to-check} -s {series} -t {srutype} --cardonly --summaryfile /dev/null
else
- flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.deb-board-updater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} --cardonly /dev/null
+ flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello debupdater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} --cardonly --summaryfile /dev/null
fi
fi
@@ -319,9 +319,9 @@ fi
# Add a result to the card if this is proper sru run
if [ "{trello_reporting}" == "True" ]; then
if [[ "{srutype}" =~ "raspi" ]] || [[ "{series}" == "impish" ]] || [[ "{series}" == "jammy" ]]; then
- flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.deb-board-updater --config hwcert-data/debs.yaml -a {arch} -n {system-id} -k {kernel-to-check} -s {series} -t {srutype} artifacts/raw_summary
+ flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello debupdater --config hwcert-data/debs.yaml -a {arch} -n {system-id} -k {kernel-to-check} -s {series} -t {srutype} --summaryfile artifacts/raw_summary
else
- flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.deb-board-updater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} artifacts/raw_summary
+ flock /tmp/TRELLO-UPDATE.LOCK certification-dashboard-manager.dashboard-manager --app trello debupdater --config hwcert-data/debs.yaml -a {arch} -n {name} -k {kernel-to-check} -s {series} -t {srutype} --summaryfile artifacts/raw_summary
fi
fi
diff --git a/jobs/sru/sru-template.yaml b/jobs/sru/sru-template.yaml
index 78cbffd..98a816e 100644
--- a/jobs/sru/sru-template.yaml
+++ b/jobs/sru/sru-template.yaml
@@ -117,13 +117,13 @@
- credentials-binding:
- text:
credential-id: trello-api-token
- variable: TRELLO_TOKEN
+ variable: APP_TOKEN
- text:
credential-id: trello-api-key
- variable: TRELLO_API_KEY
+ variable: APP_API_KEY
- text:
credential-id: trello-board-kernel-deb
- variable: TRELLO_BOARD
+ variable: APP_BOARD
- username-password-separated:
credential-id: smtp-relay-auth
username: SMTP_USER
Follow ups