Cache:Push fails with ReactNative

See the log below. I’m using a default Cache:Push step in a ReactNative project. It seems it generates an error.

Only guess i have that it’s because the .lock files are ignored by change checks.

How can i fix this?

Thanks!

+------------------------------------------------------------------------------+
| (9) cache-push@1.1.3                                                         |
+------------------------------------------------------------------------------+
| id: cache-push                                                               |
| version: 1.1.3                                                               |
| collection: https://github.com/bitrise-io/bitrise-steplib.git                |
| toolkit: go                                                                  |
| time: 2017-08-03T02:44:59-07:00                                              |
+------------------------------------------------------------------------------+
|                                                                              |
2017/08/03 02:45:03 => stepParams: main.StepParamsModel{PathItems:[]main.StepParamsPathItemModel{main.StepParamsPathItemModel{Path:"/var/folders/90/5stft2v13fb_m_gv3c8x9nwc0000gn/T/cache051489155", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/.gradle", IndicatorFilePath:"/Users/vagrant/git/gradle_deps.lock"}, main.StepParamsPathItemModel{Path:"/Users/vagrant/.kotlin", IndicatorFilePath:"/Users/vagrant/git/gradle_deps.lock"}, main.StepParamsPathItemModel{Path:"/Users/vagrant/.m2", IndicatorFilePath:"/Users/vagrant/git/gradle_deps.lock"}, main.StepParamsPathItemModel{Path:"/Users/vagrant/.android/build-cache", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/android/.gradle", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/android/app/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/android/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/babel-jest/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/babel-plugin-jest-hoist/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/core-js/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/duplexer2/node_modules/isarray/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/escodegen/node_modules/source-map/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/fbjs/node_modules/core-js/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/fbjs-scripts/node_modules/core-js/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/handlebars/node_modules/source-map/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-changed-files/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-cli/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-config/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-diff/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-docblock/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-environment-jsdom/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-environment-node/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-haste-map/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-jasmine2/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-matcher-utils/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-matchers/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-message-util/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-mock/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-regex-util/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-resolve/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-resolve-dependencies/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-runtime/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-snapshot/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-util/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/jest-validate/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/mime/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/multiparty/node_modules/isarray/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/parse5/docs/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/pretty-format/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/react-devtools-core/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/common/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/react-native/node_modules/fbjs/node_modules/core-js/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/send/node_modules/mime/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/node_modules/stream-counter/node_modules/isarray/build", IndicatorFilePath:""}, main.StepParamsPathItemModel{Path:"/Users/vagrant/git/ios/Pods", IndicatorFilePath:"/Users/vagrant/git/ios/Podfile.lock"}}, IgnoreCheckOnPaths:[]string{"~/.gradle/**", "~/.android/build-cache/**", "*.lock", "*.bin", "/**/build/**.json", "/**/build/**.html", "/**/build/**.xml", "/**/build/**.properties", "/**/build/**/zip-cache/**", "*.log", "*.txt", "*.rawproto", "*.ap_", "*.apk"}, IgnorePathsInArchive:[]string{"*.ap_", "*.apk"}, CacheAPIURL:"https://bitrise-build-cache.herokuapp.com/cache/7b67386583fcb3af/ClnJdLYoOza8_LMOIJAxjA", CompareCacheInfoPath:"", IsDebugMode:true, FingerprintMethodID:"file-content-hash", CompressArchive:false}
2017/08/03 02:45:03 [34;1m=> Provided list of paths to cache:[0m
2017/08/03 02:45:03  * /var/folders/90/5stft2v13fb_m_gv3c8x9nwc0000gn/T/cache051489155
2017/08/03 02:45:03  * /Users/vagrant/.gradle
2017/08/03 02:45:03  * /Users/vagrant/.kotlin
2017/08/03 02:45:03  * /Users/vagrant/.m2
2017/08/03 02:45:03  * /Users/vagrant/.android/build-cache
2017/08/03 02:45:03  * /Users/vagrant/git/android/.gradle
2017/08/03 02:45:03  * /Users/vagrant/git/android/app/build
2017/08/03 02:45:03  * /Users/vagrant/git/android/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/babel-jest/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/babel-plugin-jest-hoist/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/core-js/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/duplexer2/node_modules/isarray/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/escodegen/node_modules/source-map/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/fbjs/node_modules/core-js/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/fbjs-scripts/node_modules/core-js/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/handlebars/node_modules/source-map/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-changed-files/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-cli/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-config/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-diff/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-docblock/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-environment-jsdom/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-environment-node/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-haste-map/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-jasmine2/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-matcher-utils/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-matchers/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-message-util/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-mock/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-regex-util/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-resolve/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-resolve-dependencies/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-runtime/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-snapshot/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-util/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/jest-validate/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/mime/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/multiparty/node_modules/isarray/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/parse5/docs/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/pretty-format/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/react-devtools-core/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/common/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/react-native/node_modules/fbjs/node_modules/core-js/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/send/node_modules/mime/build
2017/08/03 02:45:03  * /Users/vagrant/git/node_modules/stream-counter/node_modules/isarray/build
2017/08/03 02:45:03  * /Users/vagrant/git/ios/Pods
2017/08/03 02:45:03  [33;1m(!) Skipping[0m (/Users/vagrant/.kotlin): Specified path does not exist
2017/08/03 02:45:03  [33;1m(!) Skipping[0m (/Users/vagrant/.m2): Specified path does not exist
2017/08/03 02:45:03  [33;1m(!) Skipping[0m (/Users/vagrant/.android/build-cache): Specified path does not exist

2017/08/03 02:45:03 [32;1m=> (Filtered) Paths to cache:[0m
2017/08/03 02:45:03  [32;1m*[0m /var/folders/90/5stft2v13fb_m_gv3c8x9nwc0000gn/T/cache051489155
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/.gradle [32;1m->[0m /Users/vagrant/git/gradle_deps.lock
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/android/.gradle
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/android/app/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/android/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/babel-jest/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/babel-plugin-jest-hoist/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/core-js/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/duplexer2/node_modules/isarray/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/escodegen/node_modules/source-map/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/fbjs/node_modules/core-js/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/fbjs-scripts/node_modules/core-js/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/handlebars/node_modules/source-map/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-changed-files/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-cli/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-config/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-diff/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-docblock/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-environment-jsdom/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-environment-node/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-haste-map/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-jasmine2/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-matcher-utils/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-matchers/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-message-util/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-mock/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-regex-util/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-resolve/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-resolve-dependencies/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-runtime/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-snapshot/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-util/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/jest-validate/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/mime/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/multiparty/node_modules/isarray/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/parse5/docs/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/pretty-format/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/react-devtools-core/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/react-native/ReactAndroid/src/main/java/com/facebook/react/common/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/react-native/node_modules/fbjs/node_modules/core-js/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/send/node_modules/mime/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/node_modules/stream-counter/node_modules/isarray/build
2017/08/03 02:45:03  [32;1m*[0m /Users/vagrant/git/ios/Pods [32;1m->[0m /Users/vagrant/git/ios/Podfile.lock

2017/08/03 02:45:03 [33;1m=> Ignore change-check on paths:[0m
2017/08/03 02:45:03  [33;1mx[0m ~/.gradle/**
2017/08/03 02:45:03  [33;1mx[0m ~/.android/build-cache/**
2017/08/03 02:45:03  [33;1mx[0m *.lock
2017/08/03 02:45:03  [33;1mx[0m *.bin
2017/08/03 02:45:03  [33;1mx[0m /**/build/**.json
2017/08/03 02:45:03  [33;1mx[0m /**/build/**.html
2017/08/03 02:45:03  [33;1mx[0m /**/build/**.xml
2017/08/03 02:45:03  [33;1mx[0m /**/build/**.properties
2017/08/03 02:45:03  [33;1mx[0m /**/build/**/zip-cache/**
2017/08/03 02:45:03  [33;1mx[0m *.log
2017/08/03 02:45:03  [33;1mx[0m *.txt
2017/08/03 02:45:03  [33;1mx[0m *.rawproto
2017/08/03 02:45:03  [33;1mx[0m *.ap_
2017/08/03 02:45:03  [33;1mx[0m *.apk

2017/08/03 02:45:03 [34;1mNo base Cache Info found for compare[0m
2017/08/03 02:45:03 [34;1mNew cache will be created ...[0m

2017/08/03 02:45:03 [34;1m=> Calculating Fingerprint ...[0m
2017/08/03 02:45:03 ==> Fingerprint method: file-content-hash
2017/08/03 02:45:03 [33;1m (i) No fingerprint generated for path: (/var/folders/90/5stft2v13fb_m_gv3c8x9nwc0000gn/T/cache051489155) - no file found to generate one[0m
2017/08/03 02:45:03  ==> Using Indicator File as fingerprint source: /Users/vagrant/git/gradle_deps.lock
2017/08/03 02:45:03  [IGNORE] path from fingerprint: /Users/vagrant/git/gradle_deps.lock
2017/08/03 02:45:03  [!] Failed to calculate fingerprint: Failed to generate fingerprint for path - no file found to generate one: /Users/vagrant/git/gradle_deps.lock
[33mWARN[0m[02:45:03] Step (cache-push@1.1.3) failed, but was marked as skippable

Hi @q42tims,

This issue is related to a previous Gradle Runner step version. Just upgrade the Gradle Runner step in your workflow and that should solve the issue.

Hi @viktorbenei,

Thanks for the quick response! Upgrading the Gradle Runner seems to work partially. Now i’m getting the error for the Podfile.lock. Any suggestions for that?

2017/08/03 04:17:24  ==> Using Indicator File as fingerprint source: /Users/vagrant/git/ios/Podfile.lock
2017/08/03 04:17:24  [IGNORE] path from fingerprint: /Users/vagrant/git/ios/Podfile.lock
2017/08/03 04:17:24  [!] Failed to calculate fingerprint: Failed to generate fingerprint for path - no file found to generate one: /Users/vagrant/git/ios/Podfile.lock
e[33mWARNe[0m[04:17:24] Step (cache-push@1.1.3) failed, but was marked as skippable 

Thanks!

Do you use the latest CocoaPods Installer step?

Everything is on the latest version.

This is my yml file (replaced some sensitive data to xxx):

---
format_version: '3'
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git
project_type: react-native
trigger_map:
- push_branch: develop
  workflow: Release
- push_branch: "*"
  workflow: Test
workflows:
  Test:
    steps:
    - yarn@0.0.4:
        title: Yarn Test
        inputs:
        - command: run test
    - xcode-test@1.18.6: {}
    - deploy-to-bitrise-io@1.3.6: {}
    before_run:
    - Prepare
  Prepare:
    steps:
    - activate-ssh-key@3.1.1:
        run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}'
    - git-clone@3.5.1: {}
    - install-react-native@0.9.1: {}
    - cache-pull@1.0.0: {}
    - yarn@0.0.4:
        title: Run yarn
    - install-missing-android-tools@1.0.3: {}
    - gradle-runner@1.7.6:
        inputs:
        - gradle_file: "$GRADLE_BUILD_FILE_PATH"
        - gradle_task: assembleRelease
        - gradlew_path: "$GRADLEW_PATH"
    - certificate-and-profile-installer@1.8.7: {}
    - cocoapods-install@1.7.1:
        inputs:
        - podfile_path: "./ios/Podfile"
    - cache-push@1.1.3:
        inputs:
        - cache_paths: "$BITRISE_CACHE_DIR"
        - is_debug_mode: 'true'
  Release:
    steps:
    - yarn@0.0.4:
        inputs:
        - command: run test
        title: Yarn run test
    - xcode-test@1.18.6: {}
    - xcode-archive@2.1.0:
        inputs:
        - project_path: "$BITRISE_PROJECT_PATH"
        - scheme: "$BITRISE_SCHEME"
        - configuration: Release
    - deploy-to-bitrise-io@1.3.6: {}
    - hockeyapp-deploy@2.4.2:
        inputs:
        - api_token: xxx
        - notify: '0'
        - notes: "$BITRISE_GIT_COMMIT"
    before_run:
    - Prepare
app:
  envs:
  - opts:
      is_expand: false
    GRADLE_BUILD_FILE_PATH: android/build.gradle
  - opts:
      is_expand: false
    GRADLEW_PATH: android/gradlew
  - opts:
      is_expand: false
    BITRISE_PROJECT_PATH: ios/xxx.xcworkspace
  - opts:
      is_expand: false
    BITRISE_SCHEME: xxx

Can you please send us the build’s URL (via the onsite support chat, or email - https://www.bitrise.io/contact)? I’ll need the whole build log, at least the CocoaPods and the Cache:Push steps’

Thanks for sharing your yml file.
One question though: do you have the cache working for yarn?
Can you share what you’re actually caching?

My issue at the moment is that when I run yarn (after the cache as been set, at least it seems it’s working) the process takes a lot of time…so I’m not sure if I need to do some check for cache, if yarn understands that it should cache or something else…

Thanks

Hi @joaomamede

Can you perhaps contact us on our on-site support chat to discuss this? :slight_smile:

@bitce I’ve found this and decided to give a try. Seems to be working but I’d wish to have a less “hacky” way to do this.

1 Like