ci: refactor CI workflow and improve robustness (#320)
* ci: refactor CI workflow and improve robustness - Update GitHub Actions checkout step from version 1 to version 4 in multiple jobs within the CI workflow Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com> * docs: improve non-interactive shell command handling - Add a Q&A section to the README with information on resolving 'command not found' errors for non-interactive shells - Provide a solution involving editing `/etc/bash.bashrc` to ensure commands are added to the path in non-interactive shells Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com> * docs: improve documentation and CI robustness - Update acknowledgment for the interactive shell solution in the README.md file Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com> --------- Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
parent
551964ebda
commit
f916346256
12
.github/workflows/ci.yml
vendored
12
.github/workflows/ci.yml
vendored
@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: correct password but wrong key
|
||||
uses: ./
|
||||
@ -143,7 +143,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: pass environment
|
||||
uses: ./
|
||||
@ -219,7 +219,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: clone private repository
|
||||
uses: ./
|
||||
@ -238,7 +238,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: login GitHub Container Registry
|
||||
uses: ./
|
||||
@ -267,7 +267,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: switch to root user
|
||||
uses: ./
|
||||
@ -288,7 +288,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v1
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up WARP
|
||||
uses: fscarmen/warp-on-actions@v1.1
|
||||
|
23
README.md
23
README.md
@ -395,6 +395,29 @@ Now you can adjust you config:
|
||||
ls -al
|
||||
```
|
||||
|
||||
## Q&A
|
||||
|
||||
### Command not found (npm or other command)
|
||||
|
||||
See the [issue comment](https://github.com/appleboy/ssh-action/issues/31#issuecomment-1006565847) about interactive vs non interactive shell. Thanks @kocyigityunus for the solution.
|
||||
|
||||
Basically, if you are running a command in a non interactive shell, like ssh-action, on many linux distros,
|
||||
|
||||
`/etc/bash.bashrc` file has a specific command that returns only, so some of the files didn't run and some specific commands doesn't add to path,
|
||||
|
||||
```sh
|
||||
# /etc/bash.bashrc
|
||||
# System-wide .bashrc file for interactive bash(1) shells.
|
||||
|
||||
# To enable the settings / commands in this file for login shells as well,
|
||||
# this file has to be sourced in /etc/profile.
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
[ -z "$PS1" ] && return`
|
||||
```
|
||||
|
||||
just comment out the line that returns early and everything should work fine, or you can use the real paths of the commands that you would like to use.
|
||||
|
||||
## Contributing
|
||||
|
||||
We would love for you to contribute to `appleboy/ssh-action`, pull requests are welcome!
|
||||
|
Loading…
Reference in New Issue
Block a user