728x90 반응형 test4 [Cloud] Django: Code develop for TEST2 Github Actions 에서 work flow 를 분리했다. 이제 django 쪽에서 test 를 위한 일부 코드를 작성해 보자. TEST 를 위한 기능 디벨롭, 그리고 테스트 코드 실행 현재 제공하고 있는 기능은 Topic 을 생성하고 그 아래에 Post 들이 One to Many 의 형태로 묶여있는 구조이다. 또 부여된 그룹에 따라 권한이 달라져 접근하거나 작성하는데 제한을 두고 있다. 이 부분들을 테스트 하기 위해서는 유저를 생성하면서 권한을 부여하고, Topic 과 Post 를 생성하는 과정에서 권한을 체크하는 로직이 필요할 것이다. 이를 테스트 하기 위해서 로직을 구현해보자 장고의 로직 자체는 클라이언트가 urls 를 통해 요청을 보내면 views 에서 모델과 templates 을 엮어주는 .. Dev./Django & DRF 2023. 8. 31. [Cloud] Github Actions: Lint CI 단계에서 보면 개발자 여러명이서 작업을 하다보면 포맷팅이 각자 다르기 떄문에 몇가지 방식으로 통일해서 사용하자고 약속해 놓은 게 있다. 개발자들이 직접 기억하고 약속을 지킬 수 없으니 프로그램으로 돌려서 일치 시키게 해주는 것. 파이썬 린트 중 하나인 블랙을 설치해서 적용시켜보자 pip install black # 경로에 있는 모든 파일들을 점검하겠다. black . # 해당 경로아래에 있는 파일들만 점검하겠다. black --check lion_app 위 내용을 CI.yml 파일에 적용시켜보자 하고자 하는 작업 job 으로 분리하여 새로운 컨테이너를 만들고 checkout 하여 코드에 접근한뒤 python 을 셋팅하고 black 을 설치하여 확인하고자 하는 경로의 파일들을 점검 # CI.yml n.. Dev./Github Actions 2023. 8. 30. [Cloud] Github Actions: Code develop for TEST TEST 를 위한 기능 디벨롭 settings 파일 구분지어서 오버라이딩하기 각각의 개발환경에 맞는 settings 를 사용하기위해 settings 폴더구조로 각각의 settings.py 를 오버라이딩하여사용하게 한다. # base.py "기존에 있는 settings.py" # local.py # prod.py # staging.py 우선 로컬환경 에서 분리된 내용을 적용시키기 위해서는 wsgi 파일에서 경로를 수정해주어야 한다. # start #!/bin/sh # 파이썬 알파인을 쓰기 떄문에 bash 조차 없다.. 그래서 sh 로 python3 manage.py collectstatic --no-input python3 manage.py migrate gunicorn lion_app.wsgi:appli.. Dev./Github Actions 2023. 8. 29. [Cloud] CD: Github Actions - TEST & act Github actions act 자동 배포 과정도 테스트를 진행하면서 개발을 하게 되는데, 테스트를 해보기위해 계속해서 push 를 하거나 pull request 를 만드는 것은 비효율적이다. 이런 부분들을 자동화 하기위해서 act 를 사용한다. act 는 Github actions 워크플로우를 로컬의 개발환경에서 실행할 수 있게 해주는 오픈소스 도구이다. act 는 도커를 사용하기 때문에 도커가 깔려 있어야 하며 아래의 장점들을 가지고 있다. 디버깅 : 푸시하면서 디버깅 할 필요 없음 빠른 반복 : 원격 실행을 기다릴 필요가 없음 https://github.com/nektos/act GitHub - nektos/act: Run your GitHub Actions locally 🚀 Run your Gi.. Dev./Github Actions 2023. 8. 24. 이전 1 다음 728x90 반응형