Skip to content

🔀 :: [#414] CI 스크립트 개선 #842

🔀 :: [#414] CI 스크립트 개선

🔀 :: [#414] CI 스크립트 개선 #842

name: BITGOUEL-IOS-CI
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "*" ]
env:
CACHED_DEPENDENCY_PATHS: ${{ github.workspace }}/Tuist/.build
jobs:
prepare-dependency:
name: ⚙️ Prepare-Dependency
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- uses: jdx/mise-action@v2
with:
xcode-version: 15.2
- name: Install tuist
run: mise install tuist
- name: Compute dependency cache key
id: compute_hash
run: echo "hash=${{ hashFiles('Tuist/Package.swift') }}" >> $GITHUB_OUTPUT
- name: Check dependency cache
uses: actions/cache@v3
id: cache_dependencies
with:
path: ${{ env.CACHED_DEPENDENCY_PATHS }}
key: ${{ steps.compute_hash.outputs.hash }}
- name: Install dependencies
if: steps.cache_dependencies.outputs.cache-hit == ''
run: tuist install
outputs:
dependency_cache_key: ${{ steps.compute_hash.outputs.hash }}
test:
name: 🧪 Test
runs-on: macos-latest
needs: prepare-dependency
steps:
- uses: actions/checkout@v2
- uses: jdx/mise-action@v2
with:
xcode-version: 15.2
- name: Install tuist
run: mise install tuist
- name: Check dependency cache
uses: actions/cache@v3
id: cache_dependencies
with:
path: ${{ env.CACHED_DEPENDENCY_PATHS }}
key: ${{ needs.prepare-dependency.outputs.dependency_cache_key }}
- name: Install dependencies
if: steps.cache_dependencies.outputs.cache-hit != 'true'
run: tuist install
- name: Test with tuist
run: TUIST_ENV=CI tuist test
- name: Bitgouel iOS CI Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ success() }}
with:
title: ✅ Bitgouel-iOS-CI 성공! ✅
webhook: ${{ secrets.BITGOUEL_DISCORD_WEBHOOK }}
color: 00FF00
- name: Bitgouel iOS CI Discord Notification
uses: sarisia/actions-status-discord@v1
if: ${{ failure() }}
with:
title: ❗️ Bitgouel-iOS-CI 실패! ❗️
webhook: ${{ secrets.BITGOUEL_DISCORD_WEBHOOK }}
color: FF0000