Skip to content

Add GitHub Action: Google Calendar integration for meetup issues#566

Merged
jongfeel merged 3 commits into
mainfrom
feature/google-calendar-integration
Jun 1, 2026
Merged

Add GitHub Action: Google Calendar integration for meetup issues#566
jongfeel merged 3 commits into
mainfrom
feature/google-calendar-integration

Conversation

@jongfeel
Copy link
Copy Markdown
Member

@jongfeel jongfeel commented Jun 1, 2026

Summary

매주 새 모각코 이슈가 생성될 때 자동으로 Google Calendar에 이벤트를 등록하고, assignee를 guest로 추가하는 GitHub Action 추가.

워크플로우 구성

1. add-to-google-calendar.yml — 이슈 생성 시 캘린더 이벤트 생성

  • 트리거: issues: opened
  • 이슈 제목에서 회차와 날짜 파싱 (Nth online meetup, YYYY-MM-DD)
  • Google Calendar에 이벤트 생성 (토요일 10:30~12:30 KST)
  • 이후 assignee 조회를 위해 이슈 번호를 이벤트의 extendedProperties에 저장

2. add-assignee-to-calendar.yml — Assignee 할당 시 캘린더 guest 추가

  • 트리거: issues: assigned
  • 새로 할당된 GitHub 계정의 이메일을 아래 순서로 조회
    1. GitHub 계정의 public email
    2. (없을 경우) CALENDAR_EMAIL_MAP repository variable에서 username으로 조회
    3. 둘 다 없으면 skip + 안내 메시지 출력
  • 이슈 번호로 캘린더 이벤트 검색 (최대 3회 재시도, 15초 간격)
  • 해당 이벤트에 guest로 추가 (중복 방지)

등록되는 이벤트 정보

항목 내용
제목 온라인 모각코 N회
시간 매주 토요일 10:30 ~ 12:30 KST
장소 https://meet.google.com/jyx-mxnq-kpk
설명 Google Meet 링크 + Issue URL
Guest Assignee 이메일 (아래 조회 순서 참고)

필요한 GitHub Secrets

Secret 설명
GOOGLE_SERVICE_ACCOUNT_KEY Service Account JSON 키 전체 내용
GOOGLE_CALENDAR_ID 공유 팀 캘린더 ID

필요한 GitHub Variables (선택)

Variable 설명
CALENDAR_EMAIL_MAP GitHub username → Google Calendar 이메일 매핑 (JSON 형식)

Settings → Secrets and variables → Actions → Variables 탭에서 추가.

{"username1": "email1@gmail.com", "username2": "email2@gmail.com"}

워크플로우 로그에서 아래 메시지가 출력되면 해당 사용자를 추가하면 됩니다.

Skipping {login}: no email found. Add '{login}: <email>' to CALENDAR_EMAIL_MAP variable to enable.

jongfeel and others added 3 commits June 1, 2026 18:54
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…issing

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jongfeel jongfeel self-assigned this Jun 1, 2026
@jongfeel jongfeel added the 2026 label Jun 1, 2026
@jongfeel jongfeel moved this to In progress in 2026 Online study meetup Jun 1, 2026
@jongfeel jongfeel added this to the 2026 2Q milestone Jun 1, 2026
@jongfeel jongfeel merged commit 66fcd1f into main Jun 1, 2026
1 check passed
@jongfeel jongfeel deleted the feature/google-calendar-integration branch June 1, 2026 10:38
@github-project-automation github-project-automation Bot moved this from In progress to Done in 2026 Online study meetup Jun 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant