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
Add authentication methods to access private binary repository #2774
Add authentication methods to access private binary repository #2774
Conversation
In order to test the parser I added a |
👋 I am working on adding an option to carthage update platform iOS --useBinaryCredentialNetrc EDIT: However I am wondering, if we want to have this type of flag overall 🤔 If we do, is |
In case you decide to use |
cb275ac
to
795bc64
Compare
This capability would be very useful for me. It looks like it has been approved, and passed tests. Is there any possibility that it could be merged soon? |
Hey @hasanPrestoq 👋 The PR hasn't been approved yet however it is ready for another round - all the suggestions have been implemented 🙂 |
We are also waiting on this. This would be a great help. @mollyIV great work! |
This would also be useful to my team. |
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.
Minor style changes.
Looks good to me.
4cbd48a
to
3696376
Compare
Unfortunately the CI jobs have failed. I did a rebase on top of the |
This fixes it but it still needs a few approvals: #2823 |
As @jdhealy commented privately, it makes sense to add a CLI parameter to opt in to this since there are limitations on what is supported. Something like Also please update from master to fix the CI 🙇 |
3696376
to
74a67d6
Compare
Hey @werner77 👋 Thank you for your questions.
That's a very good point 👍 Using a Carthage/Source/CarthageKit/Project.swift Lines 1009 to 1018 in c942285
I guess it does make sense 👍 @tmspzz could you please confirm that? 🙏
The Can you please describe how we could support a 🙇 🙇 |
Yep |
Would be great to get this merged. @mollyIV has been graciously working on it for a while now and, in addition to the others who have spoken up, this would also be helpful to my team. |
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.
Everything looks good to me!
Awesome that this is already done. My team is trying to add Carthage support to a set of proprietary SDKs we distribute and not having a way to authenticate with Artifactory to pull the artifacts is a blocker for us. What needs to happen to get this merged? |
Hey @liambutler-lawrence 👋
I just implemented and pushed to the repo two missing parts:
Now the MR is ready for the final (hopefully 😉) review. CC: @tmspzz Would be great though if anyone could help us to do some manual testing 🙏 Testing steps:
🙇 🙇 |
@mollyIV This works for our setup! (JSON spec file is on a public GitHub repo, but the artifact is on Artifactory). Had to merge master into your branch to get Really appreciate all your work on this :) |
fwiw, just tested using @liambutler-lawrence and it worked as expected i.e. downloaded private binary frameworks using |
Bump again. Would love to get back to using the mainline Carthage- while the fork works great internally, we don't want to require that our clients use a fork of Carthage, so we're still using ugly workarounds (like IP whitelisting) to distribute our SDKs publicly. |
@tmspzz It looks to me that we have everything that we need to get this merged? Anything more missing? |
The indentation does not match the existing codebase throughout the changes -- Carthage uses tabs instead of spaces so you might need to change your Xcode settings and reformat. |
Hey, We've kept an eye on this PR for a few months. excited to begin using the end result. We were wondering when to expect this to be merged, we're planning features based on it. |
@mdiep @tmspzz What is the chances of getting this merged into the mainline? I used the NSOperations fork of Carthage that has this feature and it works exactly how I would want it to work. I can now securely store pre-built binaries that I manage in our companies Artifactory instance (including the JSON file) and reference the versions in a Cartfile for the team. I would really like to see this MR / Feature in the mainline soon so I can have the team use avoid the step of getting the NSOperations fork. Can you provide an update on this? |
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.
LGTM
Description
This pull request is introducing a support for accessing the binary dependencies form private repositories.
Testing
Manual testing
Cartfile
.carthage update --platform ios --use-netrc
.Unit tests
The bunch of unit tests for
Netrc
implementation were implemented inNetrcSpec.swift
.Important⚠️
The current implementation of
.netrc
parser does not supportdefault
,account
andmacdef
parameters. Check the documentation to get more details about given parameters.closes #1783