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

running expo build for iOS #65

Open
zivl opened this issue Oct 11, 2020 · 5 comments
Open

running expo build for iOS #65

zivl opened this issue Oct 11, 2020 · 5 comments

Comments

@zivl
Copy link

zivl commented Oct 11, 2020

assuming the flow in which expo is taking care of the entire signature and provisioning stuff for you
do you have an example of how to create an expo build:ios -t archive flow, which having the Apple Connect user/pass?

@byCedric
Copy link
Member

Hi @zivl! That should be possible by using environment variables! Based on the envvars used here and the options from the command itself, it should look something like:

name: Build Archive
on:
  push:
    branches:
      - master
jobs:
  publish:
    name: Install and build
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: 14.x
      - uses: expo/expo-github-action@v5
        with:
          expo-version: 3.x
          expo-token: ${{ secrets.EXPO_TOKEN }}
      - run: yarn install
      - run: expo build:ios --no-wait --type archive
        env:
          EXPO_APPLE_ID: ${{ secrets.APPLE_ID }}
          EXPO_APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }}

You can play around with the options you provide to expo build:ios, but the env vars should be enough for you to authenticate. If you have more commands depending on the build or if you want to reflect the GH Action status on a successful build, you can omit --no-wait ofc.

Can you try this out? I'll add it to the readme if that works as expected 😄

@zivl
Copy link
Author

zivl commented Oct 20, 2020

@byCedric thanks for the detailed example, yet, Apple uses TFA so I'm afraid appleId and password won't be enough.
but I will try this out, as I think the TFA is being used only for the first time of generating the keys/certificates...

@byCedric
Copy link
Member

byCedric commented Oct 21, 2020

Ah, you are right! I think that would make any "first time builds" close to impossible, since these TFA codes changes. You'd have to build at least 1 time locally, so you can authenticate with Apple and setup the certificates in advance. After that, you should be able to run the expo build:ios without Apple credentials, right?

Does that help your use case in any way?

@zivl
Copy link
Author

zivl commented Nov 14, 2020

@byCedric It did work!
Amazing! 🍺

@zivl
Copy link
Author

zivl commented Nov 15, 2020

@byCedric I think this issue can be closed, unless you wanna keep it open to grab some documentation out of it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants