Files
core/scripts/download-latest-admin-assets.js
2022-02-24 22:02:35 +08:00

25 lines
789 B
JavaScript

#!env node
const { createWriteStream, writeFileSync } = require('fs')
const { join } = require('path')
const { fetch, $ } = require('zx')
const {
dashboard: { repo, version },
} = require('../package.json')
const endpoint = `https://api.github.com/repos/${repo}/releases/tags/v${version}`
!(async () => {
const json = await fetch(endpoint).then((res) => res.json())
const downloadUrl = json.assets.find(
(asset) => asset.name === 'release.zip',
).browser_download_url
const buffer = await fetch(downloadUrl).then((res) => res.buffer())
writeFileSync(join(process.cwd(), 'admin-release.zip'), buffer)
await $`ls -lh`
await $`unzip admin-release.zip -d out`
await $`mv out/dist out/admin`
await $`rm -f admin-release.zip`
// release.zip > dist > index.html
})()