목표

기존의 테스팅된 GitLab CI환경의 경우는 SQLite를 기반으로 테스팅 DB를 만들어 테스트 코드를 실행하였다

실제 개발 및 배포환경은 SQLite가 아닌 Postgresql에서 동작하도록 할 필요가 있기 때문에 이와 관련된 환경세팅이 완료되어야 한다는 생각이 들었다.


이번 프로젝트에서는 GitLab CI를 Postgresql에서 실행할 수 있도록 관련 설정을 구성하는 것이 목표이다.

예시 코드

https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Django.gitlab-ci.yml

위의 링크에 첨부된 예시 소스코드를 살펴보자, 위의 기본적인 python image에 postgresql 이미지를 붙여야한다.

테스트

먼저 직접적인 코드를 작성하기 전에, stage 밑에서 실행되는 job의 이미지가 어느 부분까지 연동이 될 수 있을 지 확인할 필요가 있었다.

→ 즉, 위의 test job에서 사용한 파이썬 이미지를 build에서 이용할 수 있을까(1)

→ 같은 stage에 있는 연동된 이미지를 사용할 수 있을까?(2)

Untitled

일단 결과는 다음과 같았다. 각 stage의 환경은 동시적으로 동작하기 때문에 job별로 독립적인 환경이 설정된다. 실패한 build2의 로그를 살펴보면 아래와 같다.

Untitled

사용된 파이썬 이미지가 공통으로 사용될 것이라고 예상하였지만 그렇지 않았음을 보여준다.