1 module.exports = async ({github, context, core}) => {
3 await github.rest.git.updateRef({
4 owner: context.repo.owner,
5 repo: context.repo.repo,
6 ref: 'tags/master-tot',
10 core.setFailed(`upload master-tot tag; ${error.name}; ${error.message}`)
15 release = await github.rest.repos.getReleaseByTag({
16 owner: context.repo.owner,
17 repo: context.repo.repo,
21 core.setFailed(`get the master release; ${error.name}; ${error.message}`)
25 await github.rest.repos.updateRelease({
26 owner: context.repo.owner,
27 repo: context.repo.repo,
28 release_id: release.data.id
31 core.setFailed(`update the master release; ${error.name}; ${error.message}`)
36 release_assets = await github.rest.repos.listReleaseAssets({
37 owner: context.repo.owner,
38 repo: context.repo.repo,
39 release_id: release.data.id
42 core.setFailed(`list release assets; ${error.name}; ${error.message}`)
45 const { ARCHIVE } = process.env
46 for (const release_asset of release_assets.data) {
47 if (release_asset.name === `${ ARCHIVE }`) {
49 await github.rest.repos.deleteReleaseAsset({
50 owner: context.repo.owner,
51 repo: context.repo.repo,
52 asset_id: release_asset.id
55 core.setFailed(`delete ${ ARCHIVE }; ${error.name}; ${error.message}`)
61 const asset_path = `./build/install/${ ARCHIVE }`
62 const fs = require("fs")
63 await github.rest.repos.uploadReleaseAsset({
64 owner: context.repo.owner,
65 repo: context.repo.repo,
66 release_id: release.data.id,
68 data: fs.readFileSync(asset_path)
71 core.setFailed(`upload ${ ARCHIVE }; ${error.name}; ${error.message}`)