아래의 workflow 실행
name: PHP Composer
on:
push:
branches: ["dev"]
pull_request:
branches: ["dev"]
permissions:
contents: read
jobs:
build:
runs-on: bus-dev
env:
DEV_PATH: {work_directory}
GIT_URL: {github url}
steps:
- uses: actions/checkout@v3
- name: Deploy to server
run: |
mkdir -p ${{ env.DEV_PATH }} && cd ${{ env.DEV_PATH }} # 프로젝트 경로로 수정
if [ ! -d ${{ env.DEV_PATH }} ]; then
git clone -b dev ${{ env.GIT_URL }}
else
mkdir -p ${{ env.DEV_PATH }}/{projectName} && cd ${{ env.DEV_PATH }}/{projectName} # Create the directory if it doesn't exist
git pull origin dev # 변경 사항을 가져오기 test
fi
에러 발생
error: cannot open '.git/FETCH_HEAD': Permission denied
원인은 A와 B 사용자를 사용하면서 ssh key에는 A 사용자 밖에 등록되어있지 않기 때문에 같은 ssh key를 사용하면서 github actions를 사용하기 위해 B사용자의 work directory를 A 사용자가 사용할 수 있게 권한을 주면된다.
linux에서 직접 명령어 입력한다.
sudo chown -R $USER {해당 디렉토리}