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
Define Archive Action on Scheme #529
Conversation
Generated by π« Danger |
Codecov Report
@@ Coverage Diff @@
## master #529 +/- ##
========================================
Coverage ? 91.5%
========================================
Files ? 358
Lines ? 19373
Branches ? 0
========================================
Hits ? 17727
Misses ? 1646
Partials ? 0
Continue to review full report at Codecov.
|
Thanks for bringing this up @GRSouza. The PR is looking good π |
Hi @pepibumur I think I'm done with the implementation, anything else I could do? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like a welcome change, π.
I left a few comments, some are superficial so feel free to adhere to those as you see fit. Once you're happy with any changes or you would like me to review it again just ping back and I'll take another look and we can look at getting this merged.
Tests/TuistGeneratorTests/Models/TestData/Scheme+TestData.swift
Outdated
Show resolved
Hide resolved
shared: true, | ||
buildAction: BuildAction(targets: ["App"]), | ||
runAction: RunAction(configurationName: "Beta", executable: "App"), | ||
archiveAction: ArchiveAction(configurationName: "Beta")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should we update a fixture test to ensure the archive scheme can execute successfully?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it needs to be updated, how do I run the fixtures with my version of tuist? Or is another thing that needs to change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our fixtures are defined in fixtures/
and are exexuted by our cucumber test's.
To run them locally you would execute features
from the Rakefile:
bundle exec rake features
Inside the generate feature you should be able to specify which action you would like Xcode to run as part of your scheme.
An example of this would be you can define a step in the cucumber tests as follows:
Then I should be able to archive for iOS the scheme App
If you are unsure of any of the above or would like me to step in then please ask
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, but I don't know how this actually works. I wrote a new step as you suggested, but I'm getting the error error: use of unresolved identifier 'ArchiveAction'
when a run bundle exec rake features
, I guess it is because the tests aren't being run with my version of tuist.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After addressing @ollieatkinson's comment I think we are good to merge.
@GRSouza notice that the API that is available from the
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, don't forget to rebase from master.
Is it ok if I finalize this one @GRSouza? |
@pepibumur it's okay, you can finalize it |
I'm closing this in favor of #697, otherwise I can't push code to the branch. |
Short description π
The purpose of this PR is to add support for defining a custom archive action when defining a scheme, so that we're able to provide a configuration when running the archive job.
Solution π¦
The solution I propose is to follow the same implementation that is already being used on the other action's definitions.
Implementation π©βπ»π¨βπ»
XCScheme.ArchiveAction
from an ArchiveAction