| import java.security.MessageDigest | |
| class GenSHA256 extends SourceTask { | |
| def outputDir | |
| @OutputDirectory | |
| File getOutputDir() { project.file(outputDir) } | |
| @TaskAction | |
| void writeSHA256s() { | |
| source.each { file -> | |
| MessageDigest digest = MessageDigest.getInstance("SHA-256") | |
| digest.update(file.bytes) | |
| def checksum = new BigInteger(1, digest.digest()).toString(16).padLeft(32, "0") | |
| new File(outputDir, file.name + ".sha256").text = checksum | |
| } | |
| } | |
| } | |
| project.ext.GenSHA256 = GenSHA256.class |