From f9498fb07ac463819e0c2d8ec9a943a3c55a26b1 Mon Sep 17 00:00:00 2001 From: Cosmo Myzrail Gorynych Date: Sun, 27 Mar 2022 14:37:35 +1200 Subject: [PATCH] :zap: Upload assets for Github Releases from within the regular gulp routine --- .gitlab-ci.yml | 5 +++-- gulpfile.js | 28 +++++++++++++++++++++++++--- package.json | 1 + 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 15123567d..904346516 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -60,7 +60,8 @@ pack-deploy-release: - npm i -g gulp-cli - gulp -f devSetup.gulpfile.js - gulp packages --buildNum=$CI_COMMIT_TAG - - gulp deployOnly --buildNum=$CI_COMMIT_TAG + - gulp deployItchOnly --buildNum=$CI_COMMIT_TAG + - gulp sendGithubDraft --buildNum=$CI_COMMIT_TAG only: - tags - master @@ -76,5 +77,5 @@ pack-deploy-nightly: - npm i -g gulp-cli - gulp -f devSetup.gulpfile.js - gulp packages --nightly --buildNum=$CI_COMMIT_SHORT_SHA - - gulp deployOnly --nightly --buildNum=$CI_COMMIT_SHORT_SHA + - gulp deployItchOnly --nightly --buildNum=$CI_COMMIT_SHORT_SHA diff --git a/gulpfile.js b/gulpfile.js index b22e39b58..23fcc5613 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -634,7 +634,7 @@ const packages = gulp.series([ zipPackages ]); -const deployOnly = () => { +const deployItchOnly = () => { console.log(`For channel ${channelPostfix}`); if (nightly) { return spawnise.spawn('./butler', ['push', `./build/ctjs - v${pack.version}/linux32`, `comigo/ct-nightly:linux32${channelPostfix ? '-' + channelPostfix : ''}`, '--userversion', buildNumber]) @@ -649,8 +649,29 @@ const deployOnly = () => { .then(() => spawnise.spawn('./butler', ['push', `./build/ctjs - v${pack.version}/win32`, `comigo/ct:win32${channelPostfix ? '-' + channelPostfix : ''}`, '--userversion', pack.version])) .then(() => spawnise.spawn('./butler', ['push', `./build/ctjs - v${pack.version}/win64`, `comigo/ct:win64${channelPostfix ? '-' + channelPostfix : ''}`, '--userversion', pack.version])); }; +const sendGithubDraft = async () => { + if (nightly) { + return; // Do not create github releases for nightlies + } + const readySteady = (await import('readysteady')).default; + const draftData = await readySteady({ + owner: 'ct-js', + repo: 'ct-js', + // eslint-disable-next-line id-blacklist + tag: `v${pack.version}`, + force: true, + files: [ + `./build/ctjs - v${pack.version}/ct.js v${pack.version} for linux32.zip`, + `./build/ctjs - v${pack.version}/ct.js v${pack.version} for linux64.zip`, + `./build/ctjs - v${pack.version}/ct.js v${pack.version} for osx64.zip`, + `./build/ctjs - v${pack.version}/ct.js v${pack.version} for win32.zip`, + `./build/ctjs - v${pack.version}/ct.js v${pack.version} for win64.zip` + ] + }); + console.log(draftData); +}; -const deploy = gulp.series([packages, deployOnly]); +const deploy = gulp.series([packages, gulp.parallel([sendGithubDraft, deployItchOnly])]); const launchDevMode = done => { watch(); @@ -674,7 +695,8 @@ exports.patronsCache = patronsCache; exports.docs = docs; exports.build = build; exports.deploy = deploy; -exports.deployOnly = deployOnly; +exports.deployItchOnly = deployItchOnly; +exports.sendGithubDraft = sendGithubDraft; exports.default = defaultTask; exports.dev = devNoNW; exports.bakeCompletions = bakeCompletions; diff --git a/package.json b/package.json index 88e923b41..6af63b3c1 100644 --- a/package.json +++ b/package.json @@ -50,6 +50,7 @@ "nw-builder": "^3.5.7", "pug": "^3.0.2", "pug-lint-config-clock": "^2.0.0", + "readysteady": "^1.1.4", "riot": "^3.13.2", "streamqueue": "^1.1.2", "stylint-stylish": "^2.0.0",