Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
989fed4
feat: 소식화면 StateFlow 적용
parkjiminnnn Nov 25, 2025
1ff88a5
feat: FAQ화면 StateFlow 적용
parkjiminnnn Nov 25, 2025
8a5b801
feat: 분실물 화면 StateFlow 적용
parkjiminnnn Nov 25, 2025
94124c6
refactor: 함수명 변경
parkjiminnnn Nov 25, 2025
06f9348
refactor: 프로퍼티 위치 변경
parkjiminnnn Nov 25, 2025
d70bf78
feat: Festabook Compose Shape 추가
parkjiminnnn Nov 26, 2025
c2664cc
refactor: newsClickListener제거
parkjiminnnn Nov 26, 2025
94c1993
feat: 공통 헤더 구현
parkjiminnnn Nov 26, 2025
faa8ed5
feat: 소식 화면 viewPager, tabLayout Compose마이그레이션
parkjiminnnn Nov 26, 2025
86cc75b
feat: Header 컴포저블 프리뷰 구현
parkjiminnnn Nov 26, 2025
c452e41
refactor: 위임으로 변경
parkjiminnnn Nov 26, 2025
0803163
feat: 알림 클릭시 화면 이동 기능 구현
parkjiminnnn Nov 26, 2025
5a82554
chore: 사용하지 않는 파일 제거
parkjiminnnn Nov 26, 2025
e50328f
refactor: 사용하지 않는 코드 제거
parkjiminnnn Nov 26, 2025
42beb6e
feat: 초기로딩 뷰 추가
parkjiminnnn Nov 26, 2025
fce5b7f
refactor: loadAllFAQs 호출 시 초기 로딩 상태 명시적 전달
parkjiminnnn Nov 26, 2025
74a5036
refactor: 소식 화면 컴포저블 구조 분리 및 개선
parkjiminnnn Nov 27, 2025
62ab991
feat: 프리뷰 구현
parkjiminnnn Nov 27, 2025
2c57ef5
refactor: modifier 선택인자 추가
parkjiminnnn Nov 27, 2025
839cf20
fix: 분실물 화면 새로고침 상태 확인 로직 수정
parkjiminnnn Nov 27, 2025
ba5df24
feat: 공통 spacing 적용
parkjiminnnn Nov 27, 2025
dde92db
feat: 공통 Shape 적용
parkjiminnnn Nov 27, 2025
134a09e
refactor: NewsViewModelTest 수정
parkjiminnnn Nov 28, 2025
633bcc8
[CI/CD] Android Ci, CD 워크플로우 작성 (#3)
oungsi2000 Nov 28, 2025
5faeee7
소식화면 ViewPager, TabLayout 마이그레이션
parkjiminnnn Dec 1, 2025
41295e0
chore: 사용하지 않는 파일 제거
parkjiminnnn Dec 1, 2025
bca7076
refactor: 공통 헤더 컴포넌트 이름 변경 및 Scaffold 적용
parkjiminnnn Dec 1, 2025
a61fa9a
style: 코드 포맷팅
parkjiminnnn Dec 1, 2025
507b68f
fix: NewsScreen Modifier 누락 수정 및 NewsTabRowPreview 테마 적용
parkjiminnnn Dec 1, 2025
e454246
refactor: StateFlow로 변경
parkjiminnnn Dec 2, 2025
2127ad4
feat: 일정 화면 ComposeUI 기초 구현
parkjiminnnn Dec 2, 2025
fb6e92e
refactor: NewsTabRow 컨텐츠 색상 설정 방식 변경
parkjiminnnn Dec 3, 2025
c95f70a
refactor: 네이밍 변경
parkjiminnnn Dec 3, 2025
6ea5b4f
[Feat] TimeTagSpinner Compose 마이그레이션 (#10)
oungsi2000 Dec 3, 2025
2f77110
feat: 일정 화면 탭 UI 구현
parkjiminnnn Dec 3, 2025
af8fa95
feat: 일정 아이템 카드 구현
parkjiminnnn Dec 9, 2025
831e0dc
refactor: 불필요한 함수 제거
parkjiminnnn Dec 9, 2025
9b9e426
feat: 일정 타임라인에 사용될 Lottie Circle 데이터 클래스 추가
parkjiminnnn Dec 9, 2025
39956b8
feat: 일정 아이템 카드 UI 구현
parkjiminnnn Dec 10, 2025
5bd8069
feat: 카드 배경색 적용
parkjiminnnn Dec 10, 2025
acd296f
fix: 소식 화면 레이아웃 패딩 수정
parkjiminnnn Dec 10, 2025
09f399f
feat: 일정 화면 Compose 마이그레이션
parkjiminnnn Dec 10, 2025
aa7d65b
refactor: VieModel 자동 DI 변경
parkjiminnnn Dec 10, 2025
b2c369b
전역 Ktlint 적용 및 기타 작업 수행 (#15)
oungsi2000 Dec 16, 2025
f6f69ec
[Feat] PlaceCategoryFragment Compose 마이그레이션 (#12)
oungsi2000 Dec 17, 2025
dbd60af
refactor: 일정 화면 UI 상태 관리 및 데이터 로딩 로직 개선
parkjiminnnn Dec 18, 2025
486cad8
fix: 일정 화면 새로고침 시 기존 데이터 유지 로직 수정
parkjiminnnn Dec 18, 2025
0eba44e
fix: ScheduleViewModel 데이터 로딩 로직 개선
parkjiminnnn Dec 18, 2025
4fda065
refactor: 일정 화면 UI 상태 구조 개선 및 로직 최적화
parkjiminnnn Dec 19, 2025
a5469ef
fix: Schedule 화면 성능 및 UX 개선
parkjiminnnn Dec 19, 2025
54cf5b1
feat: 일정 화면 현재 진행 중인 이벤트 위치로 자동 스크롤 기능 추가
parkjiminnnn Dec 19, 2025
670a838
refactor: ScheduleFragment의 메뉴 재클릭 로직 수정
parkjiminnnn Dec 19, 2025
12795eb
fix: 일정 화면 새로고침(Refreshing) 상태 추가 및 UI 로직 개선
parkjiminnnn Dec 19, 2025
b21e5ec
refactor: 일정 화면 ViewPager 및 탭 페이지 프래그먼트 제거
parkjiminnnn Dec 19, 2025
0076c56
feat: `ScheduleTabPage` 에러 발생 시 스택 트레이스 로그 추가
parkjiminnnn Dec 19, 2025
54562e4
fix: 진행 중인 일정 위치 계산 로직 수정
parkjiminnnn Dec 19, 2025
60c862a
feat(home): HomeHeader 컴포저블 추가
etama123 Dec 19, 2025
3af132e
feat(Home): HomeFestivalInfo 컴포저블 추가
etama123 Dec 19, 2025
bb90581
feat(home): HomeLineupHeader 컴포저블 추가
etama123 Dec 19, 2025
19e9842
feat(home): HomePosterList 컴포저블 구현 및 무한 스크롤 페이저 적용
etama123 Dec 19, 2025
f3c250c
[Feat] 한 눈에 보기 화면 Compose 마이그레이션 (#16)
oungsi2000 Dec 20, 2025
72136fa
feat: JUnit 5 마이그레이션 및 테스트 환경 설정
parkjiminnnn Dec 21, 2025
722f08f
refactor: ScheduleEventUiModel에서 북마크 상태 필드 제거
parkjiminnnn Dec 21, 2025
44db8ea
test: ScheduleViewModelTest 및 관련 코드 리팩토링
parkjiminnnn Dec 21, 2025
8baaf1e
refactor: ScheduleEventCard 리팩토링 및 색상 로직 분리
parkjiminnnn Dec 22, 2025
8c77188
refactor: Lottie 프로퍼티 호이스팅 적용
parkjiminnnn Dec 22, 2025
3f84cc5
refactor: Composable 어노테이션 제거
parkjiminnnn Dec 22, 2025
401b44b
refactor: ScheduleEventItem 코드 구조 개선 및 가독성 향상
parkjiminnnn Dec 22, 2025
35e2a38
refactor: `PullToRefreshContainer` 사용 방식 개선 및 리팩토링
parkjiminnnn Dec 22, 2025
c73796e
feat(home): 홈 화면 아티스트 및 라인업 아이템 컴포저블 구현
etama123 Dec 22, 2025
4f864cb
refactor: 일정 화면 탭 클릭 시 스크롤 애니메이션 적용
parkjiminnnn Dec 22, 2025
c76703e
fix: 일정 탭 빈 화면 스크롤 가능하도록 수정
parkjiminnnn Dec 22, 2025
7079e2c
refactor: 선택적 파라미터를 사용하도록 변경
parkjiminnnn Dec 23, 2025
af60091
refactor: 함수명 변경
parkjiminnnn Dec 23, 2025
e0ffb6f
refactor: 일정 화면 이벤트 프리로딩하도록 변경
parkjiminnnn Dec 23, 2025
45f2a76
fix: NewsScreen 내 Pager 구성 요소 레이아웃 수정
parkjiminnnn Dec 23, 2025
9ef8418
feat(home): 홈 화면 Compose 전환 및 관련 로직 리팩토링
etama123 Dec 26, 2025
920ea5c
refactor(home): 홈 화면 컴포저블 및 코드 정리
etama123 Dec 27, 2025
e9af718
Merge remote-tracking branch 'origin/develop' into feat/7
parkjiminnnn Dec 27, 2025
ff5e151
refactor: 일정 화면 컴포넌트 리팩토링 및 커스텀 Typography 적용
parkjiminnnn Dec 27, 2025
3e3d13c
[Feat] PlaceDetailPreviewFragment, PlaceDetailSecondPrevewFragment Co…
oungsi2000 Dec 28, 2025
e5f1ba3
refactor: Lottie 애니메이션 로직 위치 수정
parkjiminnnn Dec 28, 2025
5ea2cc3
[Feat] 일정화면 Compose 마이그레이션
parkjiminnnn Dec 28, 2025
0ce44cf
refactor(Home): 홈 화면 UI 컴포즈 컴포넌트 리팩토링 및 스타일 개선
etama123 Dec 28, 2025
e0c981e
refactor(Home): LineupUiState 데이터 구조 변경
etama123 Dec 28, 2025
a9d84b4
refactor(HomeLineupItem): 날짜 영역 레이아웃 및 디바이더 구현 방식 변경
etama123 Dec 28, 2025
f849f6f
refactor(Home): 홈 화면 문자열 리소스 정리 및 접근성 개선
etama123 Dec 28, 2025
1e98ebb
refactor(HomeViewModel): `@Inject` 어노테이션 위치 수정
etama123 Jan 2, 2026
9427a8f
refactor(MainActivity): BottomNavigationView의 중복 선택 방지 및 flow 수집 방식 변경
etama123 Jan 2, 2026
c8325fe
refactor(HomeFestivalInfo): Column 내부 padding 적용 및 개별 Text padding 제거
etama123 Jan 2, 2026
dba3acb
build: Landscapist 라이브러리 의존성 추가
etama123 Jan 7, 2026
db92686
feat(common): FestabookImage 공통 컴포저블 구현
etama123 Jan 7, 2026
aec51d3
feat(home): 홈 화면 UI 상태 관리 로직 개선 및 `FestabookImage` 적용
etama123 Jan 7, 2026
ff3745a
Merge branch 'develop' into feat/11
etama123 Jan 7, 2026
14522f3
style(MainActivity, HomeFragment, etc): 코드 포맷팅 및 스타일 가이드 적용
etama123 Jan 7, 2026
88cbab0
style(HomeArtistItem, HomeLineupItem, HomePosterList, FestabookImage)…
etama123 Jan 7, 2026
85477d6
refactor(Home): 디자인 시스템 적용 및 Fragment 주입 방식 리팩토링
etama123 Jan 7, 2026
69775f6
test(HomeViewModelTest): LiveData를 StateFlow로 전환함에 따른 테스트 코드 리팩토링
etama123 Jan 7, 2026
a417c29
[Feat] 홈화면 Compose 마이그레이션
etama123 Jan 7, 2026
b2cccb4
refactor: Coil3 SingletonImageLoader 도입 및 전역 설정 최적화
parkjiminnnn Jan 9, 2026
882f58d
refactor:Context 참조 방식 변경
parkjiminnnn Jan 9, 2026
ccb23b4
refactor: 장소 목록 이미지 URL 변환 로직 적용
parkjiminnnn Jan 12, 2026
e3f1d12
[Refactor] CoilImageLoader를 싱글톤으로 변경
parkjiminnnn Jan 12, 2026
d4a4ff4
[Feat] 설정화면 Compose 마이그레이션 (#26)
oungsi2000 Jan 13, 2026
a3ec48f
[Feat] PlaceMap의 하위 Fragment 제거 및 MVI 아키텍쳐 적용 (#24)
oungsi2000 Jan 13, 2026
9e8cc52
[Feat] PlaceDetailActivity Compose 마이그레이션 (#25)
oungsi2000 Jan 13, 2026
144d4a1
feat(Splash): SplashUiState 인터페이스 정의
etama123 Jan 17, 2026
183fd2f
feat(Splash): 스플래시 화면에서 사용할 다이얼로그 컴포저블 추가
etama123 Jan 17, 2026
e7b5f9e
refactor(Splash): 코드 포맷팅 및 파라미터 순서 변경
etama123 Jan 18, 2026
4f36432
refactor(Splash): ViewModel 상태 관리를 LiveData에서 StateFlow로 변경
etama123 Jan 18, 2026
4ff90b8
refactor(Splash): 화면을 Compose로 전환하고 로직 개선
etama123 Jan 18, 2026
f6df42a
[Chore] 리팩토링에 사용된 중복된 코드 제거 (#30)
oungsi2000 Jan 19, 2026
6e4f11e
refactor(Splash): 로컬 데이터 조회 시 IO 스레드 사용
etama123 Jan 20, 2026
616708f
feat(Splash): 스플래시 다이얼로그 외부 클릭 및 뒤로가기 방지
etama123 Jan 20, 2026
fdfd8cc
test(Splash): ViewModel 테스트에 `verify` 구문 추가
etama123 Jan 20, 2026
b360f56
test(Splash): SplashViewModel 테스트 수정 및 개선
etama123 Jan 20, 2026
66fb85e
[Feat] Splash 화면 컴포즈 마이그레이션
etama123 Jan 20, 2026
6bc11a6
[Feat] BottomNavigationBar Compose 마이그레이션 (#32)
oungsi2000 Jan 21, 2026
4d5c907
[Feat] 리뷰 리마인더 시스템 도입 (#39)
taek2222 Jan 27, 2026
ef292c3
[Refactor] GitHub 알림 메시지 포맷 고도화 (#42)
taek2222 Jan 27, 2026
f81f606
[Feat] MainActivity Compose 연동 및 하위 Fragment 제거 (#40)
oungsi2000 Jan 28, 2026
c013482
[Feat] SnackbarHost 설정 및 Snackbar Compose 마이그레이션 (#47)
oungsi2000 Jan 30, 2026
184a5fc
refactor(Schedule): 기존 View 기반 RecyclerView Adapter 및 ViewHolder 제거
parkjiminnnn Feb 2, 2026
0aadfee
[Fix] Notification 잘못된 요청 응답 시, 방어적 로직 작성 (#49)
oungsi2000 Feb 4, 2026
57f8984
refactor: 불필요한 supervisorScope 제거
parkjiminnnn Feb 4, 2026
8d8de9b
refactor: 변수명 변경
parkjiminnnn Feb 5, 2026
51847da
feat: 에러상태 화면 구현
parkjiminnnn Feb 5, 2026
02d2ed8
feat: content description 정의
parkjiminnnn Feb 5, 2026
8d9e6b0
fix: 에러 상태에 새로고침이 불가하던 문제 해결
parkjiminnnn Feb 5, 2026
e7bf9a0
refactor: ScheduleEventsUiState 구조 개선
parkjiminnnn Feb 5, 2026
7603a85
refactor(LoadingStateScreen): Lottie 애니메이션 재생 제어 파라미터 추가
parkjiminnnn Feb 5, 2026
899b87f
refactor(schedule): `ScheduleUiState` 데이터 구조 개선 및 상태 처리 로직 리팩토링
parkjiminnnn Feb 5, 2026
16c1058
test(Schedule): ScheduleUiState 및 ScheduleEventsUiState 데이터 구조 변경 반영
parkjiminnnn Feb 6, 2026
4edf8b9
refactor: 변수명 변경
parkjiminnnn Feb 9, 2026
12361fd
Merge pull request #51 from festabook/fix/48
parkjiminnnn Feb 9, 2026
ca461df
[Feat] 탐색화면 Compose 마이그레이션 (#50)
etama123 Feb 10, 2026
03baf85
refactor(news): 공지사항 화면 에러/빈 상태 처리 및 스크롤 경험 개선
parkjiminnnn Feb 11, 2026
3096ff2
refactor(news): FAQ 및 분실물 화면의 에러 상태 UI 개선 및 레이아웃 수정
parkjiminnnn Feb 12, 2026
e384e2e
refactor(news): `NoticeUiState` 구조 변경 및 관련 컴포넌트 리팩토링
parkjiminnnn Feb 14, 2026
fa42411
refactor(news): 분실물 UI 상태 구조 개선 및 `isRefreshing` 통합
parkjiminnnn Feb 14, 2026
249beb4
test(News): NewsViewModel 단위 테스트 코드 리팩토링
parkjiminnnn Feb 15, 2026
5aeaffa
refactor(LostItemScreen): 분실물 목록 화면 레이아웃 구조 개선
parkjiminnnn Feb 15, 2026
fad4f84
[Refactor] 축제 관련 api 변경에 따른 마이그레이션 (#54)
etama123 Feb 16, 2026
c7cc2fd
[Fix] 소식화면 에러상태, 빈화면 새로고침 불가 문제 해결
parkjiminnnn Feb 22, 2026
d66cc68
[Fix] 타임태그가 없을 때에도 상세페이지 클릭되도록 변경 (#59)
oungsi2000 Feb 24, 2026
304abb2
[Feat] Splash, Explore 액티비티 Main과 연동 (#57)
oungsi2000 Feb 27, 2026
158b9a7
[Fix]: 플랫폼 종속적인 로직을 Composable 함수로 추출 (#62)
oungsi2000 Mar 2, 2026
b1d5768
[Fix] Explore - Main 연동 시 푸시알림 관련 버그 이슈 (#63)
oungsi2000 Mar 3, 2026
bf42455
build: 앱 버전 업데이트 (v1.2.1 -> v2.0.0)
parkjiminnnn Mar 4, 2026
abfe8cc
[Release] 앱 버전 업데이트 (v1.2.1 -> v2.0.0)
parkjiminnnn Mar 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
127 changes: 0 additions & 127 deletions .coderabbit.yaml

This file was deleted.

3 changes: 2 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
[*.{kt,kts}]
ktlint_standard_annotation = disabled
ktlint_function_naming_ignore_when_annotated_with = Composable
ktlint_function_naming_ignore_when_annotated_with = Composable
compose_allowed_composition_locals = LocalColor, LocalShapes, LocalSpacing, LocalTypography
122 changes: 122 additions & 0 deletions .github/scripts/review-reminder.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
module.exports = async ({github, context, core}) => {

// 최소 PR 생성 시간
const LIMIT_HOURS = 12;
const LIMIT_MS = LIMIT_HOURS * 60 * 60 * 1000;

const WEBHOOK_URL = process.env.SLACK_WEBHOOK_REVIEW;

// GitHub, Slack 정보
const USER_MAP = {
'etama123': 'U0995MPSZ62',
'oungsi2000': 'U098U2R57NK',
'parkjiminnnn': 'U098U8SLXHD'
};

const repoName = context.repo.repo;

if (!WEBHOOK_URL) {
core.setFailed("❌ Error: SLACK_WEBHOOK_REVIEW 환경변수가 설정되지 않았습니다.");
return;
}

try {
// GitHub API 호출로 Open PR 목록 요청
const {data: prs} = await github.rest.pulls.list({
owner: context.repo.owner,
repo: context.repo.repo,
state: 'open', // 오픈 PR
sort: 'created', // 정렬 기준
direction: 'asc' // 오름차순
});

const now = new Date();
const delayedPrs = []; // 알림 대상

for (const pr of prs) {
const createdDate = new Date(pr.created_at);
const diffTime = now - createdDate; // PR 생성 시간 차이 (ms)

if (diffTime >= LIMIT_MS) {

// 리뷰어 정보 가공 (없으면 '미지정' 처리)
const reviewers = pr.requested_reviewers.length > 0
? pr.requested_reviewers.map(r => {
const slackId = USER_MAP[r.login];
return slackId ? `<@${slackId}>` : r.login;
}).join(', ')
: '(리뷰어 미지정)';

// 지난 시간
const passedHours = Math.floor(diffTime / (1000 * 60 * 60));

const authorSlackId = USER_MAP[pr.user.login];
const authorDisplay = authorSlackId ? `<@${authorSlackId}>` : pr.user.login;

// 알림 전송 객체 생성
delayedPrs.push({
title: pr.title,
url: pr.html_url,
author: authorDisplay,
reviewers: reviewers,
hours: passedHours
});
}
}

// 지연 PR 없을 시 종료
if (delayedPrs.length === 0) {
return;
}

const message = {
text: `🚨 (${repoName}) 코드 리뷰 리마인더`,
blocks: [
{
"type": "header",
"text": {
"type": "plain_text",
"text": `🔥 (${repoName}) 코드 리뷰 리마인더`,
"emoji": true
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": `현재 *${LIMIT_HOURS}시간* 이상 대기 중인 PR이 *${delayedPrs.length}건* 있습니다.`
}
},
{"type": "divider"}
]
};

// 지연 PR 하나씩 메시지 추가
delayedPrs.forEach((pr, index) => {
message.blocks.push({
"type": "section",
"text": {
"type": "mrkdwn",
"text": `*${index + 1}. <${pr.url}|${pr.title}>*\n` +
`⏳ *${pr.hours}시간* 경과\n` +
`👤 작성자: ${pr.author}\n` +
`👀 리뷰어: ${pr.reviewers}`
}
});
message.blocks.push({"type": "divider"});
});

const response = await fetch(WEBHOOK_URL, {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify(message)
});

if (!response.ok) {
throw new Error(`Slack 전송 실패 Status: ${response.status}`);
}

} catch (error) {
core.setFailed(`❌ 스크립트 실행 중 에러 발생: ${error.message}`);
}
};
36 changes: 18 additions & 18 deletions .github/workflows/android-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,17 @@ name: Android CI

on:
pull_request:
# 'main' 또는 'android' 브랜치로 PR이 병합될 때 트리거
branches:
- main
- develop
# 'android' 디렉토리 내의 파일이 변경되었을 때만 워크플로우를 실행
path:
- '/**'

jobs:
Run-PR-Test:
runs-on: ubuntu-latest
defaults:
run:
working-directory: android

permissions:
contents: write
checks: write

steps:
- name: Repository Checkout
Expand All @@ -34,14 +31,16 @@ jobs:
~/.gradle/caches
~/.gradle/wrapper
~/.android/build-cache
key: ${{ runner.os }}-gradle-${{ hashFiles('android/**/build.gradle.kts', 'android/**/settings.gradle.kts', 'android/**/gradle-wrapper.properties', 'android/gradle/libs.versions.toml', 'android/**/gradle.properties') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('**/build.gradle.kts', '**/settings.gradle.kts', '**/gradle-wrapper.properties', 'gradle/libs.versions.toml', '**/gradle.properties') }}
restore-keys: |
${{ runner.os }}-gradle-

- name: Create local.properties with BASE_URL
run: |
echo BASE_URL=\"${{ secrets.BASE_URL }}\" > local.properties
echo BASE_URL=\"${{ secrets.BASE_URL }}\" >> local.properties
echo BASE_URL_DEV=\"${{ secrets.BASE_URL_DEV }}\" >> local.properties
echo IMAGE_BASE_URL=\"${{ secrets.IMAGE_BASE_URL }}\" >> local.properties
echo IMAGE_BASE_URL_DEV=\"${{ secrets.IMAGE_BASE_URL_DEV }}\" >> local.properties
echo NAVER_MAP_CLIENT_ID=\"${{ secrets.NAVER_MAP_CLIENT_ID }}\" >> local.properties
echo NAVER_MAP_STYLE_ID=\"${{ secrets.NAVER_MAP_STYLE_ID }}\" >> local.properties

Expand All @@ -52,8 +51,7 @@ jobs:

- name: Restore keystore file
run: |
mkdir -p app
echo "$KEYSTORE_BASE64" | base64 --decode > ./app/festabook_appkey.jks
echo "$KEYSTORE_BASE64" | base64 --decode > app/festabook_appkey.jks
echo "JKS_FILE_PATH=./app/festabook_appkey.jks" >> local.properties
echo "STORE_PASSWORD=${{ secrets.STORE_PASSWORD }}" >> local.properties
echo "KEY_ALIAS=${{ secrets.KEY_ALIAS }}" >> local.properties
Expand All @@ -62,20 +60,22 @@ jobs:
env:
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}

- name: Clean Project
run: ./gradlew clean

- name: Run ktlint
run: ./gradlew ktlintCheck

- name: Run Unit Test
run: ./gradlew test

- name: Run Debug Unit Test (for Develop PRs)
if: github.base_ref == 'develop'
run: ./gradlew testDebugUnitTest

- name: Run Release Unit Test (for Main PRs)
if: github.base_ref == 'main'
run: ./gradlew testReleaseUnitTest

- name: Publish Unit Test Results
if: always()
uses: EnricoMi/publish-unit-test-result-action@v2
with:
files: android/app/build/test-results/**/TEST-*.xml
files: app/build/test-results/**/TEST-*.xml
check_name: '테스트 결과 🛠️'
check_run_annotations: 'none'
comment_mode: 'off'
Loading
Loading