mirror of
				https://github.com/actions/download-artifact.git
				synced 2025-10-31 16:33:40 +00:00 
			
		
		
		
	support globbing artifact list & merging download directory
This commit is contained in:
		
							parent
							
								
									1bd0606e08
								
							
						
					
					
						commit
						c4c6db724f
					
				
							
								
								
									
										16
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								README.md
									
									
									
									
									
								
							| @ -46,13 +46,25 @@ For more information, see the [`@actions/artifact`](https://github.com/actions/t | |||||||
| - uses: actions/download-artifact@v4 | - uses: actions/download-artifact@v4 | ||||||
|   with: |   with: | ||||||
|     # Name of the artifact to download. |     # Name of the artifact to download. | ||||||
|     # Optional. If unspecified, all artifacts for the run are downloaded. |     # If unspecified, all artifacts for the run are downloaded. | ||||||
|  |     # Optional. | ||||||
|     name: |     name: | ||||||
| 
 | 
 | ||||||
|     # Destination path. Supports basic tilde expansion. |     # Destination path. Supports basic tilde expansion. | ||||||
|     # Optional. Defaults is $GITHUB_WORKSPACE |     # Optional. Default is $GITHUB_WORKSPACE | ||||||
|     path: |     path: | ||||||
| 
 | 
 | ||||||
|  |     # A glob pattern to the artifacts that should be downloaded. | ||||||
|  |     # Ignored if name is specified. | ||||||
|  |     # Optional. | ||||||
|  |     pattern: | ||||||
|  | 
 | ||||||
|  |     # When multiple artifacts are matched, this changes the behavior of the destination directories. | ||||||
|  |     # If true, the downloaded artifacts will be in the same directory specified by path. | ||||||
|  |     # If false, the downloaded artifacts will be extracted into individual named directories within the specified path. | ||||||
|  |     # Optional. Default is 'false' | ||||||
|  |     merge-multiple: | ||||||
|  | 
 | ||||||
|     # The GitHub token used to authenticate with the GitHub API. |     # The GitHub token used to authenticate with the GitHub API. | ||||||
|     # This is required when downloading artifacts from a different repository or from a different workflow run. |     # This is required when downloading artifacts from a different repository or from a different workflow run. | ||||||
|     # Optional. If unspecified, the action will download artifacts from the current repo and the current workflow run. |     # Optional. If unspecified, the action will download artifacts from the current repo and the current workflow run. | ||||||
|  | |||||||
							
								
								
									
										11
									
								
								action.yml
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								action.yml
									
									
									
									
									
								
							| @ -3,11 +3,20 @@ description: 'Download a build artifact that was previously uploaded in the work | |||||||
| author: 'GitHub' | author: 'GitHub' | ||||||
| inputs: | inputs: | ||||||
|   name: |   name: | ||||||
|     description: 'Name of the artifact to download. If unspecified, all artifacts for the run are downloaded' |     description: 'Name of the artifact to download. If unspecified, all artifacts for the run are downloaded.' | ||||||
|     required: false |     required: false | ||||||
|   path: |   path: | ||||||
|     description: 'Destination path. Supports basic tilde expansion. Defaults to $GITHUB_WORKSPACE' |     description: 'Destination path. Supports basic tilde expansion. Defaults to $GITHUB_WORKSPACE' | ||||||
|     required: false |     required: false | ||||||
|  |   pattern: | ||||||
|  |     description: 'A glob pattern matching the artifacts that should be downloaded. Ignored if name is specified.' | ||||||
|  |     required: false | ||||||
|  |   merge-multiple: | ||||||
|  |     description: 'When multiple artifacts are matched, this changes the behavior of the destination directories. | ||||||
|  |       If true, the downloaded artifacts will be in the same directory specified by path. | ||||||
|  |       If false, the downloaded artifacts will be extracted into individual named directories within the specified path.' | ||||||
|  |     required: false | ||||||
|  |     default: 'false' | ||||||
|   github-token: |   github-token: | ||||||
|     description: 'The GitHub token used to authenticate with the GitHub API. |     description: 'The GitHub token used to authenticate with the GitHub API. | ||||||
|       This is required when downloading artifacts from a different repository or from a different workflow run. |       This is required when downloading artifacts from a different repository or from a different workflow run. | ||||||
|  | |||||||
							
								
								
									
										7761
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7761
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										239
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										239
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -11,7 +11,8 @@ | |||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "@actions/artifact": "^2.0.0", |         "@actions/artifact": "^2.0.0", | ||||||
|         "@actions/core": "^1.10.0", |         "@actions/core": "^1.10.0", | ||||||
|         "@actions/github": "^5.1.1" |         "@actions/github": "^5.1.1", | ||||||
|  |         "minimatch": "^9.0.3" | ||||||
|       }, |       }, | ||||||
|       "devDependencies": { |       "devDependencies": { | ||||||
|         "@types/node": "^12.12.6", |         "@types/node": "^12.12.6", | ||||||
| @ -21,7 +22,7 @@ | |||||||
|         "eslint": "^7.4.0", |         "eslint": "^7.4.0", | ||||||
|         "eslint-plugin-github": "^4.1.1", |         "eslint-plugin-github": "^4.1.1", | ||||||
|         "prettier": "^2.0.5", |         "prettier": "^2.0.5", | ||||||
|         "typescript": "^3.8.3" |         "typescript": "^5.3.3" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/@actions/artifact": { |     "node_modules/@actions/artifact": { | ||||||
| @ -485,6 +486,30 @@ | |||||||
|         "typescript": "^3.9" |         "typescript": "^3.9" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/@protobuf-ts/plugin-framework/node_modules/typescript": { | ||||||
|  |       "version": "3.9.10", | ||||||
|  |       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", | ||||||
|  |       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", | ||||||
|  |       "bin": { | ||||||
|  |         "tsc": "bin/tsc", | ||||||
|  |         "tsserver": "bin/tsserver" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=4.2.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/@protobuf-ts/plugin/node_modules/typescript": { | ||||||
|  |       "version": "3.9.10", | ||||||
|  |       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", | ||||||
|  |       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", | ||||||
|  |       "bin": { | ||||||
|  |         "tsc": "bin/tsc", | ||||||
|  |         "tsserver": "bin/tsserver" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": ">=4.2.0" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/@protobuf-ts/protoc": { |     "node_modules/@protobuf-ts/protoc": { | ||||||
|       "version": "2.9.3", |       "version": "2.9.3", | ||||||
|       "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.9.3.tgz", |       "resolved": "https://registry.npmjs.org/@protobuf-ts/protoc/-/protoc-2.9.3.tgz", | ||||||
| @ -1053,12 +1078,11 @@ | |||||||
|       "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" |       "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/brace-expansion": { |     "node_modules/brace-expansion": { | ||||||
|       "version": "1.1.11", |       "version": "2.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", | ||||||
|       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", |       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "balanced-match": "^1.0.0", |         "balanced-match": "^1.0.0" | ||||||
|         "concat-map": "0.0.1" |  | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/braces": { |     "node_modules/braces": { | ||||||
| @ -1273,7 +1297,7 @@ | |||||||
|     "node_modules/concat-map": { |     "node_modules/concat-map": { | ||||||
|       "version": "0.0.1", |       "version": "0.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", |       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | ||||||
|       "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" |       "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" | ||||||
|     }, |     }, | ||||||
|     "node_modules/concurrently": { |     "node_modules/concurrently": { | ||||||
|       "version": "5.2.0", |       "version": "5.2.0", | ||||||
| @ -1747,6 +1771,16 @@ | |||||||
|         "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" |         "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/eslint-plugin-import/node_modules/brace-expansion": { | ||||||
|  |       "version": "1.1.11", | ||||||
|  |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |       "dev": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "balanced-match": "^1.0.0", | ||||||
|  |         "concat-map": "0.0.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/eslint-plugin-import/node_modules/debug": { |     "node_modules/eslint-plugin-import/node_modules/debug": { | ||||||
|       "version": "2.6.9", |       "version": "2.6.9", | ||||||
|       "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", |       "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | ||||||
| @ -1769,6 +1803,18 @@ | |||||||
|         "node": ">=0.10.0" |         "node": ">=0.10.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/eslint-plugin-import/node_modules/minimatch": { | ||||||
|  |       "version": "3.1.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |       "dev": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "brace-expansion": "^1.1.7" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/eslint-plugin-import/node_modules/ms": { |     "node_modules/eslint-plugin-import/node_modules/ms": { | ||||||
|       "version": "2.0.0", |       "version": "2.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", |       "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | ||||||
| @ -1871,6 +1917,16 @@ | |||||||
|         "url": "https://github.com/chalk/ansi-styles?sponsor=1" |         "url": "https://github.com/chalk/ansi-styles?sponsor=1" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/eslint/node_modules/brace-expansion": { | ||||||
|  |       "version": "1.1.11", | ||||||
|  |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |       "dev": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "balanced-match": "^1.0.0", | ||||||
|  |         "concat-map": "0.0.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/eslint/node_modules/chalk": { |     "node_modules/eslint/node_modules/chalk": { | ||||||
|       "version": "4.1.0", |       "version": "4.1.0", | ||||||
|       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", |       "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", | ||||||
| @ -1923,6 +1979,18 @@ | |||||||
|         "node": ">=8" |         "node": ">=8" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/eslint/node_modules/minimatch": { | ||||||
|  |       "version": "3.1.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |       "dev": true, | ||||||
|  |       "dependencies": { | ||||||
|  |         "brace-expansion": "^1.1.7" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/eslint/node_modules/strip-ansi": { |     "node_modules/eslint/node_modules/strip-ansi": { | ||||||
|       "version": "6.0.0", |       "version": "6.0.0", | ||||||
|       "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", |       "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", | ||||||
| @ -2245,6 +2313,26 @@ | |||||||
|         "node": ">= 6" |         "node": ">= 6" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|  |     "node_modules/glob/node_modules/brace-expansion": { | ||||||
|  |       "version": "1.1.11", | ||||||
|  |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "balanced-match": "^1.0.0", | ||||||
|  |         "concat-map": "0.0.1" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|  |     "node_modules/glob/node_modules/minimatch": { | ||||||
|  |       "version": "3.1.2", | ||||||
|  |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |       "dependencies": { | ||||||
|  |         "brace-expansion": "^1.1.7" | ||||||
|  |       }, | ||||||
|  |       "engines": { | ||||||
|  |         "node": "*" | ||||||
|  |       } | ||||||
|  |     }, | ||||||
|     "node_modules/globals": { |     "node_modules/globals": { | ||||||
|       "version": "12.4.0", |       "version": "12.4.0", | ||||||
|       "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", |       "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", | ||||||
| @ -2793,14 +2881,17 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/minimatch": { |     "node_modules/minimatch": { | ||||||
|       "version": "3.1.2", |       "version": "9.0.3", | ||||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", | ||||||
|       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", |       "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "brace-expansion": "^1.1.7" |         "brace-expansion": "^2.0.1" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": "*" |         "node": ">=16 || 14 >=14.17" | ||||||
|  |       }, | ||||||
|  |       "funding": { | ||||||
|  |         "url": "https://github.com/sponsors/isaacs" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/minimist": { |     "node_modules/minimist": { | ||||||
| @ -3411,14 +3502,6 @@ | |||||||
|         "minimatch": "^5.1.0" |         "minimatch": "^5.1.0" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/readdir-glob/node_modules/brace-expansion": { |  | ||||||
|       "version": "2.0.1", |  | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", |  | ||||||
|       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", |  | ||||||
|       "dependencies": { |  | ||||||
|         "balanced-match": "^1.0.0" |  | ||||||
|       } |  | ||||||
|     }, |  | ||||||
|     "node_modules/readdir-glob/node_modules/minimatch": { |     "node_modules/readdir-glob/node_modules/minimatch": { | ||||||
|       "version": "5.1.6", |       "version": "5.1.6", | ||||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", | ||||||
| @ -3974,15 +4057,16 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/typescript": { |     "node_modules/typescript": { | ||||||
|       "version": "3.9.10", |       "version": "5.3.3", | ||||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", |       "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", | ||||||
|       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==", |       "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", | ||||||
|  |       "dev": true, | ||||||
|       "bin": { |       "bin": { | ||||||
|         "tsc": "bin/tsc", |         "tsc": "bin/tsc", | ||||||
|         "tsserver": "bin/tsserver" |         "tsserver": "bin/tsserver" | ||||||
|       }, |       }, | ||||||
|       "engines": { |       "engines": { | ||||||
|         "node": ">=4.2.0" |         "node": ">=14.17" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "node_modules/undici": { |     "node_modules/undici": { | ||||||
| @ -4697,6 +4781,13 @@ | |||||||
|         "@protobuf-ts/runtime": "^2.9.3", |         "@protobuf-ts/runtime": "^2.9.3", | ||||||
|         "@protobuf-ts/runtime-rpc": "^2.9.3", |         "@protobuf-ts/runtime-rpc": "^2.9.3", | ||||||
|         "typescript": "^3.9" |         "typescript": "^3.9" | ||||||
|  |       }, | ||||||
|  |       "dependencies": { | ||||||
|  |         "typescript": { | ||||||
|  |           "version": "3.9.10", | ||||||
|  |           "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", | ||||||
|  |           "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" | ||||||
|  |         } | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "@protobuf-ts/plugin-framework": { |     "@protobuf-ts/plugin-framework": { | ||||||
| @ -4706,6 +4797,13 @@ | |||||||
|       "requires": { |       "requires": { | ||||||
|         "@protobuf-ts/runtime": "^2.9.3", |         "@protobuf-ts/runtime": "^2.9.3", | ||||||
|         "typescript": "^3.9" |         "typescript": "^3.9" | ||||||
|  |       }, | ||||||
|  |       "dependencies": { | ||||||
|  |         "typescript": { | ||||||
|  |           "version": "3.9.10", | ||||||
|  |           "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", | ||||||
|  |           "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" | ||||||
|  |         } | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "@protobuf-ts/protoc": { |     "@protobuf-ts/protoc": { | ||||||
| @ -5109,12 +5207,11 @@ | |||||||
|       "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" |       "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" | ||||||
|     }, |     }, | ||||||
|     "brace-expansion": { |     "brace-expansion": { | ||||||
|       "version": "1.1.11", |       "version": "2.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", |       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", | ||||||
|       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", |       "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", | ||||||
|       "requires": { |       "requires": { | ||||||
|         "balanced-match": "^1.0.0", |         "balanced-match": "^1.0.0" | ||||||
|         "concat-map": "0.0.1" |  | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "braces": { |     "braces": { | ||||||
| @ -5280,7 +5377,7 @@ | |||||||
|     "concat-map": { |     "concat-map": { | ||||||
|       "version": "0.0.1", |       "version": "0.0.1", | ||||||
|       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", |       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", | ||||||
|       "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" |       "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" | ||||||
|     }, |     }, | ||||||
|     "concurrently": { |     "concurrently": { | ||||||
|       "version": "5.2.0", |       "version": "5.2.0", | ||||||
| @ -5541,6 +5638,16 @@ | |||||||
|             "color-convert": "^2.0.1" |             "color-convert": "^2.0.1" | ||||||
|           } |           } | ||||||
|         }, |         }, | ||||||
|  |         "brace-expansion": { | ||||||
|  |           "version": "1.1.11", | ||||||
|  |           "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |           "dev": true, | ||||||
|  |           "requires": { | ||||||
|  |             "balanced-match": "^1.0.0", | ||||||
|  |             "concat-map": "0.0.1" | ||||||
|  |           } | ||||||
|  |         }, | ||||||
|         "chalk": { |         "chalk": { | ||||||
|           "version": "4.1.0", |           "version": "4.1.0", | ||||||
|           "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", |           "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", | ||||||
| @ -5578,6 +5685,15 @@ | |||||||
|           "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", |           "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", | ||||||
|           "dev": true |           "dev": true | ||||||
|         }, |         }, | ||||||
|  |         "minimatch": { | ||||||
|  |           "version": "3.1.2", | ||||||
|  |           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |           "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |           "dev": true, | ||||||
|  |           "requires": { | ||||||
|  |             "brace-expansion": "^1.1.7" | ||||||
|  |           } | ||||||
|  |         }, | ||||||
|         "strip-ansi": { |         "strip-ansi": { | ||||||
|           "version": "6.0.0", |           "version": "6.0.0", | ||||||
|           "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", |           "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", | ||||||
| @ -5715,6 +5831,16 @@ | |||||||
|         "tsconfig-paths": "^3.9.0" |         "tsconfig-paths": "^3.9.0" | ||||||
|       }, |       }, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|  |         "brace-expansion": { | ||||||
|  |           "version": "1.1.11", | ||||||
|  |           "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |           "dev": true, | ||||||
|  |           "requires": { | ||||||
|  |             "balanced-match": "^1.0.0", | ||||||
|  |             "concat-map": "0.0.1" | ||||||
|  |           } | ||||||
|  |         }, | ||||||
|         "debug": { |         "debug": { | ||||||
|           "version": "2.6.9", |           "version": "2.6.9", | ||||||
|           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", |           "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", | ||||||
| @ -5734,6 +5860,15 @@ | |||||||
|             "isarray": "^1.0.0" |             "isarray": "^1.0.0" | ||||||
|           } |           } | ||||||
|         }, |         }, | ||||||
|  |         "minimatch": { | ||||||
|  |           "version": "3.1.2", | ||||||
|  |           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |           "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |           "dev": true, | ||||||
|  |           "requires": { | ||||||
|  |             "brace-expansion": "^1.1.7" | ||||||
|  |           } | ||||||
|  |         }, | ||||||
|         "ms": { |         "ms": { | ||||||
|           "version": "2.0.0", |           "version": "2.0.0", | ||||||
|           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", |           "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", | ||||||
| @ -6018,6 +6153,25 @@ | |||||||
|         "minimatch": "^3.1.1", |         "minimatch": "^3.1.1", | ||||||
|         "once": "^1.3.0", |         "once": "^1.3.0", | ||||||
|         "path-is-absolute": "^1.0.0" |         "path-is-absolute": "^1.0.0" | ||||||
|  |       }, | ||||||
|  |       "dependencies": { | ||||||
|  |         "brace-expansion": { | ||||||
|  |           "version": "1.1.11", | ||||||
|  |           "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", | ||||||
|  |           "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", | ||||||
|  |           "requires": { | ||||||
|  |             "balanced-match": "^1.0.0", | ||||||
|  |             "concat-map": "0.0.1" | ||||||
|  |           } | ||||||
|  |         }, | ||||||
|  |         "minimatch": { | ||||||
|  |           "version": "3.1.2", | ||||||
|  |           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", | ||||||
|  |           "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", | ||||||
|  |           "requires": { | ||||||
|  |             "brace-expansion": "^1.1.7" | ||||||
|  |           } | ||||||
|  |         } | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "glob-parent": { |     "glob-parent": { | ||||||
| @ -6445,11 +6599,11 @@ | |||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "minimatch": { |     "minimatch": { | ||||||
|       "version": "3.1.2", |       "version": "9.0.3", | ||||||
|       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", |       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", | ||||||
|       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", |       "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", | ||||||
|       "requires": { |       "requires": { | ||||||
|         "brace-expansion": "^1.1.7" |         "brace-expansion": "^2.0.1" | ||||||
|       } |       } | ||||||
|     }, |     }, | ||||||
|     "minimist": { |     "minimist": { | ||||||
| @ -6901,14 +7055,6 @@ | |||||||
|         "minimatch": "^5.1.0" |         "minimatch": "^5.1.0" | ||||||
|       }, |       }, | ||||||
|       "dependencies": { |       "dependencies": { | ||||||
|         "brace-expansion": { |  | ||||||
|           "version": "2.0.1", |  | ||||||
|           "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", |  | ||||||
|           "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", |  | ||||||
|           "requires": { |  | ||||||
|             "balanced-match": "^1.0.0" |  | ||||||
|           } |  | ||||||
|         }, |  | ||||||
|         "minimatch": { |         "minimatch": { | ||||||
|           "version": "5.1.6", |           "version": "5.1.6", | ||||||
|           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", |           "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", | ||||||
| @ -7316,9 +7462,10 @@ | |||||||
|       "dev": true |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "typescript": { |     "typescript": { | ||||||
|       "version": "3.9.10", |       "version": "5.3.3", | ||||||
|       "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz", |       "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", | ||||||
|       "integrity": "sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==" |       "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", | ||||||
|  |       "dev": true | ||||||
|     }, |     }, | ||||||
|     "undici": { |     "undici": { | ||||||
|       "version": "5.28.2", |       "version": "5.28.2", | ||||||
|  | |||||||
| @ -30,7 +30,8 @@ | |||||||
|   "dependencies": { |   "dependencies": { | ||||||
|     "@actions/artifact": "^2.0.0", |     "@actions/artifact": "^2.0.0", | ||||||
|     "@actions/core": "^1.10.0", |     "@actions/core": "^1.10.0", | ||||||
|     "@actions/github": "^5.1.1" |     "@actions/github": "^5.1.1", | ||||||
|  |     "minimatch": "^9.0.3" | ||||||
|   }, |   }, | ||||||
|   "devDependencies": { |   "devDependencies": { | ||||||
|     "@types/node": "^12.12.6", |     "@types/node": "^12.12.6", | ||||||
| @ -40,6 +41,6 @@ | |||||||
|     "eslint": "^7.4.0", |     "eslint": "^7.4.0", | ||||||
|     "eslint-plugin-github": "^4.1.1", |     "eslint-plugin-github": "^4.1.1", | ||||||
|     "prettier": "^2.0.5", |     "prettier": "^2.0.5", | ||||||
|     "typescript": "^3.8.3" |     "typescript": "^5.3.3" | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  | |||||||
| @ -3,7 +3,9 @@ export enum Inputs { | |||||||
|   Path = 'path', |   Path = 'path', | ||||||
|   GitHubToken = 'github-token', |   GitHubToken = 'github-token', | ||||||
|   Repository = 'repository', |   Repository = 'repository', | ||||||
|   RunID = 'run-id' |   RunID = 'run-id', | ||||||
|  |   Pattern = 'pattern', | ||||||
|  |   MergeMultiple = 'merge-multiple' | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| export enum Outputs { | export enum Outputs { | ||||||
|  | |||||||
| @ -3,6 +3,7 @@ import * as path from 'path' | |||||||
| import * as core from '@actions/core' | import * as core from '@actions/core' | ||||||
| import artifactClient from '@actions/artifact' | import artifactClient from '@actions/artifact' | ||||||
| import type {Artifact, FindOptions} from '@actions/artifact' | import type {Artifact, FindOptions} from '@actions/artifact' | ||||||
|  | import {Minimatch} from 'minimatch' | ||||||
| import {Inputs, Outputs} from './constants' | import {Inputs, Outputs} from './constants' | ||||||
| 
 | 
 | ||||||
| const PARALLEL_DOWNLOADS = 5 | const PARALLEL_DOWNLOADS = 5 | ||||||
| @ -20,7 +21,9 @@ async function run(): Promise<void> { | |||||||
|     path: core.getInput(Inputs.Path, {required: false}), |     path: core.getInput(Inputs.Path, {required: false}), | ||||||
|     token: core.getInput(Inputs.GitHubToken, {required: false}), |     token: core.getInput(Inputs.GitHubToken, {required: false}), | ||||||
|     repository: core.getInput(Inputs.Repository, {required: false}), |     repository: core.getInput(Inputs.Repository, {required: false}), | ||||||
|     runID: parseInt(core.getInput(Inputs.RunID, {required: false})) |     runID: parseInt(core.getInput(Inputs.RunID, {required: false})), | ||||||
|  |     pattern: core.getInput(Inputs.Pattern, {required: false}), | ||||||
|  |     mergeMultiple: core.getBooleanInput(Inputs.MergeMultiple, {required: false}) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   if (!inputs.path) { |   if (!inputs.path) { | ||||||
| @ -80,23 +83,36 @@ async function run(): Promise<void> { | |||||||
|       latest: true, |       latest: true, | ||||||
|       ...options |       ...options | ||||||
|     }) |     }) | ||||||
|  |     artifacts = listArtifactResponse.artifacts | ||||||
| 
 | 
 | ||||||
|     if (listArtifactResponse.artifacts.length === 0) { |     core.debug(`Found ${artifacts.length} artifacts in run`) | ||||||
|       throw new Error( | 
 | ||||||
|         `No artifacts found for run '${inputs.runID}' in '${inputs.repository}'` |     if (inputs.pattern) { | ||||||
|  |       core.info(`Filtering artifacts by pattern '${inputs.pattern}'`) | ||||||
|  |       const matcher = new Minimatch(inputs.pattern) | ||||||
|  |       artifacts = artifacts.filter(artifact => matcher.match(artifact.name)) | ||||||
|  |       core.debug( | ||||||
|  |         `Filtered from ${listArtifactResponse.artifacts.length} to ${artifacts.length} artifacts` | ||||||
|       ) |       ) | ||||||
|     } |     } | ||||||
|  |   } | ||||||
| 
 | 
 | ||||||
|     core.debug(`Found ${listArtifactResponse.artifacts.length} artifacts`) |   if (artifacts.length) { | ||||||
|     artifacts = listArtifactResponse.artifacts |     core.info(`Preparing to download the following artifacts:`) | ||||||
|  |     artifacts.forEach(artifact => { | ||||||
|  |       core.info( | ||||||
|  |         `- ${artifact.name} (ID: ${artifact.id}, Size: ${artifact.size})` | ||||||
|  |       ) | ||||||
|  |     }) | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   const downloadPromises = artifacts.map(artifact => |   const downloadPromises = artifacts.map(artifact => | ||||||
|     artifactClient.downloadArtifact(artifact.id, { |     artifactClient.downloadArtifact(artifact.id, { | ||||||
|       ...options, |       ...options, | ||||||
|       path: isSingleArtifactDownload |       path: | ||||||
|         ? resolvedPath |         isSingleArtifactDownload || inputs.mergeMultiple | ||||||
|         : path.join(resolvedPath, artifact.name) |           ? resolvedPath | ||||||
|  |           : path.join(resolvedPath, artifact.name) | ||||||
|     }) |     }) | ||||||
|   ) |   ) | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user