我正在自动化我的 react-native
世博发布周期。我正在使用 release channels
在世博建staging
和 production
建立。例如,每次推送到 staging-v1
GitHub 分支,触发了下面的 Action 。
//staging.yaml
name: Release to staging
on:
push:
branches:
- staging*
jobs:
publish:
name: Install and publish on staging channel
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12.x
- uses: expo/expo-github-action@v5
with:
expo-version: 3.x
expo-username: ${{ secrets.EXPO_CLI_USERNAME }}
expo-password: ${{ secrets.EXPO_CLI_PASSWORD }}
expo-packager: npm
- run: npm install
- run: expo publish --release-channel ${{ GITHUB_REF }}
{{ GITHUB_REF }}
保存当前分支名称。因此,当我将更改推送到 staging-v1
时这个 Action 运行。但是,我收到此错误。我试过设置
env
变量,它也不起作用。我只想附加我的 branch_name
到 expo publish
命令。最终,在构建时,run
命令应该是这样的。 - run: npm install
- run: expo publish --release-channel staging-v1
对这个问题的任何见解将不胜感激。谢谢 :)
最佳答案
我为此构建了一个 GitHub 操作:FranzDiebold/github-env-vars-action
用法如下:
steps:
- uses: FranzDiebold/github-env-vars-action@v1.2.0
- name: Print environment variables
run: |
echo "GITHUB_REPOSITORY_SLUG=$GITHUB_REPOSITORY_SLUG"
echo "GITHUB_REPOSITORY_OWNER=$GITHUB_REPOSITORY_OWNER"
echo "GITHUB_REPOSITORY_OWNER_SLUG=$GITHUB_REPOSITORY_OWNER_SLUG"
echo "GITHUB_REPOSITORY_NAME=$GITHUB_REPOSITORY_NAME"
echo "GITHUB_REPOSITORY_NAME_SLUG=$GITHUB_REPOSITORY_NAME_SLUG"
echo "GITHUB_REF_SLUG=$GITHUB_REF_SLUG"
echo "GITHUB_REF_NAME=$GITHUB_REF_NAME"
echo "GITHUB_REF_NAME_SLUG=$GITHUB_REF_NAME_SLUG"
echo "GITHUB_SHA_SHORT=$GITHUB_SHA_SHORT"
一个示例输出是:GITHUB_REPOSITORY_SLUG=ajinkabeer-test-repo
GITHUB_REPOSITORY_OWNER=ajinkabeer
GITHUB_REPOSITORY_OWNER_SLUG=ajinkabeer
GITHUB_REPOSITORY_NAME=test-repo
GITHUB_REPOSITORY_NAME_SLUG=test-repo
GITHUB_REF_SLUG=refs-heads-staging-v1
GITHUB_REF_NAME=staging-v1
GITHUB_REF_NAME_SLUG=staging-v1
GITHUB_SHA_SHORT=e2e4f0ab
demo workflows file of the repository 中还提供了适用于所有操作系统(Linux、macOS 和 Windows)的演示。 !
关于react-native - 如何在 GitHub Actions 中设置和访问环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62368708/