You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailchat/client/mobile/scripts/notify-links.js

57 lines
1.8 KiB
JavaScript

const tailchat = require('tailchat-client-sdk');
const fs = require('fs-extra');
const os = require('os');
const path = require('path');
// reference: https://docs.codemagic.io/yaml-basic-configuration/environment-variables/#artifact-links
const artifactLinks = process.env['CM_ARTIFACT_LINKS'];
const tailchatSubscribeId = process.env['TAILCHAT_SUBSCRIBE_ID'];
const branch = process.env['CM_BRANCH'];
console.log('artifactLinks:', artifactLinks);
if (tailchatSubscribeId) {
try {
if (fs.existsSync(path.join(os.homedir(), './SUCCESS'))) {
const links = JSON.parse(artifactLinks) ?? [];
const text =
'[b]App Building Success:[/b]\n' +
links
.map((link) => {
const { name, url, md5, versionName } = link;
const pagesUrl =
branch === 'master'
? 'https://tailchat-app.msgbyte.com/app-release.apk'
: `https://${branch}.tailchat.pages.dev/app-release.apk`;
return (
`${name}\n` +
`version: ${versionName}(${md5})\n` +
`[url=${pagesUrl}]Download from Pages[/url] or [url=${url}]Download from CI[/url]`
);
})
.join('\n=========\n');
tailchat.sendSimpleNotify(
'https://tailchat-nightly.moonrailgun.com',
tailchatSubscribeId,
text
);
} else {
const text =
'[b]App Building Failed:[/b]\n' +
`[url=https://codemagic.io/app/${process.env['CM_PROJECT_ID']}/build/${process.env['CM_BUILD_ID']}]View Detail[/url]`;
tailchat.sendSimpleNotify(
'https://tailchat-nightly.moonrailgun.com',
tailchatSubscribeId,
text
);
}
} catch (e) {
console.error(e);
}
} else {
console.error('Not found tailchatSubscribeId');
}