Jenkinsジョブを実行したら、npm loginの箇所で、「npm: コマンドが見つかりません」エラーになってしまいました。
結論からいうと、nvmでインストールしたnpmだったので、JenkinsでnpmへのPATHが通っていませんでした。
npm: コマンドが見つかりません
Jpostalは郵便番号から住所を自動入力するjqueryプラグインで、筆者が開発しています。Jpostalは、githubでソース公開、npmでもソース公開、Google Cloudでホスティングしています。
最近、郵便データの更新処理からGoogle CloudへのデプロイをJenkins化したんですね。その作業中のことです。
自分のPCのターミナルでは、githubへのpushや、npmへの公開、Google Cloudへの自動デプロイまで、問題なく実行できました。

あともう少しね
npm_publish.sh
#!/bin/bash -ue
expect -c "
set timeout 10
spawn ./bin/npm_login.sh
expect \"Username:\"
send \"$NPM_USER\n\"
expect \"Password:\"
send \"$NPM_PASS\n\"
expect \"Email: (this IS public)\"
send \"$NPM_EMAIL\n\"
expect eof
exit
"
cd jquery.jpostal.js
npm publish
Code language: Bash (bash)
npm_login.sh
#!/bin/bash -ue
npm login
Code language: Bash (bash)
ところが、Jenkinsジョブで実行すると、npm_login.shの3行目で、
npm: コマンドが見つかりません
と表示されてしまいました。

何かインストールを忘れてない?
Jenkinsサーバでコマンドが不足していることが原因で、Jenkinsジョブが動かないことは、よくあることです。Jenkinsサーバにsshログインして、該当するシェルスクリプトを実行してみました。すると、最後まで実行できました。
npmはnvmでインストールしました。npmが動くか確認してみると、問題ないようです。
$ npm -v
6.13.4
$ which npm
/home/jenkins/.nvm/versions/node/v12.16.1/bin/npm
Code language: Bash (bash)

Jenkinsサーバのターミナルも問題ないようね
JenkinsのConfigureのExecute Shellで、npm -vを試しました。
npm -v
exit 0
Code language: Bash (bash)
Configureを保存して、Build Nowして、Console Outputを見ると、「npm: not found」
+ npm -v
/tmp/jenkins7559008830890794218.sh: 2: /tmp/jenkins7559008830890794218.sh: npm: not found
Code language: Bash (bash)
JenkinsのConfigureのExecute Shellで、npm -vを試しました。
echo "which npm"
which npm
exit 0
Code language: Bash (bash)
Configureを保存して、Build Nowして、Console Outputを見ると、「which npm」でエラー終了しているようです。
ここいたって、ようやく、JenkinsでnpmへのPATHが通っていないことに気づきました。

つまり、凡ミス?

Jenkinsは ~/.bashrc を読み込まないのね
PATHを通す
JenkinsのManage Jenkins>Configure SystemのGlobal propertiesでPATHを設定してもいいでのすが、将来nvmでnodeバージョンを切り替えたら、PATHも変更する必要があります。
nvm-wrapper プラグイン

Jenkinsプラグインのnvm-wrapperを使います。
JenkinsのManage Jenkins>Manage PluginsのAvailableタブで、nvm-wrapperを検索して、インストールします。
次に、各Jobごとに設定します。
nvmを使いたいJobのConfigureを表示します。
Build Environmentの「Run the build in an NVM manage environment」にチェックを付けます。
Node versionに「v12」と入力します。「v12.18.3」のようにきっちり指定してもいいですし、ざっくり「v12」でもいいです。
BuildのExecute shellで
which npm
npm -v
node -v
Code language: Bash (bash)
と入力して、Build Now します。
Console outputを見ると、無事、npmやnodeを使えるようになりました。
/home/jenkins/.nvm/versions/node/v12.19.0/bin/npm
+ npm -v
6.14.8
+ node -v
v12.19.0