-
다수의 프로젝트 병렬로 빌드&배포하기Developer 2024. 2. 6. 15:15728x90
> PC랑 M 프로젝트 실서버 배포 진행하겠습니다~
> git pull PC
> ... PC build ...
> ... PC baepo ...
> git pull M ...
> .........
저희 팀의 배포 방식은 순차대로 짜여진 쉘스크립트를 실행하는 방식입니다.
그냥 쉘스크립트 하나만 실행하기만 하면 두 개의 프로젝트가 빌드&배포가 되기에 편리했었죠.
하지만 PC가 빌드&배포 된 후, M이 빌드&배포가 되기에 하나의 프로젝트를 빌드&배포하는 것의 2배가 되는 시간이 걸리게 됩니다.🔑 두 프로젝트가 동시에 빌드&배포될 수는 없을까?
순차적으로 빌드&배포가 되어야 할 프로트트들이 아니라면 동시에 빌드&배포가 되면 시간을 좀 더 줄일 수 있지 않을까 싶었습니다.
빌드하는 작업을 백그라운드로 실행시키면 되지 않나?라는 생각으로 시작했습니다.쉘스크립트 명령어 중
&&
명령어를 자주 사용하게 되는데,&&
명령어는 앞의 명령어의 실행이 끝난 뒤 다음 명령어를 실행하도록 합니다.
이와 유사한&
명령어가 있습니다.&
명령어는 앞의 명령어를 백그라운드로 실행시키고 다음 명령어를 실행하도록 합니다.&
명령어를 활용하면 되겠다!🎊 &명령어로 병렬 실행하는 쉘 스크립트 만들기
#!/bin/bash # 작업 1을 백그라운드에서 실행 task1() { # 작업 1 실행 명령어 sleep 5 # 예시로 5초간 대기 echo "작업 1 완료" } # 작업 2를 백그라운드에서 실행 task2() { # 작업 2 실행 명령어 sleep 3 # 예시로 3초간 대기 echo "작업 2 완료" } # 작업 1 실행 task1 & # 작업 2 실행 task2 & # 모든 백그라운드 작업이 완료될 때까지 대기 wait echo "모든 작업 완료"
각각의 task를 만들고 그 task를
&
명령어로 백그라운드에 실행시키게 합니다.728x90'Developer' 카테고리의 다른 글
vite 빌드 시 콘솔 로그 제거하기 (0) 2024.02.16 Push 정책 설정하기 (0) 2024.02.07 팀즈 WebHook으로 에러 알림받기 (0) 2024.02.02 git actions로 ssh 접속하여 자동 배포 하기 (2) 2024.02.01 web push, 이렇게 쉬운거였어? (2) 2024.01.29