direnv 사용법
2026. 3. 26. 18:41ㆍ기타/scripts
728x90
SMALL
zsh에서 direnv (핸즈온)
공식 문서: direnv.net — 아래는 여러 AWS 계정 쓸 때 AWS_PROFILE·kubectl 컨텍스트를 디렉터리마다 고정하는 한 번에 붙여 넣기 예시다. REPO만 본인 클론 경로로 바꾼 뒤 위에서 아래로 실행하면 된다.
# --- 최초 1회: 설치 + zsh 훅 ---
brew install direnv
grep -q 'direnv hook zsh' ~/.zshrc 2>/dev/null || echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc
source ~/.zshrc
# --- 레포 준비 (이 줄만 수정) ---
REPO=/path/to/repo
cd "$REPO"
# --- 루트 .envrc (플레이스홀더는 본인 값으로) ---
cat > .envrc <<'EOF'
export AWS_PROFILE=YOUR_AWS_PROFILE
export KUBECONFIG="${KUBECONFIG:-$HOME/.kube/config}"
kubectl config use-context arn:aws:eks:REGION:ACCOUNT_ID:cluster/CLUSTER_NAME >/dev/null 2>&1 || true
EOF
direnv allow .
# --- terraform/.envrc (루트와 별도 파일, source_up 한 줄. terraform/ 디렉터리 필요) ---
mkdir -p terraform
echo 'source_up' > terraform/.envrc
direnv allow terraform
# --- 확인 ---
cd "$REPO/terraform"
echo "AWS_PROFILE=$AWS_PROFILE"
kubectl config current-context
.envrc 내용을 고쳤으면 그 디렉터리에서 direnv allow 다시 실행한다.
728x90
LIST
'기타 > scripts' 카테고리의 다른 글
| MAC OS Bootstraping (0) | 2026.03.24 |
|---|---|
| k8s(eks) deployment 상태 확인 스크립트 (0) | 2024.11.19 |
| awslogs를 이용해서 cloudwatch logs를 시간대 별로 쿼리하는 방법 (0) | 2024.11.14 |
| ECR lifecycle policy 전체 repository 적용 (0) | 2023.06.28 |
| ip address location 확인하는 방법 (0) | 2023.06.09 |