From d63b276089c007dc851eec710afa5e2de73952b5 Mon Sep 17 00:00:00 2001 From: Yutaka Date: Sat, 27 Aug 2022 17:09:48 +0900 Subject: [PATCH 1/3] use development only targets with isDevelop flag --- Package.swift | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Package.swift b/Package.swift index aef077c..09c9ef3 100644 --- a/Package.swift +++ b/Package.swift @@ -3,6 +3,14 @@ import PackageDescription +let isDevelop = true + +let developTargets: [Target] = isDevelop ? [ + .testTarget( + name: "DangerSwiftPeripheryTests", + dependencies: ["DangerSwiftPeriphery"]), +] : [] + let package = Package( name: "DangerSwiftPeriphery", products: [ @@ -21,8 +29,5 @@ let package = Package( .product(name: "Danger", package: "swift"), .product(name: "periphery", package: "periphery"), ]), - .testTarget( - name: "DangerSwiftPeripheryTests", - dependencies: ["DangerSwiftPeriphery"]), - ] + ] + developTargets ) From 1118cdbe0f330688584c5ae00d3acf3e2be10a47 Mon Sep 17 00:00:00 2001 From: Yutaka Date: Sat, 27 Aug 2022 17:16:22 +0900 Subject: [PATCH 2/3] add danger-swift --- Dangerfile.swift | 6 ++++++ Package.swift | 12 +++++++++++- Sources/DangerDependencies/Fake.swift | 0 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 Dangerfile.swift create mode 100644 Sources/DangerDependencies/Fake.swift diff --git a/Dangerfile.swift b/Dangerfile.swift new file mode 100644 index 0000000..3af3068 --- /dev/null +++ b/Dangerfile.swift @@ -0,0 +1,6 @@ +import Danger +import DangerSwiftPeriphery + +DangerPeriphery.scan(arguments: [ + .retainPublic +]) diff --git a/Package.swift b/Package.swift index 09c9ef3..5bba155 100644 --- a/Package.swift +++ b/Package.swift @@ -5,10 +5,20 @@ import PackageDescription let isDevelop = true +let developProducts: [Product] = isDevelop ? [ + .library( + name: "DangerDeps", + type: .dynamic, + targets: ["DangerDependencies"]) +] : [] + let developTargets: [Target] = isDevelop ? [ .testTarget( name: "DangerSwiftPeripheryTests", dependencies: ["DangerSwiftPeriphery"]), + .target( + name: "DangerDependencies", + dependencies: ["DangerSwiftPeriphery"]), ] : [] let package = Package( @@ -17,7 +27,7 @@ let package = Package( .library( name: "DangerSwiftPeriphery", targets: ["DangerSwiftPeriphery"]), - ], + ] + developProducts, dependencies: [ .package(url: "https://github.com/danger/swift.git", from: "3.0.0"), .package(url: "https://github.com/peripheryapp/periphery", from: "2.0.0") diff --git a/Sources/DangerDependencies/Fake.swift b/Sources/DangerDependencies/Fake.swift new file mode 100644 index 0000000..e69de29 From ed7bfeef35c819e41fd36347ffcec1264fc7e556 Mon Sep 17 00:00:00 2001 From: Yutaka Date: Sat, 27 Aug 2022 17:29:23 +0900 Subject: [PATCH 3/3] added: run Danger on CI --- .github/workflows/danger.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/danger.yml diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml new file mode 100644 index 0000000..ec2bc24 --- /dev/null +++ b/.github/workflows/danger.yml @@ -0,0 +1,28 @@ +name: Danger + +on: + pull_request + +jobs: + danger: + runs-on: macos-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Cache dependencies + uses: actions/cache@v2 + with: + path: | + .build/artifacts + .build/checkouts + .build/repositories + key: ${{ runner.os }}-dependencies-${{ hashFiles('**/Package.resolved') }} + restore-keys: | + ${{ runner.os }}-dependencies-${{ hashFiles('**/Package.resolved') }} + ${{ runner.os }}-dependencies- + - name: Danger + run: | + brew install danger/tap/danger-swift + danger-swift ci + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}