Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Making sure a .post action is executed last as BuildPhase #505

Closed
parse opened this issue Sep 19, 2019 · 0 comments · Fixed by #506
Closed

Making sure a .post action is executed last as BuildPhase #505

parse opened this issue Sep 19, 2019 · 0 comments · Fixed by #506
Assignees
Labels
type:bug Something isn't working

Comments

@parse
Copy link

parse commented Sep 19, 2019

Describe the bug
First of all, thanks for the amazing work you've done on Tuist. I started working on an app yesterday and its moving along quite nicely.

I have an issue with adding Fabric as the last build phase step. According to Pedro (on twitter, https://twitter.com/pedropbuendia/status/1174655179129536512?s=20) any action I've added should be added last. I find that is not necessarily the case.

To Reproduce
Steps to reproduce the behavior:

Add a step such as:

actions: [
    .post(
      path: "./Scripts/fabric.sh",
      arguments: [],
      name: "Fabric",
      inputPaths: ["$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)"]
    )
  ],

For context, this is my entire target:

let obfuscatedName = Target(
  name: "obfuscatedName",
  platform: .iOS,
  product: .app,
  productName: "obfuscatedName",
  bundleId: "obfuscatedName",
  infoPlist: "Profiles/obfuscatedName/Info.plist",
  sources: ["Sources/**"],
  resources: [
    "Profiles/obfuscatedName/Resources/LaunchScreen.xib",
    "Profiles/obfuscatedName/Resources/Images.xcassets",
    "Profiles/obfuscatedName/Resources/GoogleService-Info.plist"
  ],
  actions: [
    .pre(path: "./Scripts/swiftlint.sh", arguments: [], name: "Swiftlint"),
    .post(
      path: "./Scripts/fabric.sh",
      arguments: [],
      name: "Fabric",
      inputPaths: ["$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)"]
    )
  ],
  dependencies: [
    .target(name: "MobileOrderCore"),
    .cocoapods(path: ".")
  ]
)

Expected behavior
I expect the action to get added last to the list.

Screenshots
If applicable, add screenshots to help explain your problem.
Screenshot 2019-09-19 14 07 58

Desktop (please complete the following information):

  • OS: MacOSX
  • Version [e.g. 22] OSX: 10.14.5, tuist: 0.17.0

Additional context
I am running Cocoapods, not sure if that has any impact.

This is the output from the build step, (i.e. Fabric):

warning: DEBUG_INFORMATION_FORMAT should be set to dwarf-with-dsym for all configurations. This could also be a timing issue, make sure the Fabric run script build phase is the last build phase and no other scripts have moved the dSYM from the location Xcode generated it. Unable to process obfuscatedName.app.dSYM at path /Users/parse/Library/Developer/Xcode/DerivedData/obfuscatedName-ekluomfgixfmyheopragxuiscgbb/Build/Products/Demo-iphonesimulator/obfuscatedName.app.dSYM
@pepicrft pepicrft self-assigned this Sep 19, 2019
@pepicrft pepicrft added the type:bug Something isn't working label Sep 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants