summaryrefslogtreecommitdiffstats
path: root/mobile/android/fenix/Jenkinsfile
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/fenix/Jenkinsfile')
-rw-r--r--mobile/android/fenix/Jenkinsfile53
1 files changed, 53 insertions, 0 deletions
diff --git a/mobile/android/fenix/Jenkinsfile b/mobile/android/fenix/Jenkinsfile
new file mode 100644
index 0000000000..ebfc2e4e68
--- /dev/null
+++ b/mobile/android/fenix/Jenkinsfile
@@ -0,0 +1,53 @@
+pipeline {
+ agent any
+ triggers {
+ cron(env.BRANCH_NAME == 'main' ? 'H 0 * * *' : '')
+ }
+ options {
+ timestamps()
+ timeout(time: 1, unit: 'HOURS')
+ }
+ stages {
+ stage('test') {
+ when { branch 'main' }
+ steps {
+ dir('app/src/androidTest/java/org/mozilla/fenix/syncIntegration') {
+ sh 'pipenv install'
+ sh 'pipenv check'
+ sh 'pipenv run pytest'
+ }
+ }
+ }
+ }
+ post {
+ always {
+ script {
+ if (env.BRANCH_NAME == 'main') {
+ publishHTML(target: [
+ allowMissing: false,
+ alwaysLinkToLastBuild: true,
+ keepAll: true,
+ reportDir: 'app/src/androidTest/java/org/mozilla/fenix/syncintegration/results',
+ reportFiles: 'index.html',
+ reportName: 'HTML Report'])
+ }
+ }
+ }
+
+ failure {
+ script {
+ if (env.BRANCH_NAME == 'main') {
+ slackSend(
+ color: 'danger',
+ message: "FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL}HTML_20Report/)")
+ }
+ }
+ }
+
+ fixed {
+ slackSend(
+ color: 'good',
+ message: "FIXED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL}HTML_20Report/)")
+ }
+ }
+}