| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- module.exports = async ({github, context, core}) => {
- try {
- await github.rest.git.updateRef({
- owner: context.repo.owner,
- repo: context.repo.repo,
- ref: 'tags/main-tot',
- sha: context.sha
- })
- } catch (error) {
- core.setFailed(`upload main-tot tag; ${error.name}; ${error.message}`)
- }
- let release
- try {
- release = await github.rest.repos.getReleaseByTag({
- owner: context.repo.owner,
- repo: context.repo.repo,
- tag: 'main-tot'
- })
- } catch (error) {
- core.setFailed(`get the main release; ${error.name}; ${error.message}`)
- }
- try {
- await github.rest.repos.updateRelease({
- owner: context.repo.owner,
- repo: context.repo.repo,
- release_id: release.data.id
- })
- } catch (error) {
- core.setFailed(`update the main release; ${error.name}; ${error.message}`)
- }
- let release_assets
- try {
- release_assets = await github.rest.repos.listReleaseAssets({
- owner: context.repo.owner,
- repo: context.repo.repo,
- release_id: release.data.id
- })
- } catch (error) {
- core.setFailed(`list release assets; ${error.name}; ${error.message}`)
- }
- const { ARCHIVE } = process.env
- for (const release_asset of release_assets.data) {
- if (release_asset.name === `${ ARCHIVE }`) {
- try {
- await github.rest.repos.deleteReleaseAsset({
- owner: context.repo.owner,
- repo: context.repo.repo,
- asset_id: release_asset.id
- })
- } catch (error) {
- core.setFailed(`delete ${ ARCHIVE }; ${error.name}; ${error.message}`)
- }
- }
- }
- try {
- const asset_path = `./build/install/${ ARCHIVE }`
- const fs = require("fs")
- await github.rest.repos.uploadReleaseAsset({
- owner: context.repo.owner,
- repo: context.repo.repo,
- release_id: release.data.id,
- name: `${ ARCHIVE }`,
- data: fs.readFileSync(asset_path)
- })
- } catch (error) {
- core.setFailed(`upload ${ ARCHIVE }; ${error.name}; ${error.message}`)
- }
- }
|