프로젝트 root directory 에 test.sh 을 만들어주고, 아래의 코드를 추가해준다.
# mac version #!/usr/bin/env zsh set -euo pipefail export COLOR_GREEN='\e[0;32m' export COLOR_NC='\e[0m' # No Color echo "Run black" poetry run black . echo "Run isort" poetry run isort . echo "Run mypy" poetry run mypy . echo "Run tests" python manage.py test echo "${COLOR_GREEN}You are good to go!${COLOR_NC}"
# window version #!/usr/bin/env bash echo "Run black" poetry run black . echo "Run isort" poetry run isort . echo "Run mypy" poetry run mypy . echo "Run tests" python manage.py test echo "Done. Please check above." sleep 9999
test.sh 실행, Terminal에서 아래의 코드를 실행해줍니다.
./test.sh
맥의 경우는 zsh: permission denied: ./test.sh 라는 메시지와 함께 실행이 되지 않았다면,
Terminal 에서 아래와 같이 입력해 실행 권한을 주어야 합니다.sudo chmod 777 ./test.sh
#!/usr/bin/env zsh
#!(Shebang, 쉬뱅)은 리눅스를 위한 장치이며 리눅스에선 이파일을 어떤 프로그램을 이용해서 읽을 것인지를 설정해주어야합니다. 그 이유는 window 같은 환경에서는 확장자를 통해 연결 프로그램이 정해져있지만, Linux 같은 경우에는 쉬뱅을 통해 설정을 해주어야 합니다.
set -euo pipefail
pipefail 의 기능은 스크립트의 명령을 실행하다가 중간에 실패하는 경우에 더이상 진행하지 않게 합니다.