alpacon-cp-action
로컬 환경과 Alpacon 워크스페이스의 원격 서버 간 파일 및 디렉토리를 복사합니다. 업로드 및 다운로드 모드, 재귀 디렉토리 복사, 다중 소스 파일을 지원합니다.
입력값
| 이름 | 설명 | 필수 | 기본값 |
|---|---|---|---|
workspace-url | Alpacon 워크스페이스 URL | 예 | |
api-token | Alpacon API 토큰 | 예 | |
source | 소스 경로. 업로드: 로컬 경로 (줄당 하나씩 다중 지원). 다운로드: 단일 원격 경로. | 예 | |
target-server | 대상 서버 이름 | 예 | |
target-path | 목적지 경로 (업로드: 원격, 다운로드: 로컬) | 예 | |
mode | upload 또는 download | 아니오 | upload |
recursive | 디렉토리를 재귀적으로 복사 | 아니오 | false |
username | 원격 서버에서 파일 소유권을 설정할 사용자 이름 | 아니오 | |
groupname | 파일 소유권을 설정할 그룹 이름 (username 필요) | 아니오 |
사용법
파일 업로드
- name: Upload config
uses: alpacax/alpacon-cp-action@v1
with:
workspace-url: ${{ secrets.ALPACON_WORKSPACE_URL }}
api-token: ${{ secrets.ALPACON_API_TOKEN }}
source: './config.yml'
target-server: 'prod-server'
target-path: '/opt/myapp/config.yml'
다중 파일 업로드
- name: Upload multiple files
uses: alpacax/alpacon-cp-action@v1
with:
workspace-url: ${{ secrets.ALPACON_WORKSPACE_URL }}
api-token: ${{ secrets.ALPACON_API_TOKEN }}
source: |
./docker-compose.yml
./nginx.conf
./.env.production
target-server: 'prod-server'
target-path: '/opt/myapp/'
username: ubuntu
디렉토리 재귀 업로드
- name: Upload build artifacts
uses: alpacax/alpacon-cp-action@v1
with:
workspace-url: ${{ secrets.ALPACON_WORKSPACE_URL }}
api-token: ${{ secrets.ALPACON_API_TOKEN }}
source: './dist/'
target-server: 'prod-server'
target-path: '/var/www/app/'
recursive: true
파일 다운로드
- name: Download logs
uses: alpacax/alpacon-cp-action@v1
with:
workspace-url: ${{ secrets.ALPACON_WORKSPACE_URL }}
api-token: ${{ secrets.ALPACON_API_TOKEN }}
source: '/var/log/app/error.log'
target-server: 'prod-server'
target-path: './logs/'
mode: download
참고
alpacon-setup-action을 먼저 실행해야 합니다- 업로드
target-path: 파일 경로 또는 디렉토리 경로 가능 - 다운로드
target-path: 반드시 디렉토리 경로—파일은 원래 이름으로 저장됩니다 - 다중 소스: 업로드 모드에서만 지원 (줄당 하나의 경로)
- 다운로드 모드: 단일 소스 경로만 지원
groupname을 사용하려면username이 설정되어야 합니다