forked from electron/electron
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
build: auto-push patch file changes (electron#26235)
* build: auto-push patch file changes * chore: change patch for testing purposes * build: remove stray log * build: push as electron bot * build: suppress all output of the push-patch script * chore: fix linting
- Loading branch information
1 parent
914aed6
commit 07ee75b
Showing
5 changed files
with
187 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -265,16 +265,25 @@ step-gclient-sync: &step-gclient-sync | |
if ! git diff-index --quiet HEAD --; then | ||
# There are changes to the patches. Make a git commit with the updated patches | ||
git add patches | ||
GIT_COMMITTER_NAME="Electron Bot" GIT_COMMITTER_EMAIL="[email protected]" git commit -m "update patches" --author="Electron Bot <[email protected]>" | ||
GIT_COMMITTER_NAME="Electron Bot" GIT_COMMITTER_EMAIL="[email protected]" git commit -m "update patches" --author="Electron Bot <[email protected]>" | ||
# Export it | ||
mkdir -p ../../patches | ||
git format-patch -1 --stdout --keep-subject --no-stat --full-index > ../../patches/update-patches.patch | ||
echo | ||
echo "======================================================================" | ||
echo "There were changes to the patches when applying." | ||
echo "Check the CI artifacts for a patch you can apply to fix it." | ||
echo "======================================================================" | ||
exit 1 | ||
if (node ./script/push-patch.js 2> /dev/null > /dev/null); then | ||
echo | ||
echo "======================================================================" | ||
echo "Changes to the patches when applying, we have auto-pushed the diff to the current branch" | ||
echo "A new CI job will kick off shortly" | ||
echo "======================================================================" | ||
exit 1 | ||
else | ||
echo | ||
echo "======================================================================" | ||
echo "There were changes to the patches when applying." | ||
echo "Check the CI artifacts for a patch you can apply to fix it." | ||
echo "======================================================================" | ||
exit 1 | ||
fi | ||
fi | ||
fi | ||
fi | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
const { createAppAuth } = require('@octokit/auth-app'); | ||
const cp = require('child_process'); | ||
|
||
if (!process.env.CIRCLE_BRANCH) { | ||
console.error('Not building for a specific branch, can\'t autopush a patch'); | ||
process.exit(1); | ||
} | ||
|
||
if (process.env.CIRCLE_PR_NUMBER) { | ||
console.error('Building for a forked PR, can\'t autopush a patch'); | ||
process.exit(1); | ||
} | ||
|
||
const auth = createAppAuth({ | ||
appId: process.env.PATCH_UP_APP_ID, | ||
privateKey: Buffer.from(process.env.PATCH_UP_PRIVATE_KEY, 'base64').toString('utf8'), | ||
installationId: process.env.PATCH_UP_INSTALLATION_ID, | ||
clientId: process.env.PATCH_UP_CLIENT_ID, | ||
clientSecret: process.env.PATCH_UP_CLIENT_SECRET | ||
}); | ||
|
||
async function main () { | ||
const installationAuth = await auth({ type: 'installation' }); | ||
const remoteURL = `https://x-access-token:${installationAuth.token}@github.com/electron/electron.git`; | ||
// NEVER LOG THE OUTPUT OF THIS COMMAND | ||
// GIT LEAKS THE ACCESS CREDENTIALS IN CONSOLE LOGS | ||
const { status } = cp.spawnSync('git', ['push', '--set-upstream', remoteURL], { | ||
stdio: 'ignore' | ||
}); | ||
if (status !== 0) { | ||
console.error('Failed to push to target branch'); | ||
process.exit(1); | ||
} | ||
} | ||
|
||
if (process.mainModule === module) { | ||
main().catch((err) => { | ||
console.error(err); | ||
process.exit(1); | ||
}); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -70,6 +70,20 @@ | |
"@nodelib/fs.scandir" "2.1.3" | ||
fastq "^1.6.0" | ||
|
||
"@octokit/auth-app@^2.10.0": | ||
version "2.10.0" | ||
resolved "https://registry.yarnpkg.com/@octokit/auth-app/-/auth-app-2.10.0.tgz#ad79369fca1cc3035859f797310d5e81cc6e49c4" | ||
integrity sha512-mKFU7O5wI651iWgecs4fmJ2aLqOM3sWD1FJsUTm7nx21I4ePDhS+rGQmS5TZk5yz75Va6wEXesxUNFzuqCbP2A== | ||
dependencies: | ||
"@octokit/request" "^5.3.0" | ||
"@octokit/request-error" "^2.0.0" | ||
"@octokit/types" "^5.0.0" | ||
"@types/lru-cache" "^5.1.0" | ||
deprecation "^2.3.1" | ||
lru-cache "^6.0.0" | ||
universal-github-app-jwt "^1.0.1" | ||
universal-user-agent "^6.0.0" | ||
|
||
"@octokit/auth-token@^2.4.0": | ||
version "2.4.2" | ||
resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.4.2.tgz#10d0ae979b100fa6b72fa0e8e63e27e6d0dbff8a" | ||
|
@@ -300,11 +314,23 @@ | |
resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" | ||
integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= | ||
|
||
"@types/jsonwebtoken@^8.3.3": | ||
version "8.5.0" | ||
resolved "https://registry.yarnpkg.com/@types/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz#2531d5e300803aa63279b232c014acf780c981c5" | ||
integrity sha512-9bVao7LvyorRGZCw0VmH/dr7Og+NdjYSsKAxB43OQoComFbBgsEpoR9JW6+qSq/ogwVBg8GI2MfAlk4SYI4OLg== | ||
dependencies: | ||
"@types/node" "*" | ||
|
||
"@types/linkify-it@*": | ||
version "2.1.0" | ||
resolved "https://registry.yarnpkg.com/@types/linkify-it/-/linkify-it-2.1.0.tgz#ea3dd64c4805597311790b61e872cbd1ed2cd806" | ||
integrity sha512-Q7DYAOi9O/+cLLhdaSvKdaumWyHbm7HAk/bFwwyTuU0arR5yyCeW5GOoqt4tJTpDRxhpx9Q8kQL6vMpuw9hDSw== | ||
|
||
"@types/lru-cache@^5.1.0": | ||
version "5.1.0" | ||
resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.0.tgz#57f228f2b80c046b4a1bd5cac031f81f207f4f03" | ||
integrity sha512-RaE0B+14ToE4l6UqdarKPnXwVDuigfFv+5j9Dze/Nqr23yyuqdNvzcZi3xB+3Agvi5R4EOgAksfv3lXX4vBt9w== | ||
|
||
"@types/markdown-it@^0.0.9": | ||
version "0.0.9" | ||
resolved "https://registry.yarnpkg.com/@types/markdown-it/-/markdown-it-0.0.9.tgz#a5d552f95216c478e0a27a5acc1b28dcffd989ce" | ||
|
@@ -1243,6 +1269,11 @@ browserify-zlib@^0.2.0: | |
dependencies: | ||
pako "~1.0.5" | ||
|
||
[email protected]: | ||
version "1.0.1" | ||
resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" | ||
integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= | ||
|
||
buffer-from@^1.0.0, buffer-from@^1.1.0: | ||
version "1.1.1" | ||
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" | ||
|
@@ -2143,6 +2174,13 @@ ecc-jsbn@~0.1.1: | |
jsbn "~0.1.0" | ||
safer-buffer "^2.1.0" | ||
|
||
[email protected]: | ||
version "1.0.11" | ||
resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" | ||
integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== | ||
dependencies: | ||
safe-buffer "^5.0.1" | ||
|
||
[email protected]: | ||
version "1.1.1" | ||
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" | ||
|
@@ -4193,6 +4231,22 @@ jsonfile@^6.0.1: | |
optionalDependencies: | ||
graceful-fs "^4.1.6" | ||
|
||
jsonwebtoken@^8.5.1: | ||
version "8.5.1" | ||
resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" | ||
integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== | ||
dependencies: | ||
jws "^3.2.2" | ||
lodash.includes "^4.3.0" | ||
lodash.isboolean "^3.0.3" | ||
lodash.isinteger "^4.0.4" | ||
lodash.isnumber "^3.0.3" | ||
lodash.isplainobject "^4.0.6" | ||
lodash.isstring "^4.0.1" | ||
lodash.once "^4.0.0" | ||
ms "^2.1.1" | ||
semver "^5.6.0" | ||
|
||
jsprim@^1.2.2: | ||
version "1.4.1" | ||
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" | ||
|
@@ -4211,6 +4265,23 @@ jsx-ast-utils@^2.1.0: | |
array-includes "^3.1.1" | ||
object.assign "^4.1.0" | ||
|
||
jwa@^1.4.1: | ||
version "1.4.1" | ||
resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" | ||
integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== | ||
dependencies: | ||
buffer-equal-constant-time "1.0.1" | ||
ecdsa-sig-formatter "1.0.11" | ||
safe-buffer "^5.0.1" | ||
|
||
jws@^3.2.2: | ||
version "3.2.2" | ||
resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" | ||
integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== | ||
dependencies: | ||
jwa "^1.4.1" | ||
safe-buffer "^5.0.1" | ||
|
||
kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: | ||
version "3.2.2" | ||
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" | ||
|
@@ -4415,6 +4486,41 @@ lodash.flatten@^4.4.0: | |
resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" | ||
integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= | ||
|
||
lodash.includes@^4.3.0: | ||
version "4.3.0" | ||
resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" | ||
integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= | ||
|
||
lodash.isboolean@^3.0.3: | ||
version "3.0.3" | ||
resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" | ||
integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= | ||
|
||
lodash.isinteger@^4.0.4: | ||
version "4.0.4" | ||
resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" | ||
integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= | ||
|
||
lodash.isnumber@^3.0.3: | ||
version "3.0.3" | ||
resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" | ||
integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= | ||
|
||
lodash.isplainobject@^4.0.6: | ||
version "4.0.6" | ||
resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" | ||
integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= | ||
|
||
lodash.isstring@^4.0.1: | ||
version "4.0.1" | ||
resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" | ||
integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= | ||
|
||
lodash.once@^4.0.0: | ||
version "4.1.1" | ||
resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" | ||
integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= | ||
|
||
lodash.range@^3.2.0: | ||
version "3.2.0" | ||
resolved "https://registry.yarnpkg.com/lodash.range/-/lodash.range-3.2.0.tgz#f461e588f66683f7eadeade513e38a69a565a15d" | ||
|
@@ -4488,6 +4594,13 @@ lru-cache@^5.1.1: | |
dependencies: | ||
yallist "^3.0.2" | ||
|
||
lru-cache@^6.0.0: | ||
version "6.0.0" | ||
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" | ||
integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== | ||
dependencies: | ||
yallist "^4.0.0" | ||
|
||
make-dir@^2.0.0: | ||
version "2.1.0" | ||
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" | ||
|
@@ -7927,6 +8040,14 @@ unist-util-visit@^1.0.0, unist-util-visit@^1.1.0, unist-util-visit@^1.1.1, unist | |
dependencies: | ||
unist-util-visit-parents "^2.0.0" | ||
|
||
universal-github-app-jwt@^1.0.1: | ||
version "1.1.0" | ||
resolved "https://registry.yarnpkg.com/universal-github-app-jwt/-/universal-github-app-jwt-1.1.0.tgz#0abaa876101cdf1d3e4c546be2768841c0c1b514" | ||
integrity sha512-3b+ocAjjz4JTyqaOT+NNBd5BtTuvJTxWElIoeHSVelUV9J3Jp7avmQTdLKCaoqi/5Ox2o/q+VK19TJ233rVXVQ== | ||
dependencies: | ||
"@types/jsonwebtoken" "^8.3.3" | ||
jsonwebtoken "^8.5.1" | ||
|
||
universal-user-agent@^6.0.0: | ||
version "6.0.0" | ||
resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" | ||
|
@@ -8338,6 +8459,11 @@ yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3: | |
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" | ||
integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== | ||
|
||
yallist@^4.0.0: | ||
version "4.0.0" | ||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" | ||
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== | ||
|
||
yaml@^1.7.2: | ||
version "1.10.0" | ||
resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" | ||
|