From 78f43b1e06c85fde5f2f56d78f1b388169d57021 Mon Sep 17 00:00:00 2001 From: filtered <176114999+webfiltered@users.noreply.github.com> Date: Mon, 20 Jan 2025 06:16:27 +1100 Subject: [PATCH] [Desktop] Add electron types update script (#2290) --- scripts/update-electron-types.js | 43 ++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 scripts/update-electron-types.js diff --git a/scripts/update-electron-types.js b/scripts/update-electron-types.js new file mode 100644 index 000000000..0ee57a37b --- /dev/null +++ b/scripts/update-electron-types.js @@ -0,0 +1,43 @@ +import { execSync } from 'child_process' +import { readFileSync } from 'fs' + +const packageName = '@comfyorg/comfyui-electron-types' +const description = 'desktop API types' + +try { + // Create a new branch + console.log('Creating new branch...') + const date = new Date() + const isoDate = date.toISOString().split('T')[0] + const timestamp = date.getTime() + const branchName = `update-electron-types-${isoDate}-${timestamp}` + execSync(`git checkout -b ${branchName} -t origin/main`, { stdio: 'inherit' }) + + // Update npm package to latest version + console.log(`Updating ${description}...`) + execSync(`npm install ${packageName}@latest`, { + stdio: 'inherit' + }) + + // Get the new version from package.json + const packageLock = JSON.parse(readFileSync('./package-lock.json', 'utf8')) + const newVersion = packageLock.packages[`node_modules/${packageName}`].version + + // Stage changes + const message = `[chore] Update electron-types to ${newVersion}` + execSync('git add package.json package-lock.json', { stdio: 'inherit' }) + execSync(`git commit -m "${message}"`, { stdio: 'inherit' }) + + // Create the PR + console.log('Creating PR...') + execSync( + `gh pr create --title "${message}" --label "dependencies" --body "Automated update of ${description} to version ${newVersion}."`, + { stdio: 'inherit' } + ) + + console.log( + `✅ Successfully created PR for ${description} update to ${newVersion}` + ) +} catch (error) { + console.error('❌ Error during update process:', error.message) +}