apply plugin: 'base' import de.undercouch.gradle.tasks.download.* task downloadAjaxslt(type: Download) { def version = '0.8.1' ext { versionedArchive = "ajaxslt-$version" } src "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/ajaxslt/${versionedArchive}.tar.gz" dest temporaryDir overwrite false } task verifyAjaxslt(type: Verify, dependsOn: downloadAjaxslt) { // TODO: refactor this logic into a reusable custom task class src files(downloadAjaxslt)[0] checksum 'c995abe3310a401bb4db7f28a6409756' def stamp = new File(temporaryDir, 'stamp') outputs.file stamp doLast { stamp.text = '' } } task unpackAjaxslt(type: Sync, dependsOn: verifyAjaxslt) { from tarTree(verifyAjaxslt.src) into temporaryDir } task unversionAjaxslt(type: Sync, dependsOn: unpackAjaxslt) { from new File(files(unpackAjaxslt)[0], downloadAjaxslt.versionedArchive) into 'examples-src/ajaxslt' clean { delete unversionAjaxslt } } task processTestResources(dependsOn: unversionAjaxslt) { }