CI 를 위한 데이터베이스 설정
1. terraform plan
아래 명령어를 입력하면
postgres 데이터베이스의 비밀번호를 입력하라는 창이 나온다.
docker-compose -f deploy/docker-compose.yml run --rm terraform plan
위와 같은 변수 입력창이 나오는 이유는
variables.tf
에 데이터베이스의 username과 password 관련 description을 입력했기 때문이다.
2. sample.tfvars 생성
최상위 경로에 위치한 deploy 디렉토리 안에
sample.tfvars
파일을 생성한다.
- sample.tfvars
db_username = "recipeapp"
db_password = "changeme"
마찬가지로
최상위 경로에 위치한 deploy 디렉토리 안에
terraform.tfvars
파일을 생성한다.
- terraform.tfvars
db_username = "recipeapp"
db_password = "changeme"
이제 다시 아래 명령어를 입력해보자. 무엇이 달라졌을까
docker-compose -f deploy/docker-compose.yml run --rm terraform plan
초기와 같이
username과 password 를 입력하라고 하지 않는다.
이제 코드를 CI pipeline을 통해 staging서버에 배포해보자.
3. gitlab 셋팅 변경
gitlab에 접속하여 해당하는 프로젝트를 찾자.
좌측의 settgins
-> CI/CD
를 클릭하자.
환경변수를 추가하자.
데이터베이스 변수관련 설정을 끝마쳤으니
staging 서버에 배포를 해보자.
merge request 하자.
4. 과제
- database.tf
resource "aws_db_instance" "main" {
engine = "mysql"
engine_version = "5.7"
instance_class = "db.t2.micro"
username = "user"
password = "password"
allocated_storage = 5
skip_final_snapshot = true
}
Author And Source
이 문제에 관하여(CI 를 위한 데이터베이스 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@khh180cm/CI-를-위한-데이터베이스-설정저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)