Skip to content

Weekly Meetup Issue Creator #4

Weekly Meetup Issue Creator

Weekly Meetup Issue Creator #4

name: Weekly Meetup Issue Creator
on:
schedule:
- cron: '0 13 * * 0' # 매주 일요일 13:00 UTC (22:00 KST)
workflow_dispatch:
jobs:
create-meetup-issue:
runs-on: ubuntu-latest
permissions:
issues: write
repository-projects: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Calculate Values and Create Issue
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# 1. 기준 설정 (2026-03-28이 280회)
BASE_DATE="2026-03-28"
BASE_COUNT=280
# 2. 타겟 날짜 계산 (일요일 실행 기준 +6일 = 다가오는 토요일)
TARGET_DATE=$(date -d "+6 days" +%Y-%m-%d)
# 3. 회차(Count) 계산 (날짜 차이 이용)
# 기준일로부터 타겟일까지의 일수(days)를 계산합니다.
DAYS_DIFF=$(( ($(date -d "$TARGET_DATE" +%s) - $(date -d "$BASE_DATE" +%s)) / 86400 ))
WEEKS_DIFF=$(( DAYS_DIFF / 7 ))
NEXT_COUNT=$(( BASE_COUNT + WEEKS_DIFF ))
# 4. 연도, 분기, 프로젝트 이름 계산
YEAR=$(date -d "$TARGET_DATE" +'%Y')
MONTH=$(date -d "$TARGET_DATE" +%-m)
QUARTER=$(((MONTH - 1) / 3 + 1))
MILESTONE="${YEAR} ${QUARTER}Q"
PROJECT_NAME="${YEAR} Online study meetup"
NEXT_TITLE="${NEXT_COUNT}th online meetup, ${TARGET_DATE}"
echo "Target Title: $NEXT_TITLE"
echo "Milestone: $MILESTONE / Project: $PROJECT_NAME"
# 5. 새 이슈 생성
gh issue create \
--title "$NEXT_TITLE" \
--body "## Weekly Online Study Meetup ($TARGET_DATE)\n자동 생성된 주간 미트업 이슈입니다." \
--assignee "jongfeel" \
--label "$YEAR" \
--project "$PROJECT_NAME" \
--milestone "$MILESTONE"