zcash-android-wallet-sdk/ci.gradle

57 lines
1.7 KiB
Groovy

//
// CI tasks
//
/* These tasks help simplify the integration with CI systems */
task ciCompile {
description = 'Verifies that the code compiles. Intended for use in response to pull requests.'
dependsOn 'clean', 'compileZcashmainnetReleaseJavaWithJavac'
}
task ciBuild {
description = 'Builds the default variant of the SDK. Intended for use in response to merges.'
dependsOn 'ciCompile', 'assembleZcashmainnetRelease'
}
task ciLintPr {
description = 'Verifies that the code passes lint checks. Intended for use in response to pull requests.'
doLast {
println 'TODO: lint this PR'
}
}
task ciDeploy {
description = 'Deploys an artifact to bintray. Intended for use in response to tags.'
// dependsOn ciBuild
doLast {
println 'TODO: deploy'
}
}
task ciTestUnit {
description = 'Runs unit tests that can execute without an android emulator.'
dependsOn 'testZcashmainnetReleaseUnitTest'
}
task ciTestAndroid {
description = 'Runs Anrdroid tests that require an android emulator.'
doLast {
println 'TODO: android test this PR'
}
}
task ciTestPr {
description = 'Runs the default test suite. Intended for use in response to pull requests.'
dependsOn ciTestAndroid, ciTestUnit
doLast {
println 'TODO: test this PR'
}
}
task ciTestNightly {
description = 'Runs the full nightly integration test suite. Intended to exercise everything and identify unintended breaking changes.'
dependsOn ciBuild
doLast {
println 'TODO: run nightly build'
}
}
// android tests are more complex than unit tests
// so whenever both are scheduled as siblings, run the simple unit tests first
ciTestAndroid.shouldRunAfter ciTestUnit