black, isort, mypy, 테스트 묶기

seongolee·2022년 3월 6일
0

Django

목록 보기
5/8

프로젝트 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 의 기능은 스크립트의 명령을 실행하다가 중간에 실패하는 경우에 더이상 진행하지 않게 합니다.

profile
천천히 깊이 있게 개발하려고 노력하는 벨로그입니다.

0개의 댓글