diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6c903d0..b4c7a02 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -6,7 +6,7 @@ on: - main jobs: - test: + test-key: runs-on: ubuntu-latest steps: @@ -14,10 +14,26 @@ jobs: - uses: marcodallasanta/ssh-scp-deploy@main with: - local: "CHANGELOG.md" + local: "LICENSE" remote: "~/" host: ${{secrets.HOST}} user: ${{secrets.USER}} key: ${{secrets.KEY}} pre_upload: echo "pre_upload 👈" + post_upload: echo "post_upload 👉" + + test-pass: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v1 + + - uses: marcodallasanta/ssh-scp-deploy@development + with: + local: "CHANGELOG.md" + remote: "~/" + host: ${{secrets.HOST}} + user: ${{secrets.USER}} + password: ${{secrets.PASSWORD}} + pre_upload: echo "pre_upload 👈" post_upload: echo "post_upload 👉" \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index ca794dd..93debde 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,12 @@ # [Unreleased] +## [v1.0.5] - 2021-09-08 +- [Issue #12](https://github.com/marcodallasanta/ssh-scp-deploy/issues/12) - Action never failed also when file/dir was not uploaded. + ## [v1.0.4] - 2021-02-10 ### Fixed -- Issue #9 - Wrong if on password. +- [Issue #9](https://github.com/marcodallasanta/ssh-scp-deploy/issues/9) - Wrong if on password. ## [v1.0.3] - 2021-02-08 @@ -27,6 +30,7 @@ [unreleased]: https://github.com/marcodallasanta/ssh-scp-deploy/compare/main...development +[v1.0.5]: https://github.com/underscore69/ssh-scp-deploy/tree/v1.0.5 [v1.0.4]: https://github.com/underscore69/ssh-scp-deploy/tree/v1.0.4 [v1.0.3]: https://github.com/underscore69/ssh-scp-deploy/tree/v1.0.3 [v1.0.2]: https://github.com/underscore69/ssh-scp-deploy/tree/v1.0.2 diff --git a/with_key.sh b/with_key.sh index 16201d5..138b81f 100644 --- a/with_key.sh +++ b/with_key.sh @@ -5,20 +5,32 @@ echo "🔐 Added ssh key"; PRE_UPLOAD=${INPUT_PRE_UPLOAD} if [ ! -z "$PRE_UPLOAD" ]; then - echo "👌 Executing pre-upload script..." && - ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$INPUT_PRE_UPLOAD && exit" && - echo "✅ Executed pre-upload script"; + { + echo "👌 Executing pre-upload script..." && + ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$INPUT_PRE_UPLOAD && exit" && + echo "✅ Executed pre-upload script" + } || { + echo "😢 Something went wrong during pre-upload script" && exit 1 + } fi -echo "🚚 Uploading via scp..." && -scp ${INPUT_SSH_OPTIONS} ${INPUT_SCP_OPTIONS} -P "${INPUT_PORT}" -r ${INPUT_LOCAL} ${INPUT_USER}@${INPUT_HOST}:"${INPUT_REMOTE}" && -echo "🙌 Uploaded via scp"; +{ + echo "🚚 Uploading via scp..." && + scp ${INPUT_SSH_OPTIONS} ${INPUT_SCP_OPTIONS} -P "${INPUT_PORT}" -r ${INPUT_LOCAL} ${INPUT_USER}@${INPUT_HOST}:"${INPUT_REMOTE}" && + echo "🙌 Uploaded via scp" +} || { + echo "😢 Something went wrong during upload" && exit 1  +} POST_UPLOAD=${INPUT_POST_UPLOAD} if [ ! -z "$POST_UPLOAD" ]; then - echo "👌 Executing post-upload script..." && - ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$POST_UPLOAD && exit" && - echo "✅ Executed post-upload script"; + { + echo "👌 Executing post-upload script..." && + ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$POST_UPLOAD && exit" && + echo "✅ Executed post-upload script" + } || { + echo "😢 Something went wrong during post-upload script" && exit 1 + } fi echo "🎉 Done"; \ No newline at end of file diff --git a/with_pass.sh b/with_pass.sh index 8f30ed4..22a951a 100644 --- a/with_pass.sh +++ b/with_pass.sh @@ -1,19 +1,31 @@ PRE_UPLOAD=${INPUT_PRE_UPLOAD} if [ ! -z "$PRE_UPLOAD" ]; then - echo "👌 Executing pre-upload script..." && - sshpass -p ${PASSWORD} ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$INPUT_PRE_UPLOAD && exit" && - echo "✅ Executed pre-upload script"; + { + echo "👌 Executing pre-upload script..." && + sshpass -p ${PASSWORD} ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$INPUT_PRE_UPLOAD && exit" && + echo "✅ Executed pre-upload script" + } || { + echo "😢 Something went wrong during pre-upload script" && exit 1 + } fi -echo "🚚 Uploading via scp..." && -sshpass -p ${PASSWORD} scp ${INPUT_SSH_OPTIONS} ${INPUT_SCP_OPTIONS} -P "${INPUT_PORT}" -r ${INPUT_LOCAL} ${INPUT_USER}@${INPUT_HOST}:"${INPUT_REMOTE}" && -echo "🙌 Uploaded via scp"; +{ + echo "🚚 Uploading via scp..." && + sshpass -p ${PASSWORD} scp ${INPUT_SSH_OPTIONS} ${INPUT_SCP_OPTIONS} -P "${INPUT_PORT}" -r ${INPUT_LOCAL} ${INPUT_USER}@${INPUT_HOST}:"${INPUT_REMOTE}" && + echo "🙌 Uploaded via scp" +} || { + echo "😢 Something went wrong during upload" && exit 1  +} POST_UPLOAD=${INPUT_POST_UPLOAD} if [ ! -z "$POST_UPLOAD" ]; then - echo "👌 Executing post-upload script..." && - sshpass -p ${PASSWORD} ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$POST_UPLOAD && exit" && - echo "✅ Executed post-upload script"; + { + echo "👌 Executing post-upload script..." && + sshpass -p ${PASSWORD} ssh ${INPUT_SSH_OPTIONS} ${INPUT_USER}@${INPUT_HOST} "$POST_UPLOAD && exit" && + echo "✅ Executed post-upload script" + } || { + echo "😢 Something went wrong during post-upload script" && exit 1 + } fi echo "🎉 Done"; \ No newline at end of file