mirror of
https://github.com/appleboy/scp-action.git
synced 2024-11-27 03:46:09 +08:00
abb6d70bee
* chore: update Dockerfile and CI configuration - Remove unnecessary steps in the `testing` job in `ci.yml` - Update the base image in `Dockerfile` to version 1.6.12 - Change the location of the `entrypoint.sh` file in `Dockerfile` Signed-off-by: appleboy <appleboy.tw@gmail.com> * update Signed-off-by: appleboy <appleboy.tw@gmail.com> --------- Signed-off-by: appleboy <appleboy.tw@gmail.com>
151 lines
3.9 KiB
YAML
151 lines
3.9 KiB
YAML
name: scp files
|
|
on: [push]
|
|
jobs:
|
|
testing:
|
|
name: test scp action
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: copy file via ssh password
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
password: ${{ secrets.PASSWORD }}
|
|
port: ${{ secrets.PORT }}
|
|
source: "tests/a.txt,tests/b.txt"
|
|
target: "test"
|
|
|
|
- name: copy file via ssh key
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: ${{ secrets.PORT }}
|
|
source: "tests/a.txt,tests/b.txt"
|
|
target: "test"
|
|
|
|
- name: remove the specified number of leading path elements
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: ${{ secrets.PORT }}
|
|
source: "tests/a.txt,tests/b.txt"
|
|
target: "foobar"
|
|
strip_components: 1
|
|
|
|
- name: ssh key with passphrase
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.SSH2 }}
|
|
passphrase: ${{ secrets.PASSPHRASE }}
|
|
port: ${{ secrets.PORT }}
|
|
source: "tests/a.txt,tests/b.txt"
|
|
target: "test"
|
|
|
|
- name: use insecure cipher
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.SSH2 }}
|
|
passphrase: ${{ secrets.PASSPHRASE }}
|
|
port: ${{ secrets.PORT }}
|
|
source: "tests/a.txt,tests/b.txt"
|
|
target: "test"
|
|
use_insecure_cipher: true
|
|
|
|
deploy:
|
|
name: test deploy artifact
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- run: echo hello > world.txt
|
|
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: my-artifact
|
|
path: world.txt
|
|
|
|
- uses: actions/download-artifact@v3
|
|
with:
|
|
name: my-artifact
|
|
path: distfiles
|
|
|
|
- name: copy file to server
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: ${{ secrets.PORT }}
|
|
source: distfiles/*
|
|
target: test
|
|
|
|
changes:
|
|
name: test changed-files
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Get changed files
|
|
id: changed-files
|
|
uses: tj-actions/changed-files@v37
|
|
with:
|
|
since_last_remote_commit: true
|
|
separator: ","
|
|
|
|
- name: copy file to server
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: ${{ secrets.PORT }}
|
|
source: ${{ steps.changed-files.outputs.all_changed_files }}
|
|
target: test
|
|
|
|
target:
|
|
name: test target folder
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: copy file to server
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: ${{ secrets.PORT }}
|
|
source: tests/a.txt,tests/b.txt
|
|
target: foobar foobar 1234
|
|
|
|
multipleHost:
|
|
name: test Multiple Host
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: copy file to server
|
|
uses: ./
|
|
with:
|
|
host: ${{ secrets.HOST }}:${{ secrets.PORT }},${{ secrets.HOST }}:${{ secrets.PORT }}
|
|
username: ${{ secrets.USERNAME }}
|
|
key: ${{ secrets.KEY }}
|
|
port: 1024
|
|
source: tests/a.txt,tests/b.txt
|
|
target: foobar
|