Comments (18)
This feature is now available as of version 1.116.0.
from app-store-vsts-extension.
This is great news! However how to use this?
from app-store-vsts-extension.
Hi @zhankezk, I hope we made adding 2FA to a build as easy as possible. It requires you to set up an 'app specific password' and get a 'fastlane session' (which should be easy enough to do on your developer box). These can be added to your Service Endpoint, or you can add them in the fields made when selecting two-step verification.
See: https://github.com/Microsoft/app-store-vsts-extension#app-store-release.
(PS - Thanks to fastlane for doing the heavy lifting in making this possible.)
from app-store-vsts-extension.
Thanks! I saw the options when I opened the Endpoint setups. However don't see any instructions about 2FA in the github link you sent :-( not sure I am looking at wrong places.
And Not sure how to use Deliverfile with the extension?
from app-store-vsts-extension.
Two places to look for documentation beyond the help in the plugin:
- Apple's developer website and account website. This might be a good place to start: https://support.apple.com/en-us/HT204397. (Also: https://appleid.apple.com/account/manage, https://support.apple.com/en-us/HT204915.)
- fastlane's documentation. FASTLANE_SESSION is a requirement for the 2FA, so that'll be a requirement to know how to setup. Their documentation is here: https://github.com/fastlane/fastlane/tree/master/spaceship
FWIW, I agree this is a weakness in our documentation for our plugin. I'll look into fleshing it in.
As for Deliverfile, you'll find the option to 'Upload Metadata' when distributing 'Production' builds. If you select that, you'll see there's an option to supply a path to the metadata. (See: https://github.com/fastlane/fastlane/tree/master/deliver#usage)
from app-store-vsts-extension.
Thanks for sharing all the documentations. I was using them already, was just hoping for more information specific to the VSTS extension. I pretty much know how to setup now. But while trying to generate a session using fastlane, keep getting errors... give up for now. Fight another day.. Thanks again!
from app-store-vsts-extension.
@zhankezk, I feel your pain! Fight on! 😄
from app-store-vsts-extension.
Hey guys, just want to jump on this, I'm trying to use the new 2fa auth in a Release definintion, but no matter if I use username + password or service endpoint, I'm still hanging on the prompt to select a verification device.
The documentation on how to create a service endpoint is pretty unclear, but I have created one which is:
Username: my apple id
Password: the regular password to that apple id
App-specific password: a valid one that I have generated for this task
Web session: ---\n- !ruby/object:HTTP::Cookie\n name: [the hash of the name]\n value: [the value]\n domain: idmsa.apple.com\n for_domain: true\n path: "/"\n secure: true\n httponly: true\n expires: \n max_age: 2592000\n created_at: &1 2017-05-11 16:34:33.179130000 +10:00\n accessed_at: *1\n
Is there anything I am missing here? It still asks me to select a device to verify my identity.
I am using v116 of the task.
from app-store-vsts-extension.
Hi @duckwaffle, it appears to me that you've configured it correctly. How did you setup your fastlane session? It should look something like: fastlane spaceauth -u [apple-id-user-email]
. Your configuration sounds correct, so my question is 'is your session connected to the same username / password for the build?'
from app-store-vsts-extension.
Hi @lkillgore thats exactly how I set up the web session.
I'm not sure I understand your question, I'm definitely using the same username/password for the web session and the release definition task settings. The only thing I can think of is that the user account is connected to multiple teams, however I would think that this wouldn't stop me from getting past the login of fastlane.
from app-store-vsts-extension.
Hi @lkillgore I just tried again with a clean release environment, a brand new service endpoint, and a brand new web session from fastlane. I even removed my fastlane installation and installed it again via brew (I was using the sudo gem install method previously).
The process still hangs with the following output:
2017-05-12T02:36:35.9790140Z [19:36:35]: Login to iTunes Connect (********)
2017-05-12T02:36:37.4402540Z Two Step Verification for account '********' is enabled
2017-05-12T02:36:37.4461230Z Please select a device to verify your identity
2017-05-12T02:36:37.4569000Z 1. +•• •••••••03 SMS (630)
2017-05-12T04:05:59.6436680Z ?
2017-05-12T04:05:59.9560270Z ##[error]The operation was canceled.
2017-05-12T04:06:00.0336260Z ##[section]Finishing: Publish to the App Store TestFlight track
from app-store-vsts-extension.
I have also tried with a different apple id which only has one team against it (I created a new websession and app password), and even tried to switch from a release definition to a build definition. Nothing is working for 2fa.
from app-store-vsts-extension.
Hi @duckwaffle, I'm sorry this isn't working for you. I did some testing on this, and I can't reproduce your error.
Does it work on your developer machine? To get the basics set up:
- Install 'fastlane'
- Use these environment variables:
a) 'FASTLANE_PASSWORD',
b) 'FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD',
c) 'FASTLANE_SESSION' - Run this command:
fastlane pilot upload -u [username] -i [path/to/.ipa]
Also, could you tell me which version of fastlane you're using?
from app-store-vsts-extension.
Hi @lkillgore , I did a quick test on the mac, and the pilot upload command works as expected, I even tried again using the the same arguments that the build agent was using which were
2017-05-15T00:24:23.1363620Z ##[debug]fastlane arg: ["--changelog","**Prod ENVIRONMENT** \n\n[Enter release notes here]"]
2017-05-15T00:24:23.1383920Z ##[debug]fastlane arg: ["-q","YCDSDGA3LX"]
2017-05-15T00:24:23.1404050Z ##[debug]fastlane arg: ["-r","Built To Roam"]
2017-05-15T00:24:23.1424360Z ##[debug]fastlane arg: ["--skip_waiting_for_build_processing","true"]
Didn't have any issues on the local machine.
Checking the log output from the macincloud agent I can see that all the variables should be getting set:
2017-05-15T00:23:57.7810390Z ##[debug]authType=UserAndPass
2017-05-15T00:23:57.7829220Z ##[debug]username=**omitted**
2017-05-15T00:23:57.7850050Z ##[debug]password=**omitted**
2017-05-15T00:23:57.7868650Z ##[debug]isTwoFactorAuth=true
2017-05-15T00:23:57.7887190Z ##[debug]appSpecificPassword=**omitted**
2017-05-15T00:23:57.7907100Z ##[debug]fastlaneSession=---\n- !ruby/object:HTTP::Cookie\n name: **omitted**\n value: **omitted**\n domain: idmsa.apple.com\n for_domain: true\n path: "/"\n secure: true\n httponly: true\n expires: \n max_age: 2592000\n created_at: &1 2017-05-12 14:34:41.075014000 +10:00\n accessed_at: *1\n
from app-store-vsts-extension.
Oh, and the version of fastlane on the local machine is 2.30.1 and the macincloud agent is installing the latest version of 2.30.2 when it runs.
from app-store-vsts-extension.
OK, I ran a few more tests matching my test to what you have in your logs here, and the authentication works. Unfortunately, I can't easily test the multiple teams part of this, yet. Could you try something else?
Try setting your developer machine up as a build agent:
https://www.visualstudio.com/en-us/docs/build/actions/agents/v2-osx
That should help us determine if we're dealing with a code problem or an environmental problem.
from app-store-vsts-extension.
@lkillgore it looks like the issue is with my macincloud agent, I ran the test using my local mac set up as a VSTS agent and it didn't have any issues.
I would assume that the issue is that my macincloud agent isn't setting environment variables correctly for the app-password and web session for fastlane to pick up. I'll try raising a support ticket with them.
Thanks for all your help!
from app-store-vsts-extension.
My pleasure, @duckwaffle. Could you please keep me updated in the event that it is a bug in our extension or if there is a way that we can work around it? Thanks!
from app-store-vsts-extension.
Related Issues (20)
- Xcode 14 upload error "Could not determine the package’s bundle ID..." HOT 7
- Provide correct documentation for full YML pipelines HOT 1
- what is the server url value in devops service connection creation HOT 1
- Release note is not displaying on What to Test on TestFlight uploaded build on App Store? HOT 4
- IOS - Promote Task - Cannot update languages - could not find an editable version for 'IOS' HOT 1
- Unable to submit ipa to testflight HOT 5
- Unable to set auto_release_date as an additional Fastlane argument HOT 1
- undefined method `team_id' for nil:NilClass (NoMethodError) HOT 1
- Can not push IPA file to tetstflight with Azure devops HOT 2
- Unable to promote Testflight release "Cannot submit for review" HOT 2
- Looking for more details on task: IpaResign@1 HOT 2
- AppStoreRelease serviceEndpoint authentication error with fastlane 2.217.0 HOT 2
- Unable to publish iOS app to beta external groups in testflight HOT 3
- Unable to release .ipa file to beta external groups in testflight HOT 5
- Publish an app to external group, but its uploading to internal group HOT 1
- iOS App store Release task failed to install/find fastlane using azure pipelines HOT 2
- Promote an existing build from testflight(internal channel) to Apple app store (PRODUCTION) HOT 2
- Fastlane 2FA issue HOT 1
- Error: 'What to Test?' 'Distribute to External Testers HOT 1
- Extension to publish to Intune HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from app-store-vsts-extension.