プランまで追加する
This commit is contained in:
parent
57fea674e7
commit
ab32a9e825
9
.github/workflows/deploy_to_gcp.yml
vendored
9
.github/workflows/deploy_to_gcp.yml
vendored
@ -17,6 +17,7 @@ jobs:
|
|||||||
REPO_NAME: ${{ github.repository }}
|
REPO_NAME: ${{ github.repository }}
|
||||||
HASH_SUFFIX: ${{ github.sha }}
|
HASH_SUFFIX: ${{ github.sha }}
|
||||||
JOB_NAME: ${{ vars.JOB_NAME }}
|
JOB_NAME: ${{ vars.JOB_NAME }}
|
||||||
|
HASH_SUFFIX: ${{ github.sha }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
@ -27,7 +28,7 @@ jobs:
|
|||||||
echo "Checking gcloud and terraform versions..."
|
echo "Checking gcloud and terraform versions..."
|
||||||
gcloud --version
|
gcloud --version
|
||||||
terraform --version
|
terraform --version
|
||||||
|
|
||||||
- name: Check Gcloud auth
|
- name: Check Gcloud auth
|
||||||
run: |
|
run: |
|
||||||
echo "HOME: ${HOME}"
|
echo "HOME: ${HOME}"
|
||||||
@ -45,11 +46,17 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
export GOOGLE_APPLICATION_CREDENTIALS="$HOME/sa.json"
|
export GOOGLE_APPLICATION_CREDENTIALS="$HOME/sa.json"
|
||||||
./scripts/deploy/init_terraform.sh
|
./scripts/deploy/init_terraform.sh
|
||||||
|
|
||||||
- name: Exec Container Image Push to Artifact Registry
|
- name: Exec Container Image Push to Artifact Registry
|
||||||
run: |
|
run: |
|
||||||
export GOOGLE_APPLICATION_CREDENTIALS="$HOME/sa.json"
|
export GOOGLE_APPLICATION_CREDENTIALS="$HOME/sa.json"
|
||||||
./scripts/deploy/build_image_to_gar.sh
|
./scripts/deploy/build_image_to_gar.sh
|
||||||
|
|
||||||
|
- name: Exec Terraform init shell
|
||||||
|
run: |
|
||||||
|
export GOOGLE_APPLICATION_CREDENTIALS="$HOME/sa.json"
|
||||||
|
./scripts/deploy/plan_terraform.sh
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# steps:
|
# steps:
|
||||||
|
|||||||
@ -7,7 +7,7 @@ REGION=${REGION:-asia-northeast1}
|
|||||||
ENV=${ENV:-dev}
|
ENV=${ENV:-dev}
|
||||||
JOB_NAME=${JOB_NAME}
|
JOB_NAME=${JOB_NAME}
|
||||||
AR_REPO_NAME="cicd-repo-${ENV}"
|
AR_REPO_NAME="cicd-repo-${ENV}"
|
||||||
HASH_SUFFIX=${HASH_SUFFIX:-$(date +%s)}
|
HASH_SUFFIX=${HASH_SUFFIX}
|
||||||
|
|
||||||
# IMAGE_URIの設定
|
# IMAGE_URIの設定
|
||||||
# ローカル実行時は epoch 秒で自動採番。
|
# ローカル実行時は epoch 秒で自動採番。
|
||||||
@ -32,4 +32,3 @@ gcloud builds submit --tag "${IMAGE_URI}" .
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
24
scripts/deploy/plan_terraform.sh
Executable file
24
scripts/deploy/plan_terraform.sh
Executable file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Safe mode(when error,kill script)
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# 変数の設定({HOME}/hash.txt からハッシュ値を取得)
|
||||||
|
HASH_SUFFIX=${HASH_SUFFIX}
|
||||||
|
|
||||||
|
TF_DIR=${TF_DIR:-terraform}
|
||||||
|
ENV=${ENV:-dev}
|
||||||
|
|
||||||
|
cd "$TF_DIR"
|
||||||
|
|
||||||
|
if [ -f "${ENV}.tfvars" ]; then
|
||||||
|
terraform plan \
|
||||||
|
-out=tfplan \
|
||||||
|
-var-file="${ENV}.tfvars" \
|
||||||
|
-var="hash_suffix=${HASH_SUFFIX}"
|
||||||
|
|
||||||
|
else
|
||||||
|
# error raise
|
||||||
|
echo "ERROR: ${ENV}.tfvars not found in $(pwd)" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
12
terraform/dev.tfvars
Normal file
12
terraform/dev.tfvars
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
project_id = "gcp-devel-project"
|
||||||
|
region = "asia-northeast1"
|
||||||
|
env_name = "dev"
|
||||||
|
|
||||||
|
job_name = "base"
|
||||||
|
# コンテナイメージ(CI/CDから渡される想定)
|
||||||
|
|
||||||
|
cpu_limit = "1"
|
||||||
|
memory_limit = "512Mi"
|
||||||
|
timeout = "1800s"
|
||||||
|
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user