diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 5990d9c..d8071a9 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,3 +1,31 @@ +# Dependabot configuration file +# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates + +version: 2 +updates: + # Swift Package Manager dependencies + - package-ecosystem: "swift" + directory: "/" + schedule: + interval: "weekly" + day: "monday" + time: "09:00" + timezone: "Asia/Tokyo" + open-pull-requests-limit: 10 + commit-message: + prefix: "deps(swift):" + + # GitHub Actions dependencies + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + day: "monday" + time: "09:00" + timezone: "Asia/Tokyo" + open-pull-requests-limit: 5 + commit-message: + prefix: "deps(actions):" # To get started with Dependabot version updates, you'll need to specify which # package ecosystems to update and where the package manifests are located. # Please see the documentation for all configuration options: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b4eeab5 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,72 @@ +name: CI + +on: + push: + branches: + - master + - main + pull_request: + branches: + - master + - main + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build (${{ matrix.platform }}) + runs-on: macos-latest + strategy: + fail-fast: false + matrix: + platform: [iOS, watchOS] + include: + - platform: iOS + destination: "platform=iOS Simulator,name=iPhone 15,OS=latest" + - platform: watchOS + destination: "platform=watchOS Simulator,name=Apple Watch Series 9 (45mm),OS=latest" + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Select Xcode + run: sudo xcode-select -s /Applications/Xcode.app + + - name: Show Xcode version + run: xcodebuild -version + + - name: Build Swift Package + run: | + xcodebuild build \ + -scheme MaterialDesignSymbol \ + -destination "${{ matrix.destination }}" \ + -skipPackagePluginValidation \ + | xcpretty || true + + swift-build: + name: Swift Build + runs-on: macos-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Select Xcode + run: sudo xcode-select -s /Applications/Xcode.app + + - name: Build with Swift + run: swift build + + pod-lint: + name: CocoaPods Lint + runs-on: macos-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Lint Podspec + run: pod lib lint --allow-warnings