GitHub Actions self-hosted runner pa jwenn kòmand npm

poze 2 days ago7 gadeht

0

Mwen gen yon GitHub Actions self-hosted runner sou yon Windows Server. Node.js ak npm enstale sou server la, men lè workflow la kouri, GitHub Actions di li pa jwenn kòmand npm.

What I tried

Mwen verifye Node.js enstale epi npm --version mache lè mwen louvri PowerShell manyèlman.

Error message

'npm' is not recognized as an internal or external command

Expected result

Workflow GitHub Actions la ta dwe kapab jwenn epi itilize npm.

Anviwònman:Guthub Actions, Node.js Node.js 20, npm 10Windows Server 2022

🤖 Dyagnostik IA

Se IA ki fè l. Se pa yon repons — kominote a anba a konfime oswa korije l. Toujou verifye anvan ou fye l.

1 Repons

0

Rezime pwoblèm nan ak sa ki pwobab kòz la

Sitiyasyon sa a se yon klasik pwoblèm PATH ki gen rapò ak jan self-hosted runner service la kouri sou Windows.

Lè ou louvri PowerShell manyèlman, li chaje pwofil itilizatè a ak PATH ki mete ajou (paske Node.js/npm te enstale epi PATH la te modifye apre sa). Men, si GitHub Actions runner a ap kouri kòm yon sèvis Windows (via run.cmd/svc install), li ka:

  • Kouri anba yon lòt kont itilizatè (pa egzanp NT AUTHORITY\NETWORK SERVICE oswa LocalSystem) ki pa gen menm PATH ke sesyon ou a.
  • Te demare anvan enstalasyon Node.js la, kidonk li te chaje yon vèsyon ansyen/anvironman PATH ki pa gen chemen Node/npm ladan.

Sa pou eseye

  1. Verifye ki kont sèvis la ap kouri anba li, epi konfime kont sa a gen aksè ak PATH kote npm ye a (souvan C:\Program Files\nodejs\).
  2. Redemare sèvis runner a (oswa redemare machin lan antyèman) apre enstalasyon Node.js, pou l reprann yon nouvo anviwònman PATH:
    # Nan dosye runner la
    .\svc.sh stop   # oswa
    Stop-Service actions.runner.*
    Start-Service actions.runner.*
  3. Verifye Variab Anviwònman Sistèm (System Environment Variables), pa sèlman Variab Itilizatè (User Environment Variables). Node.js dwe ajoute nan PATH sistèm nan (Path anba "System variables"), pa sèlman anba "User variables", si sèvis la kouri kòm yon lòt kont.
  4. Si w vle konfime rapidman ke se yon pwoblèm PATH nan workflow lan menm, ou ka ajoute yon etap debug tanporè nan workflow la:
    - name: Debug PATH
      run: echo $env:PATH
    - name: Where is npm
      run: where npm

⚠️ Poko gen konfimasyon final sou fix egzak la paske diskisyon an poko gen kòmantè ki teste yon solisyon — men pis ki pi pwobab la se PATH sistèm vs PATH itilizatè, oswa kont anba ki sèvis la kouri. Eseye etap yo pi wo epi poste rezilta where npm pou nou ka konfime.

Konekte pou di lòt moun si li te mache.

answered 2 days ago

Sign in and verify your email to post an answer.