Some checks failed
CI-integ-test-full / caching-integ-tests (push) Failing after 32s
CI-integ-test-full / other-integ-tests (push) Failing after 29m15s
Update Wrapper checksums file / Update checksums (push) Failing after 3m7s
CI-codeql / Analyze (javascript-typescript) (push) Failing after 10m7s
19 lines
548 B
TypeScript
19 lines
548 B
TypeScript
import * as crypto from 'crypto'
|
|
import * as fs from 'fs'
|
|
|
|
export async function sha256File(path: string): Promise<string> {
|
|
return new Promise((resolve, reject) => {
|
|
const hash = crypto.createHash('sha256')
|
|
const stream = fs.createReadStream(path)
|
|
stream.on('data', data => hash.update(data))
|
|
stream.on('end', () => {
|
|
stream.destroy()
|
|
resolve(hash.digest('hex'))
|
|
})
|
|
stream.on('error', error => {
|
|
stream.destroy()
|
|
reject(error)
|
|
})
|
|
})
|
|
}
|