diff --git "a/.github/ISSUE_TEMPLATE/\360\237\217\204\360\237\217\276-feature-template.md" "b/.github/ISSUE_TEMPLATE/\360\237\217\204\360\237\217\276-feature-template.md" new file mode 100644 index 0000000..815ad38 --- /dev/null +++ "b/.github/ISSUE_TEMPLATE/\360\237\217\204\360\237\217\276-feature-template.md" @@ -0,0 +1,18 @@ +--- +name: "\U0001F3C4\U0001F3FE Feature Template" +about: "Feature 개발 시 생성해주세요. \U0001F64F\U0001F3FB" +title: "[Feature] 기능 이름" +labels: '' +assignees: '' + +--- + +## 어떤 기능인가요? +> 기능을 설명해주세요. + +## 작업 내용 +- [ ] TO-DO +- [ ] TO-DO +- [ ] TO-DO + +## 참고할만한 사항(Optional) diff --git "a/.github/ISSUE_TEMPLATE/\360\237\220\233-bug-report-template.md" "b/.github/ISSUE_TEMPLATE/\360\237\220\233-bug-report-template.md" new file mode 100644 index 0000000..3270299 --- /dev/null +++ "b/.github/ISSUE_TEMPLATE/\360\237\220\233-bug-report-template.md" @@ -0,0 +1,19 @@ +--- +name: "\U0001F41B Bug Report Template" +about: "Bug 발견 시에 작성해 주세요. \U0001F423" +title: "[BUG] 버그 내용(간단하게!)" +labels: '' +assignees: '' + +--- + +## 어떤 버그인가요? +> 어떤 버그인지 간단하게 설명해주세요. + +## 어떻게 재현할 수 있나요? +> 가능한 구체적으로 적어주세요.(사진도 좋아요!) + +## 기대 결과 +> 기존에 원하던 결과는 무엇인가요? (사진도 좋아요!) + +## 참고할만한 사항(Optional) diff --git a/.github/workflows/pullRequest.yml b/.github/workflows/pullRequest.yml index 1d55203..5de1019 100644 --- a/.github/workflows/pullRequest.yml +++ b/.github/workflows/pullRequest.yml @@ -11,10 +11,6 @@ jobs: runs-on: macos-13 steps: - uses: actions/checkout@v3 - - # - uses: maxim-lobanov/setup-xcode@v1 - # with: - # xcode-version: '15.4' - name: Access Available run: chmod +x Scripts/onboarding.sh @@ -35,5 +31,33 @@ jobs: run: mise exec -- tuist install - name: Build and Test + id: build_and_test shell: bash -l {0} run: mise exec -- tuist test PPACIOS-Workspace + + notify-success: + name: Notify Discord on Success + runs-on: ubuntu-latest + needs: build + if: success() + steps: + - name: Notify Discord + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} + uses: Ilshidur/action-discord@master + with: + args: "✅ PR Build Tests passed for \nPR: ${{ github.event.pull_request.title }}. \nPR URL: ${{ github.event.pull_request.html_url }}" + + notify-failure: + name: Notify Discord on Failure + runs-on: ubuntu-latest + needs: build + if: failure() + steps: + - name: Notify Discord + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} + uses: Ilshidur/action-discord@master + with: + args: "❌ PR Build Tests failed for \nPR: ${{ github.event.pull_request.title }}.\nPR URL: ${{ github.event.pull_request.html_url }}" + diff --git a/Makefile b/Makefile index ba34f95..7142155 100644 --- a/Makefile +++ b/Makefile @@ -2,17 +2,7 @@ USER_NAME = $(shell python3 Scripts/author_name.py) CURRENT_DATE = $(shell pipenv run python Scripts/current_date.py) bootstrap: - @curl https://mise.run | sh - @echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc - @echo 'export PATH="$HOME/.local/share/mise/shims:$PATH"' >> ~/.zprofile - @source ~/.zshrc - @arch -arm64 brew install pipenv - @arch -arm64 brew install fastlane - @fastlane match development --readonly - @fastlane match appstore --readonly - @mise install - @tuist install - @tuist generate + @./Scripts/bootstrap.sh # e.g. make core name=모듈이름 core: @@ -34,4 +24,4 @@ feature: --author "$(USER_NAME)" \ --current-date "$(CURRENT_DATE)" - @tuist edit \ No newline at end of file + @tuist edit diff --git a/Matchfile b/Matchfile index 8c43829..087bbaf 100644 --- a/Matchfile +++ b/Matchfile @@ -4,8 +4,7 @@ storage_mode("git") type("development") # The default type, can be: appstore, adhoc, enterprise or development -# app_identifier(["tools.fastlane.app", "tools.fastlane.app2"]) -# username("user@fastlane.tools") # Your Apple Developer Portal username +app_identifier(["ppac.farmeme.App"]) # For all available options run `fastlane match --help` # Remove the # in the beginning of the line to enable the other options diff --git a/Projects/Core/PPACUtil/Project.swift b/Projects/Core/PPACUtil/Project.swift new file mode 100644 index 0000000..0f0d0d8 --- /dev/null +++ b/Projects/Core/PPACUtil/Project.swift @@ -0,0 +1,26 @@ +// +// Project.swift +// PPACUtil +// +// Created by kimchansoo on 2024/06/09 +// + +import ProjectDescription +import ProjectDescriptionHelpers + +let project = Project( + name: "PPACUtil", + targets: [ + .configure( + name: "PPACUtil", + product: .framework, + infoPlist: .default, + sources: "Sources/**", + resources: "Resources/**", + dependencies: [ + + ] + ) + ] +) + diff --git a/Projects/Core/PPACUtil/Resources/dummy.swift b/Projects/Core/PPACUtil/Resources/dummy.swift new file mode 100644 index 0000000..2ad55c7 --- /dev/null +++ b/Projects/Core/PPACUtil/Resources/dummy.swift @@ -0,0 +1 @@ +더미임미다 \ No newline at end of file diff --git a/Projects/Core/PPACUtil/Sources/dummy.swift b/Projects/Core/PPACUtil/Sources/dummy.swift new file mode 100644 index 0000000..2ad55c7 --- /dev/null +++ b/Projects/Core/PPACUtil/Sources/dummy.swift @@ -0,0 +1 @@ +더미임미다 \ No newline at end of file diff --git a/Scripts/bootstrap.sh b/Scripts/bootstrap.sh new file mode 100644 index 0000000..3242cb3 --- /dev/null +++ b/Scripts/bootstrap.sh @@ -0,0 +1,27 @@ +#!/bin/zsh + +set -e + +# mise 설치 +curl https://mise.run | sh + +# 환경설정 추가 +echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc +echo 'export PATH="$HOME/.local/share/mise/shims:$PATH"' >> ~/.zprofile + +# zsh 다시 시작 +exec zsh + +# 필요한 도구 설치 +arch -arm64 brew install pipenv fastlane + +# fastlane 설정 +fastlane match development --readonly +fastlane match appstore --readonly + +# mise, tuist 설치 +mise install +tuist install + +# tuist generate 실행 +tuist generate diff --git a/Tuist/ProjectDescriptionHelpers/TargetDependency+.swift b/Tuist/ProjectDescriptionHelpers/TargetDependency+.swift index 99cb33a..df97432 100644 --- a/Tuist/ProjectDescriptionHelpers/TargetDependency+.swift +++ b/Tuist/ProjectDescriptionHelpers/TargetDependency+.swift @@ -18,6 +18,7 @@ extension TargetDependency { public static let DesignSystem = project(moduleName: "DesignSystem") public static let PPACModels = project(moduleName: "PPACModels") public static let PPACNetwork = project(moduleName: "PPACNetwork") + public static let PPACUtil = project(moduleName: "PPACUtil") } public struct ThirdParty {