From 67874655fa85c60a9e83b96f3aacd047a64e25ac Mon Sep 17 00:00:00 2001 From: Matt Bishop Date: Wed, 26 Jun 2024 15:45:23 -0400 Subject: [PATCH] Replace Danger / Shroud with Codecov (#3363) --- .github/workflows/build.yml | 2 +- .github/workflows/test.yml | 24 +++++++------- Gemfile | 2 -- Gemfile.lock | 62 ++++--------------------------------- README.md | 10 ------ fastlane/Fastfile | 4 +-- 6 files changed, 22 insertions(+), 82 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 530d9c5a5..348e85bed 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -75,7 +75,7 @@ jobs: bundle install --jobs 4 --retry 3 - name: Check - run: bundle exec fastlane test + run: bundle exec fastlane check - name: Build run: bundle exec fastlane assembleDebugApks diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9fe836008..65f984aaf 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -68,17 +68,19 @@ jobs: distribution: "temurin" java-version: ${{ env.JAVA_VERSION }} - - name: Build and test - # Run checks on standard variant only because release and beta builds are not configured to - # work properly with the Compose testing library. F-Droid related tasks are also skipped as - # there is no significant code difference between the builds. + - name: Install Fastlane run: | - ./gradlew testStandardDebug \ - lintStandardDebug \ - detektStandardDebug \ - koverXmlReportStandardDebug + gem install bundler:2.2.27 + bundle config path vendor/bundle + bundle install --jobs 4 --retry 3 - - name: Danger + - name: Build and test + run: | + bundle exec fastlane check + + - name: Upload to codecov.io + uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.5.0 + with: + file: app/build/reports/kover/reportDebug.xml env: - DANGER_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: bundle exec danger + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/Gemfile b/Gemfile index 1831d95e1..32ff93118 100644 --- a/Gemfile +++ b/Gemfile @@ -2,8 +2,6 @@ source "https://rubygems.org" ruby File.read(".ruby-version").strip -gem 'danger' -gem 'danger-shroud' gem 'fastlane' gem 'time' diff --git a/Gemfile.lock b/Gemfile.lock index 656464a9c..11f30a8ec 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -10,17 +10,17 @@ GEM artifactory (3.0.17) atomos (0.1.3) aws-eventstream (1.3.0) - aws-partitions (1.946.0) - aws-sdk-core (3.197.2) + aws-partitions (1.947.0) + aws-sdk-core (3.199.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.8) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.85.0) - aws-sdk-core (~> 3, >= 3.197.0) + aws-sdk-kms (1.87.0) + aws-sdk-core (~> 3, >= 3.199.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.152.3) - aws-sdk-core (~> 3, >= 3.197.0) + aws-sdk-s3 (1.154.0) + aws-sdk-core (~> 3, >= 3.199.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.8) aws-sigv4 (1.8.0) @@ -28,34 +28,10 @@ GEM babosa (1.0.4) base64 (0.2.0) claide (1.1.0) - claide-plugins (0.9.2) - cork - nap - open4 (~> 1.3) colored (1.2) colored2 (3.1.2) commander (4.6.0) highline (~> 2.0.0) - cork (0.3.0) - colored2 (~> 3.1) - danger (9.4.3) - claide (~> 1.0) - claide-plugins (>= 0.9.2) - colored2 (~> 3.1) - cork (~> 0.1) - faraday (>= 0.9.0, < 3.0) - faraday-http-cache (~> 2.0) - git (~> 1.13) - kramdown (~> 2.3) - kramdown-parser-gfm (~> 1.0) - no_proxy_fix - octokit (>= 4.0) - terminal-table (>= 1, < 4) - danger-plugin-api (1.0.0) - danger (> 2.0) - danger-shroud (0.0.7) - danger-plugin-api (~> 1.0) - nokogiri date (3.3.4) declarative (0.0.20) digest-crc (0.6.5) @@ -82,8 +58,6 @@ GEM faraday-em_http (1.0.0) faraday-em_synchrony (1.0.0) faraday-excon (1.1.0) - faraday-http-cache (2.5.1) - faraday (>= 0.8) faraday-httpclient (1.0.1) faraday-multipart (1.0.4) multipart-post (~> 2) @@ -140,9 +114,6 @@ GEM google-apis-firebaseappdistribution_v1 (~> 0.3.0) google-apis-firebaseappdistribution_v1alpha (~> 0.2.0) gh_inspector (1.1.3) - git (1.19.1) - addressable (~> 2.8) - rchardet (~> 1.8) google-apis-androidpublisher_v3 (0.54.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-core (0.11.3) @@ -191,34 +162,18 @@ GEM json (2.7.2) jwt (2.8.2) base64 - kramdown (2.4.0) - rexml - kramdown-parser-gfm (1.1.0) - kramdown (~> 2.0) mini_magick (4.13.1) mini_mime (1.1.5) - mini_portile2 (2.8.7) multi_json (1.15.0) multipart-post (2.4.1) nanaimo (0.3.0) - nap (1.1.0) naturally (2.2.1) nkf (0.2.0) - no_proxy_fix (0.1.2) - nokogiri (1.16.6) - mini_portile2 (~> 2.8.2) - racc (~> 1.4) - octokit (9.1.0) - faraday (>= 1, < 3) - sawyer (~> 0.9) - open4 (1.3.4) optparse (0.5.0) os (1.1.4) plist (3.7.1) public_suffix (6.0.0) - racc (1.8.0) rake (13.2.1) - rchardet (1.8.0) representable (3.2.0) declarative (< 0.1.0) trailblazer-option (>= 0.1.1, < 0.2.0) @@ -229,9 +184,6 @@ GEM rouge (2.0.7) ruby2_keywords (0.0.5) rubyzip (2.3.2) - sawyer (0.9.2) - addressable (>= 2.3.5) - faraday (>= 0.17.3, < 3) security (0.1.5) signet (0.19.0) addressable (~> 2.8) @@ -271,8 +223,6 @@ PLATFORMS ruby DEPENDENCIES - danger - danger-shroud fastlane fastlane-plugin-firebase_app_distribution time diff --git a/README.md b/README.md index 9f7197fa4..5f47d9e30 100644 --- a/README.md +++ b/README.md @@ -210,16 +210,6 @@ The following is a list of additional third-party dependencies used as part of t The following is a list of additional third-party dependencies used as part of the CI/CD workflows. These are not present in the final packaged application. -- **Danger** - - https://github.com/danger/danger - - Purpose: Provides a system for enforcing common Pull Request rules. - - License: MIT - -- **Danger Shroud** - - https://github.com/livefront/danger-shroud - - Purpose: A Danger plugin for enforcing code coverage via Kover / Jacoco. - - License: Apache 2.0 - - **Fastlane** - https://fastlane.tools/ - Purpose: Automates building, signing, and distributing applications. diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 321e01cf5..a778bf7a0 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -105,8 +105,8 @@ platform :android do ) end - desc "Runs Standard Debug tests and generates Kover report." - lane :test do + desc "Runs Standard Debug tests and generates Kover report" + lane :check do gradle( tasks: ["testStandardDebug", "lintStandardDebug", "detektStandardDebug", "koverXmlReportStandardDebug"] )