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

Add support for EAS CLI installs #97

Open
byCedric opened this issue Jun 18, 2021 · 3 comments
Open

Add support for EAS CLI installs #97

byCedric opened this issue Jun 18, 2021 · 3 comments

Comments

@byCedric
Copy link
Member

Topic and scope of discussion

Improved support for EAS CLI. It's not super important, bc you can just use npx eas-cli, but still might be useful to include in the github action.

Big changes

  • Make Expo CLI optional to install
  • Add optional EAS CLI install
  • Make sure caching works with both Expo and EAS CLI
  • Unify credential inputs for both Expo and EAS

Proposed inputs

old new why
expo-packager packager Users probably pick either npm or yarn, not a different one for both.
expo-patch-watchers patch-watchers This applies to the system, so both or none.
expo-username username Unify this for both Expo and EAS CLI.
expo-password password Unify this for both Expo and EAS CLI.
expo-token token Unify this for both Expo and EAS CLI.
- eas-version New, for EAS CLI
- eas-cache New, for EAS CLI
- eas-cache-key New, for EAS CLI
expo-version expo-version not changed
expo-cache expo-cache not changed
expo-cache-key expo-cache-key not changed

Other changes

input what
expo-version Defaults to null, skipping installation when not defined
eas-version Defaults to null, skipping installation when not defined

Gotcha's

  1. We can't really authenticate if neither Expo nor EAS CLI is installed. We have to add warnings/debugging for that when this happens.
@byCedric
Copy link
Member Author

Next up, expose output variables to make EAS Updates easier. Right now, we have to use things like:

$ eas branch:publish $(echo ${{ github.ref }} | sed 's_refs/heads/__') --message "${{ github.event.head_commit.message }}"

This should be way easier, like:

$ eas branch:publish ${{ eas.output.branch }} --message "${{ eas.output.message }}"

or if we could integrate this better with EAS, just running with some envvar based defaults:

$ eas branch:publish

@oakley808
Copy link

oakley808 commented Mar 4, 2022

Does this include support for eas internal distribution builds?

I'm seeing the QR in my PR comment link me to builds that load in Expo Go, so I'm guessing no? Or maybe I'm just setting the release-channel wrong. It isn't set anywhere for eas build. (or in the eas.json)
My github action for reference:

name: EAS Build
on:
  workflow_dispatch:
  pull_request:
    types: [opened, reopened, synchronize]
    branches:
      - develop
jobs:
  build:
    name: Install and build internal development app
    runs-on: ubuntu-latest
    steps:
      - name: 🏗 Setup repo
        uses: actions/checkout@v2

      - name: 🏗 Setup node
        uses: actions/setup-node@v2
        with:
          node-version: 16.x
          cache: yarn

      - name: 🏗 Setup Expo and EAS
        uses: expo/expo-github-action@v7
        with:
          expo-version: 5.x
          eas-version: latest
          token: ${{ secrets.EXPO_TOKEN }}

      - name: 📦 Install dependencies
        run: yarn

      - name: 🛠 Build on EAS
        run: eas build --platform all --non-interactive --profile development-internal

      - name: 🚀 Publish preview
        run: expo publish --release-channel=pr-${{ github.event.number }} --non-interactive

      - name: 💬 Comment in preview
        uses: expo/expo-github-action/preview-comment@v7
        with:
          channel: pr-${{ github.event.number }}

@hkhamm
Copy link

hkhamm commented May 26, 2022

@oakley808 I'd also love to see the preview-comment action support internal distribution builds, but that's probably a separate issue.

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

3 participants