mirror of
				https://github.com/pnpm/action-setup.git
				synced 2025-11-04 13:29:08 +08:00 
			
		
		
		
	Merge pull request #29 from pnpm/pnpm-v7
The pnpm home directory should be added to PATH and PNPM_HOME
This commit is contained in:
		
							
								
								
									
										2
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										24
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								package.json
									
									
									
									
									
								
							@@ -7,21 +7,21 @@
 | 
				
			|||||||
    "start": "pnpm run build && sh ./run.sh"
 | 
					    "start": "pnpm run build && sh ./run.sh"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "node-fetch": "^2.6.1",
 | 
					    "@actions/core": "^1.6.0",
 | 
				
			||||||
    "expand-tilde": "^2.0.2",
 | 
					 | 
				
			||||||
    "js-yaml": "^4.0.0",
 | 
					 | 
				
			||||||
    "ajv": "^6.12.5",
 | 
					 | 
				
			||||||
    "fs-extra": "^9.1.0",
 | 
					 | 
				
			||||||
    "@actions/core": "^1.2.6",
 | 
					 | 
				
			||||||
    "@types/expand-tilde": "^2.0.0",
 | 
					    "@types/expand-tilde": "^2.0.0",
 | 
				
			||||||
    "@types/node-fetch": "^2.5.8",
 | 
					    "@types/fs-extra": "^9.0.13",
 | 
				
			||||||
    "@types/js-yaml": "^4.0.0",
 | 
					    "@types/js-yaml": "^4.0.5",
 | 
				
			||||||
    "@types/fs-extra": "^9.0.8",
 | 
					    "@types/node": "^14.18.10",
 | 
				
			||||||
    "@types/node": "^14.14.35"
 | 
					    "@types/node-fetch": "^2.5.12",
 | 
				
			||||||
 | 
					    "ajv": "^6.12.6",
 | 
				
			||||||
 | 
					    "expand-tilde": "^2.0.2",
 | 
				
			||||||
 | 
					    "fs-extra": "^9.1.0",
 | 
				
			||||||
 | 
					    "js-yaml": "^4.1.0",
 | 
				
			||||||
 | 
					    "node-fetch": "^2.6.7"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
    "typescript": "^4.2.3",
 | 
					 | 
				
			||||||
    "@ts-schema-autogen/cli": "^0.1.2",
 | 
					    "@ts-schema-autogen/cli": "^0.1.2",
 | 
				
			||||||
    "@vercel/ncc": "^0.27.0"
 | 
					    "@vercel/ncc": "^0.27.0",
 | 
				
			||||||
 | 
					    "typescript": "^4.5.5"
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										971
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										971
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,6 +1,7 @@
 | 
				
			|||||||
 | 
					import { addPath, exportVariable } from '@actions/core'
 | 
				
			||||||
import { spawn } from 'child_process'
 | 
					import { spawn } from 'child_process'
 | 
				
			||||||
import { execPath } from 'process'
 | 
					import { execPath } from 'process'
 | 
				
			||||||
import { join } from 'path'
 | 
					import path from 'path'
 | 
				
			||||||
import { remove, ensureFile, writeFile } from 'fs-extra'
 | 
					import { remove, ensureFile, writeFile } from 'fs-extra'
 | 
				
			||||||
import fetch from 'node-fetch'
 | 
					import fetch from 'node-fetch'
 | 
				
			||||||
import { Inputs } from '../inputs'
 | 
					import { Inputs } from '../inputs'
 | 
				
			||||||
@@ -8,7 +9,7 @@ import { Inputs } from '../inputs'
 | 
				
			|||||||
export async function runSelfInstaller(inputs: Inputs): Promise<number> {
 | 
					export async function runSelfInstaller(inputs: Inputs): Promise<number> {
 | 
				
			||||||
  const { version, dest } = inputs
 | 
					  const { version, dest } = inputs
 | 
				
			||||||
  const target = version ? `pnpm@${version}` : 'pnpm'
 | 
					  const target = version ? `pnpm@${version}` : 'pnpm'
 | 
				
			||||||
  const pkgJson = join(dest, 'package.json')
 | 
					  const pkgJson = path.join(dest, 'package.json')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  await remove(dest)
 | 
					  await remove(dest)
 | 
				
			||||||
  await ensureFile(pkgJson)
 | 
					  await ensureFile(pkgJson)
 | 
				
			||||||
@@ -19,13 +20,19 @@ export async function runSelfInstaller(inputs: Inputs): Promise<number> {
 | 
				
			|||||||
    stdio: ['pipe', 'inherit', 'inherit'],
 | 
					    stdio: ['pipe', 'inherit', 'inherit'],
 | 
				
			||||||
  })
 | 
					  })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const response = await fetch('https://pnpm.js.org/pnpm.js')
 | 
					  const response = await fetch('https://pnpm.io/pnpm.js')
 | 
				
			||||||
  response.body.pipe(cp.stdin)
 | 
					  response.body.pipe(cp.stdin)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  return new Promise((resolve, reject) => {
 | 
					  const exitCode = await new Promise<number>((resolve, reject) => {
 | 
				
			||||||
    cp.on('error', reject)
 | 
					    cp.on('error', reject)
 | 
				
			||||||
    cp.on('close', resolve)
 | 
					    cp.on('close', resolve)
 | 
				
			||||||
  })
 | 
					  })
 | 
				
			||||||
 | 
					  if (exitCode === 0) {
 | 
				
			||||||
 | 
					    const pnpmHome = path.join(dest, 'node_modules/.bin')
 | 
				
			||||||
 | 
					    addPath(pnpmHome)
 | 
				
			||||||
 | 
					    exportVariable('PNPM_HOME', pnpmHome)
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  return exitCode
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default runSelfInstaller
 | 
					export default runSelfInstaller
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user