You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.6 KiB
52 lines
2.6 KiB
# --- Slack --- |
|
# Bot User OAuth Token (xoxb-...). Scopes 필요: chat:write, users:read.email, im:write |
|
SLACK_BOT_TOKEN=xoxb-your-token |
|
|
|
# 기본 Slack 채널(채널 ID C... 또는 #채널명). 두 가지 용도: |
|
# 1) 수신한 모든 이벤트(push 포함)를 이 채널에 요약 브로드캐스트 |
|
# 2) 담당자 이메일을 Slack에서 못 찾았을 때 fallback |
|
# 비우면 채널 출력/ fallback 모두 안 함(담당자 DM만). |
|
DEFAULT_SLACK_CHANNEL= |
|
|
|
# 에러(slog.Error) 발생 시 알림을 보낼 모니터링 채널(선택, 예: monitor-dev). |
|
# 채널 ID(C...) 권장. 봇을 해당 채널에 초대해야 함. 비우면 에러 알림 안 보냄(로그만). |
|
MONITOR_SLACK_CHANNEL= |
|
|
|
# --- Gitea --- |
|
# Gitea webhook 설정 시 입력한 Secret. HMAC-SHA256 서명 검증에 사용. |
|
GITEA_WEBHOOK_SECRET= |
|
|
|
# 모든 Gitea 이벤트를 DEFAULT_SLACK_CHANNEL로 브로드캐스트할지 on/off (기본 off). |
|
# off면 담당자 개인 DM만 발송. on이면 DM + 채널 브로드캐스트 둘 다. |
|
GITEA_BROADCAST=off |
|
|
|
# --- Notion --- |
|
# Notion webhook subscription 검증 토큰 (서명 검증용) |
|
NOTION_VERIFICATION_TOKEN= |
|
# Notion Internal Integration Token (ntn_... / secret_...). 페이지/유저 조회에 사용. |
|
NOTION_API_TOKEN= |
|
# 알림 대상이 들어있는 Notion People 속성 이름들 (콤마 구분, 모두 수신자에 포함) |
|
NOTION_ASSIGNEE_PROPERTY=담당자,처리자,참조인원 |
|
|
|
# --- App --- |
|
# 수동 유저 매핑 저장 파일 (관리 페이지에서 편집) |
|
MAPPING_FILE=data/mappings.json |
|
# 리슨 주소 |
|
ADDR=:8000 |
|
|
|
# --- 로깅 (환경별) --- |
|
# 환경은 실행 명령어 -env 플래그로 분기: `go run . -env dev` | `-env prod` |
|
# dev → text 포맷 + debug 레벨, 콘솔(IDE)만 출력 |
|
# prod → json 포맷 + info 레벨, logs/app.log 파일로 추출 (+ stdout) |
|
# (APP_ENV는 -env 미지정 시의 fallback일 뿐. 보통 안 써도 됨) |
|
# APP_ENV=dev |
|
# 아래 셋은 비우면 환경에 따라 자동 결정됨. 명시하면 오버라이드. |
|
# LOG_LEVEL=debug # debug | info | warn | error |
|
# LOG_FORMAT=text # text | json |
|
# LOG_FILE=logs/app.log # 경로 지정 시 stdout + 날짜별 파일 동시 기록. dev에서 비우면 콘솔만, |
|
# # prod에서 비우면 자동으로 logs/app.log 사용 |
|
# # 실제 파일은 날짜별로 회전됨: logs/app-YYYY-MM-DD.log |
|
# LOG_RETENTION_DAYS=7 # 날짜별 로그 파일 보존 일수(오늘 포함). 기본 7일, 초과분 자동 삭제 |
|
|
|
# (선택) 저사양 환경에서 메모리 상한 가이드 — Go 런타임이 이 아래로 유지하려 함 |
|
# GOMEMLIMIT=200MiB
|
|
|