Merge pull request #48 from crazy-max/builder-name
Improve builder name generation
This commit is contained in:
		
						commit
						daf8c4fb8d
					
				| @ -41,14 +41,6 @@ describe('platforms', () => { | ||||
|   ); | ||||
| }); | ||||
| 
 | ||||
| describe('countBuilders', () => { | ||||
|   it('valid', async () => { | ||||
|     const countBuilders = await buildx.countBuilders(); | ||||
|     console.log(`countBuilders: ${countBuilders}`); | ||||
|     expect(countBuilders).toBeGreaterThan(0); | ||||
|   }, 100000); | ||||
| }); | ||||
| 
 | ||||
| describe('install', () => { | ||||
|   const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'setup-buildx-')); | ||||
|   it('acquires v0.2.2 version of buildx', async () => { | ||||
|  | ||||
							
								
								
									
										831
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										831
									
								
								dist/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							| @ -534,7 +534,7 @@ function run() { | ||||
|             } | ||||
|             const buildxVersion = yield buildx.getVersion(); | ||||
|             core.info(`📣 Buildx version: ${buildxVersion}`); | ||||
|             const builderName = inputs.driver == 'docker' ? 'default' : `builder-${process.env.GITHUB_JOB}-${(yield buildx.countBuilders()) + 1}`; | ||||
|             const builderName = inputs.driver == 'docker' ? 'default' : `builder-${__webpack_require__(840).v4()}`; | ||||
|             core.setOutput('name', builderName); | ||||
|             stateHelper.setBuilderName(builderName); | ||||
|             if (inputs.driver !== 'docker') { | ||||
| @ -598,6 +598,73 @@ else { | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 120: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _v = _interopRequireDefault(__webpack_require__(998)); | ||||
| 
 | ||||
| var _sha = _interopRequireDefault(__webpack_require__(274)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| const v5 = (0, _v.default)('v5', 0x50, _sha.default); | ||||
| var _default = v5; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 122: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _rng = _interopRequireDefault(__webpack_require__(807)); | ||||
| 
 | ||||
| var _stringify = _interopRequireDefault(__webpack_require__(950)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function v4(options, buf, offset) { | ||||
|   options = options || {}; | ||||
| 
 | ||||
|   const rnds = options.random || (options.rng || _rng.default)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
 | ||||
| 
 | ||||
| 
 | ||||
|   rnds[6] = rnds[6] & 0x0f | 0x40; | ||||
|   rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
 | ||||
| 
 | ||||
|   if (buf) { | ||||
|     offset = offset || 0; | ||||
| 
 | ||||
|     for (let i = 0; i < 16; ++i) { | ||||
|       buf[offset + i] = rnds[i]; | ||||
|     } | ||||
| 
 | ||||
|     return buf; | ||||
|   } | ||||
| 
 | ||||
|   return (0, _stringify.default)(rnds); | ||||
| } | ||||
| 
 | ||||
| var _default = v4; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 123: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
| 
 | ||||
| @ -1835,6 +1902,51 @@ if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) { | ||||
| exports.debug = debug; // for test
 | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 269: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
| 
 | ||||
| // Unique ID creation requires a high quality random # generator.  In node.js
 | ||||
| // this is pretty straight-forward - we use the crypto API.
 | ||||
| 
 | ||||
| var crypto = __webpack_require__(373); | ||||
| 
 | ||||
| module.exports = function nodeRNG() { | ||||
|   return crypto.randomBytes(16); | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 274: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _crypto = _interopRequireDefault(__webpack_require__(373)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function sha1(bytes) { | ||||
|   if (Array.isArray(bytes)) { | ||||
|     bytes = Buffer.from(bytes); | ||||
|   } else if (typeof bytes === 'string') { | ||||
|     bytes = Buffer.from(bytes, 'utf8'); | ||||
|   } | ||||
| 
 | ||||
|   return _crypto.default.createHash('sha1').update(bytes).digest(); | ||||
| } | ||||
| 
 | ||||
| var _default = sha1; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 278: | ||||
| @ -2006,7 +2118,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge | ||||
|     }); | ||||
| }; | ||||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||||
| exports.install = exports.platforms = exports.countBuilders = exports.isAvailable = exports.parseVersion = exports.getVersion = void 0; | ||||
| exports.install = exports.platforms = exports.isAvailable = exports.parseVersion = exports.getVersion = void 0; | ||||
| const fs = __importStar(__webpack_require__(747)); | ||||
| const path = __importStar(__webpack_require__(622)); | ||||
| const semver = __importStar(__webpack_require__(383)); | ||||
| @ -2048,17 +2160,6 @@ function isAvailable() { | ||||
|     }); | ||||
| } | ||||
| exports.isAvailable = isAvailable; | ||||
| function countBuilders() { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         return yield exec.exec(`docker`, ['buildx', 'ls'], true).then(res => { | ||||
|             if (res.stderr != '' && !res.success) { | ||||
|                 throw new Error(`Cannot list builders: ${res.stderr}`); | ||||
|             } | ||||
|             return (res.stdout.trim().split(`\n`).length - 1) / 2; | ||||
|         }); | ||||
|     }); | ||||
| } | ||||
| exports.countBuilders = countBuilders; | ||||
| function platforms() { | ||||
|     return __awaiter(this, void 0, void 0, function* () { | ||||
|         return yield exec.exec(`docker`, ['buildx', 'inspect'], true).then(res => { | ||||
| @ -2204,6 +2305,21 @@ const ltr = (version, range, options) => outside(version, range, '<', options) | ||||
| module.exports = ltr | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 332: | ||||
| /***/ (function(__unusedmodule, exports) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| var _default = '00000000-0000-0000-0000-000000000000'; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 351: | ||||
| @ -2370,6 +2486,29 @@ module.exports = { | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 409: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _v = _interopRequireDefault(__webpack_require__(998)); | ||||
| 
 | ||||
| var _md = _interopRequireDefault(__webpack_require__(569)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| const v3 = (0, _v.default)('v3', 0x30, _md.default); | ||||
| var _default = v3; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 413: | ||||
| @ -2960,6 +3099,42 @@ const coerce = (version, options) => { | ||||
| module.exports = coerce | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 468: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
| 
 | ||||
| var rng = __webpack_require__(269); | ||||
| var bytesToUuid = __webpack_require__(836); | ||||
| 
 | ||||
| function v4(options, buf, offset) { | ||||
|   var i = buf && offset || 0; | ||||
| 
 | ||||
|   if (typeof(options) == 'string') { | ||||
|     buf = options === 'binary' ? new Array(16) : null; | ||||
|     options = null; | ||||
|   } | ||||
|   options = options || {}; | ||||
| 
 | ||||
|   var rnds = options.random || (options.rng || rng)(); | ||||
| 
 | ||||
|   // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
 | ||||
|   rnds[6] = (rnds[6] & 0x0f) | 0x40; | ||||
|   rnds[8] = (rnds[8] & 0x3f) | 0x80; | ||||
| 
 | ||||
|   // Copy bytes to buffer, if provided
 | ||||
|   if (buf) { | ||||
|     for (var ii = 0; ii < 16; ++ii) { | ||||
|       buf[i + ii] = rnds[ii]; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   return buf || bytesToUuid(rnds); | ||||
| } | ||||
| 
 | ||||
| module.exports = v4; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 473: | ||||
| @ -5129,6 +5304,36 @@ function coerce (version, options) { | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 569: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _crypto = _interopRequireDefault(__webpack_require__(373)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function md5(bytes) { | ||||
|   if (Array.isArray(bytes)) { | ||||
|     bytes = Buffer.from(bytes); | ||||
|   } else if (typeof bytes === 'string') { | ||||
|     bytes = Buffer.from(bytes, 'utf8'); | ||||
|   } | ||||
| 
 | ||||
|   return _crypto.default.createHash('md5').update(bytes).digest(); | ||||
| } | ||||
| 
 | ||||
| var _default = md5; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 579: | ||||
| @ -5161,6 +5366,34 @@ const maxSatisfying = (versions, range, options) => { | ||||
| module.exports = maxSatisfying | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 595: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _validate = _interopRequireDefault(__webpack_require__(783)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function version(uuid) { | ||||
|   if (!(0, _validate.default)(uuid)) { | ||||
|     throw TypeError('Invalid UUID'); | ||||
|   } | ||||
| 
 | ||||
|   return parseInt(uuid.substr(14, 1), 16); | ||||
| } | ||||
| 
 | ||||
| var _default = version; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 601: | ||||
| @ -5197,6 +5430,120 @@ module.exports = require("path"); | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 628: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _rng = _interopRequireDefault(__webpack_require__(807)); | ||||
| 
 | ||||
| var _stringify = _interopRequireDefault(__webpack_require__(950)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| // **`v1()` - Generate time-based UUID**
 | ||||
| //
 | ||||
| // Inspired by https://github.com/LiosK/UUID.js
 | ||||
| // and http://docs.python.org/library/uuid.html
 | ||||
| let _nodeId; | ||||
| 
 | ||||
| let _clockseq; // Previous uuid creation time
 | ||||
| 
 | ||||
| 
 | ||||
| let _lastMSecs = 0; | ||||
| let _lastNSecs = 0; // See https://github.com/uuidjs/uuid for API details
 | ||||
| 
 | ||||
| function v1(options, buf, offset) { | ||||
|   let i = buf && offset || 0; | ||||
|   const b = buf || new Array(16); | ||||
|   options = options || {}; | ||||
|   let node = options.node || _nodeId; | ||||
|   let clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; // node and clockseq need to be initialized to random values if they're not
 | ||||
|   // specified.  We do this lazily to minimize issues related to insufficient
 | ||||
|   // system entropy.  See #189
 | ||||
| 
 | ||||
|   if (node == null || clockseq == null) { | ||||
|     const seedBytes = options.random || (options.rng || _rng.default)(); | ||||
| 
 | ||||
|     if (node == null) { | ||||
|       // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
 | ||||
|       node = _nodeId = [seedBytes[0] | 0x01, seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]]; | ||||
|     } | ||||
| 
 | ||||
|     if (clockseq == null) { | ||||
|       // Per 4.2.2, randomize (14 bit) clockseq
 | ||||
|       clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff; | ||||
|     } | ||||
|   } // UUID timestamps are 100 nano-second units since the Gregorian epoch,
 | ||||
|   // (1582-10-15 00:00).  JSNumbers aren't precise enough for this, so
 | ||||
|   // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
 | ||||
|   // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
 | ||||
| 
 | ||||
| 
 | ||||
|   let msecs = options.msecs !== undefined ? options.msecs : Date.now(); // Per 4.2.1.2, use count of uuid's generated during the current clock
 | ||||
|   // cycle to simulate higher resolution clock
 | ||||
| 
 | ||||
|   let nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; // Time since last uuid creation (in msecs)
 | ||||
| 
 | ||||
|   const dt = msecs - _lastMSecs + (nsecs - _lastNSecs) / 10000; // Per 4.2.1.2, Bump clockseq on clock regression
 | ||||
| 
 | ||||
|   if (dt < 0 && options.clockseq === undefined) { | ||||
|     clockseq = clockseq + 1 & 0x3fff; | ||||
|   } // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
 | ||||
|   // time interval
 | ||||
| 
 | ||||
| 
 | ||||
|   if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { | ||||
|     nsecs = 0; | ||||
|   } // Per 4.2.1.2 Throw error if too many uuids are requested
 | ||||
| 
 | ||||
| 
 | ||||
|   if (nsecs >= 10000) { | ||||
|     throw new Error("uuid.v1(): Can't create more than 10M uuids/sec"); | ||||
|   } | ||||
| 
 | ||||
|   _lastMSecs = msecs; | ||||
|   _lastNSecs = nsecs; | ||||
|   _clockseq = clockseq; // Per 4.1.4 - Convert from unix epoch to Gregorian epoch
 | ||||
| 
 | ||||
|   msecs += 12219292800000; // `time_low`
 | ||||
| 
 | ||||
|   const tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; | ||||
|   b[i++] = tl >>> 24 & 0xff; | ||||
|   b[i++] = tl >>> 16 & 0xff; | ||||
|   b[i++] = tl >>> 8 & 0xff; | ||||
|   b[i++] = tl & 0xff; // `time_mid`
 | ||||
| 
 | ||||
|   const tmh = msecs / 0x100000000 * 10000 & 0xfffffff; | ||||
|   b[i++] = tmh >>> 8 & 0xff; | ||||
|   b[i++] = tmh & 0xff; // `time_high_and_version`
 | ||||
| 
 | ||||
|   b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
 | ||||
| 
 | ||||
|   b[i++] = tmh >>> 16 & 0xff; // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
 | ||||
| 
 | ||||
|   b[i++] = clockseq >>> 8 | 0x80; // `clock_seq_low`
 | ||||
| 
 | ||||
|   b[i++] = clockseq & 0xff; // `node`
 | ||||
| 
 | ||||
|   for (let n = 0; n < 6; ++n) { | ||||
|     b[i + n] = node[n]; | ||||
|   } | ||||
| 
 | ||||
|   return buf || (0, _stringify.default)(b); | ||||
| } | ||||
| 
 | ||||
| var _default = v1; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 631: | ||||
| /***/ (function(module) { | ||||
| 
 | ||||
| @ -5718,39 +6065,6 @@ const toComparators = (range, options) => | ||||
| module.exports = toComparators | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 707: | ||||
| /***/ (function(module) { | ||||
| 
 | ||||
| /** | ||||
|  * Convert array of 16 byte values to UUID string format of the form: | ||||
|  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||||
|  */ | ||||
| var byteToHex = []; | ||||
| for (var i = 0; i < 256; ++i) { | ||||
|   byteToHex[i] = (i + 0x100).toString(16).substr(1); | ||||
| } | ||||
| 
 | ||||
| function bytesToUuid(buf, offset) { | ||||
|   var i = offset || 0; | ||||
|   var bth = byteToHex; | ||||
|   // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
 | ||||
|   return ([ | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]] | ||||
|   ]).join(''); | ||||
| } | ||||
| 
 | ||||
| module.exports = bytesToUuid; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 717: | ||||
| @ -6147,6 +6461,58 @@ const validRange = (range, options) => { | ||||
| module.exports = validRange | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 746: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _validate = _interopRequireDefault(__webpack_require__(783)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function parse(uuid) { | ||||
|   if (!(0, _validate.default)(uuid)) { | ||||
|     throw TypeError('Invalid UUID'); | ||||
|   } | ||||
| 
 | ||||
|   let v; | ||||
|   const arr = new Uint8Array(16); // Parse ########-....-....-....-............
 | ||||
| 
 | ||||
|   arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24; | ||||
|   arr[1] = v >>> 16 & 0xff; | ||||
|   arr[2] = v >>> 8 & 0xff; | ||||
|   arr[3] = v & 0xff; // Parse ........-####-....-....-............
 | ||||
| 
 | ||||
|   arr[4] = (v = parseInt(uuid.slice(9, 13), 16)) >>> 8; | ||||
|   arr[5] = v & 0xff; // Parse ........-....-####-....-............
 | ||||
| 
 | ||||
|   arr[6] = (v = parseInt(uuid.slice(14, 18), 16)) >>> 8; | ||||
|   arr[7] = v & 0xff; // Parse ........-....-....-####-............
 | ||||
| 
 | ||||
|   arr[8] = (v = parseInt(uuid.slice(19, 23), 16)) >>> 8; | ||||
|   arr[9] = v & 0xff; // Parse ........-....-....-....-############
 | ||||
|   // (Use "/" to avoid 32-bit truncation when bit-shifting high-order bytes)
 | ||||
| 
 | ||||
|   arr[10] = (v = parseInt(uuid.slice(24, 36), 16)) / 0x10000000000 & 0xff; | ||||
|   arr[11] = v / 0x100000000 & 0xff; | ||||
|   arr[12] = v >>> 24 & 0xff; | ||||
|   arr[13] = v >>> 16 & 0xff; | ||||
|   arr[14] = v >>> 8 & 0xff; | ||||
|   arr[15] = v & 0xff; | ||||
|   return arr; | ||||
| } | ||||
| 
 | ||||
| var _default = parse; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 747: | ||||
| @ -6218,6 +6584,30 @@ exports.exec = (command, args = [], silent) => __awaiter(void 0, void 0, void 0, | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 783: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _regex = _interopRequireDefault(__webpack_require__(814)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function validate(uuid) { | ||||
|   return typeof uuid === 'string' && _regex.default.test(uuid); | ||||
| } | ||||
| 
 | ||||
| var _default = validate; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 784: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| @ -6253,7 +6643,7 @@ const httpm = __importStar(__webpack_require__(936)); | ||||
| const semver = __importStar(__webpack_require__(562)); | ||||
| const stream = __importStar(__webpack_require__(413)); | ||||
| const util = __importStar(__webpack_require__(669)); | ||||
| const v4_1 = __importDefault(__webpack_require__(824)); | ||||
| const v4_1 = __importDefault(__webpack_require__(468)); | ||||
| const exec_1 = __webpack_require__(514); | ||||
| const assert_1 = __webpack_require__(357); | ||||
| const retry_helper_1 = __webpack_require__(279); | ||||
| @ -6857,6 +7247,52 @@ const compareLoose = (a, b) => compare(a, b, true) | ||||
| module.exports = compareLoose | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 807: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = rng; | ||||
| 
 | ||||
| var _crypto = _interopRequireDefault(__webpack_require__(373)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| const rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate
 | ||||
| 
 | ||||
| let poolPtr = rnds8Pool.length; | ||||
| 
 | ||||
| function rng() { | ||||
|   if (poolPtr > rnds8Pool.length - 16) { | ||||
|     _crypto.default.randomFillSync(rnds8Pool); | ||||
| 
 | ||||
|     poolPtr = 0; | ||||
|   } | ||||
| 
 | ||||
|   return rnds8Pool.slice(poolPtr, poolPtr += 16); | ||||
| } | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 814: | ||||
| /***/ (function(__unusedmodule, exports) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| var _default = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 818: | ||||
| @ -6864,42 +7300,6 @@ module.exports = compareLoose | ||||
| 
 | ||||
| module.exports = require("tls"); | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 824: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
| 
 | ||||
| var rng = __webpack_require__(859); | ||||
| var bytesToUuid = __webpack_require__(707); | ||||
| 
 | ||||
| function v4(options, buf, offset) { | ||||
|   var i = buf && offset || 0; | ||||
| 
 | ||||
|   if (typeof(options) == 'string') { | ||||
|     buf = options === 'binary' ? new Array(16) : null; | ||||
|     options = null; | ||||
|   } | ||||
|   options = options || {}; | ||||
| 
 | ||||
|   var rnds = options.random || (options.rng || rng)(); | ||||
| 
 | ||||
|   // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
 | ||||
|   rnds[6] = (rnds[6] & 0x0f) | 0x40; | ||||
|   rnds[8] = (rnds[8] & 0x3f) | 0x80; | ||||
| 
 | ||||
|   // Copy bytes to buffer, if provided
 | ||||
|   if (buf) { | ||||
|     for (var ii = 0; ii < 16; ++ii) { | ||||
|       buf[i + ii] = rnds[ii]; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   return buf || bytesToUuid(rnds); | ||||
| } | ||||
| 
 | ||||
| module.exports = v4; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 828: | ||||
| @ -7448,6 +7848,125 @@ const minSatisfying = (versions, range, options) => { | ||||
| module.exports = minSatisfying | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 836: | ||||
| /***/ (function(module) { | ||||
| 
 | ||||
| /** | ||||
|  * Convert array of 16 byte values to UUID string format of the form: | ||||
|  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||||
|  */ | ||||
| var byteToHex = []; | ||||
| for (var i = 0; i < 256; ++i) { | ||||
|   byteToHex[i] = (i + 0x100).toString(16).substr(1); | ||||
| } | ||||
| 
 | ||||
| function bytesToUuid(buf, offset) { | ||||
|   var i = offset || 0; | ||||
|   var bth = byteToHex; | ||||
|   // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
 | ||||
|   return ([ | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], '-', | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]], | ||||
|     bth[buf[i++]], bth[buf[i++]] | ||||
|   ]).join(''); | ||||
| } | ||||
| 
 | ||||
| module.exports = bytesToUuid; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 840: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| Object.defineProperty(exports, "v1", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _v.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "v3", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _v2.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "v4", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _v3.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "v5", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _v4.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "NIL", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _nil.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "version", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _version.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "validate", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _validate.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "stringify", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _stringify.default; | ||||
|   } | ||||
| }); | ||||
| Object.defineProperty(exports, "parse", { | ||||
|   enumerable: true, | ||||
|   get: function () { | ||||
|     return _parse.default; | ||||
|   } | ||||
| }); | ||||
| 
 | ||||
| var _v = _interopRequireDefault(__webpack_require__(628)); | ||||
| 
 | ||||
| var _v2 = _interopRequireDefault(__webpack_require__(409)); | ||||
| 
 | ||||
| var _v3 = _interopRequireDefault(__webpack_require__(122)); | ||||
| 
 | ||||
| var _v4 = _interopRequireDefault(__webpack_require__(120)); | ||||
| 
 | ||||
| var _nil = _interopRequireDefault(__webpack_require__(332)); | ||||
| 
 | ||||
| var _version = _interopRequireDefault(__webpack_require__(595)); | ||||
| 
 | ||||
| var _validate = _interopRequireDefault(__webpack_require__(783)); | ||||
| 
 | ||||
| var _stringify = _interopRequireDefault(__webpack_require__(950)); | ||||
| 
 | ||||
| var _parse = _interopRequireDefault(__webpack_require__(746)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 842: | ||||
| @ -7537,21 +8056,6 @@ const clean = (version, options) => { | ||||
| module.exports = clean | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 859: | ||||
| /***/ (function(module, __unusedexports, __webpack_require__) { | ||||
| 
 | ||||
| // Unique ID creation requires a high quality random # generator.  In node.js
 | ||||
| // this is pretty straight-forward - we use the crypto API.
 | ||||
| 
 | ||||
| var crypto = __webpack_require__(373); | ||||
| 
 | ||||
| module.exports = function nodeRNG() { | ||||
|   return crypto.randomBytes(16); | ||||
| }; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 863: | ||||
| @ -8391,6 +8895,52 @@ class HttpClient { | ||||
| exports.HttpClient = HttpClient; | ||||
| 
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 950: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = void 0; | ||||
| 
 | ||||
| var _validate = _interopRequireDefault(__webpack_require__(783)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| /** | ||||
|  * Convert array of 16 byte values to UUID string format of the form: | ||||
|  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX | ||||
|  */ | ||||
| const byteToHex = []; | ||||
| 
 | ||||
| for (let i = 0; i < 256; ++i) { | ||||
|   byteToHex.push((i + 0x100).toString(16).substr(1)); | ||||
| } | ||||
| 
 | ||||
| function stringify(arr, offset = 0) { | ||||
|   // Note: Be careful editing this code!  It's been tuned for performance
 | ||||
|   // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
 | ||||
|   const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID.  If this throws, it's likely due to one
 | ||||
|   // of the following:
 | ||||
|   // - One or more input array values don't map to a hex octet (leading to
 | ||||
|   // "undefined" in the uuid)
 | ||||
|   // - Invalid input values for the RFC `version` or `variant` fields
 | ||||
| 
 | ||||
|   if (!(0, _validate.default)(uuid)) { | ||||
|     throw TypeError('Stringified UUID is invalid'); | ||||
|   } | ||||
| 
 | ||||
|   return uuid; | ||||
| } | ||||
| 
 | ||||
| var _default = stringify; | ||||
| exports.default = _default; | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 962: | ||||
| @ -8593,6 +9143,91 @@ function isUnixExecutable(stats) { | ||||
| } | ||||
| //# sourceMappingURL=io-util.js.map
 | ||||
| 
 | ||||
| /***/ }), | ||||
| 
 | ||||
| /***/ 998: | ||||
| /***/ (function(__unusedmodule, exports, __webpack_require__) { | ||||
| 
 | ||||
| "use strict"; | ||||
| 
 | ||||
| 
 | ||||
| Object.defineProperty(exports, "__esModule", { | ||||
|   value: true | ||||
| }); | ||||
| exports.default = _default; | ||||
| exports.URL = exports.DNS = void 0; | ||||
| 
 | ||||
| var _stringify = _interopRequireDefault(__webpack_require__(950)); | ||||
| 
 | ||||
| var _parse = _interopRequireDefault(__webpack_require__(746)); | ||||
| 
 | ||||
| function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||||
| 
 | ||||
| function stringToBytes(str) { | ||||
|   str = unescape(encodeURIComponent(str)); // UTF8 escape
 | ||||
| 
 | ||||
|   const bytes = []; | ||||
| 
 | ||||
|   for (let i = 0; i < str.length; ++i) { | ||||
|     bytes.push(str.charCodeAt(i)); | ||||
|   } | ||||
| 
 | ||||
|   return bytes; | ||||
| } | ||||
| 
 | ||||
| const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'; | ||||
| exports.DNS = DNS; | ||||
| const URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8'; | ||||
| exports.URL = URL; | ||||
| 
 | ||||
| function _default(name, version, hashfunc) { | ||||
|   function generateUUID(value, namespace, buf, offset) { | ||||
|     if (typeof value === 'string') { | ||||
|       value = stringToBytes(value); | ||||
|     } | ||||
| 
 | ||||
|     if (typeof namespace === 'string') { | ||||
|       namespace = (0, _parse.default)(namespace); | ||||
|     } | ||||
| 
 | ||||
|     if (namespace.length !== 16) { | ||||
|       throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)'); | ||||
|     } // Compute hash of namespace and value, Per 4.3
 | ||||
|     // Future: Use spread syntax when supported on all platforms, e.g. `bytes =
 | ||||
|     // hashfunc([...namespace, ... value])`
 | ||||
| 
 | ||||
| 
 | ||||
|     let bytes = new Uint8Array(16 + value.length); | ||||
|     bytes.set(namespace); | ||||
|     bytes.set(value, namespace.length); | ||||
|     bytes = hashfunc(bytes); | ||||
|     bytes[6] = bytes[6] & 0x0f | version; | ||||
|     bytes[8] = bytes[8] & 0x3f | 0x80; | ||||
| 
 | ||||
|     if (buf) { | ||||
|       offset = offset || 0; | ||||
| 
 | ||||
|       for (let i = 0; i < 16; ++i) { | ||||
|         buf[offset + i] = bytes[i]; | ||||
|       } | ||||
| 
 | ||||
|       return buf; | ||||
|     } | ||||
| 
 | ||||
|     return (0, _stringify.default)(bytes); | ||||
|   } // Function#name is not settable on some platforms (#270)
 | ||||
| 
 | ||||
| 
 | ||||
|   try { | ||||
|     generateUUID.name = name; // eslint-disable-next-line no-empty
 | ||||
|   } catch (err) {} // For CommonJS default export support
 | ||||
| 
 | ||||
| 
 | ||||
|   generateUUID.DNS = DNS; | ||||
|   generateUUID.URL = URL; | ||||
|   return generateUUID; | ||||
| } | ||||
| 
 | ||||
| /***/ }) | ||||
| 
 | ||||
| /******/ }); | ||||
| @ -31,7 +31,8 @@ | ||||
|     "@actions/exec": "^1.0.4", | ||||
|     "@actions/http-client": "^1.0.9", | ||||
|     "@actions/tool-cache": "^1.6.1", | ||||
|     "semver": "^7.3.4" | ||||
|     "semver": "^7.3.4", | ||||
|     "uuid": "^8.3.2" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@types/jest": "^26.0.3", | ||||
|  | ||||
| @ -34,15 +34,6 @@ export async function isAvailable(): Promise<Boolean> { | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| export async function countBuilders(): Promise<number> { | ||||
|   return await exec.exec(`docker`, ['buildx', 'ls'], true).then(res => { | ||||
|     if (res.stderr != '' && !res.success) { | ||||
|       throw new Error(`Cannot list builders: ${res.stderr}`); | ||||
|     } | ||||
|     return (res.stdout.trim().split(`\n`).length - 1) / 2; | ||||
|   }); | ||||
| } | ||||
| 
 | ||||
| export async function platforms(): Promise<String | undefined> { | ||||
|   return await exec.exec(`docker`, ['buildx', 'inspect'], true).then(res => { | ||||
|     if (res.stderr != '' && !res.success) { | ||||
|  | ||||
| @ -27,8 +27,7 @@ async function run(): Promise<void> { | ||||
|     const buildxVersion = await buildx.getVersion(); | ||||
|     core.info(`📣 Buildx version: ${buildxVersion}`); | ||||
| 
 | ||||
|     const builderName: string = | ||||
|       inputs.driver == 'docker' ? 'default' : `builder-${process.env.GITHUB_JOB}-${(await buildx.countBuilders()) + 1}`; | ||||
|     const builderName: string = inputs.driver == 'docker' ? 'default' : `builder-${require('uuid').v4()}`; | ||||
|     core.setOutput('name', builderName); | ||||
|     stateHelper.setBuilderName(builderName); | ||||
| 
 | ||||
|  | ||||
| @ -3611,6 +3611,11 @@ uuid@^8.2.0: | ||||
|   resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.0.tgz#ab738085ca22dc9a8c92725e459b1d507df5d6ea" | ||||
|   integrity sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ== | ||||
| 
 | ||||
| uuid@^8.3.2: | ||||
|   version "8.3.2" | ||||
|   resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" | ||||
|   integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== | ||||
| 
 | ||||
| v8-to-istanbul@^4.1.3: | ||||
|   version "4.1.4" | ||||
|   resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz#b97936f21c0e2d9996d4985e5c5156e9d4e49cd6" | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 CrazyMax
						CrazyMax