Graphql 中继编译器抛出语法错误:意外的“$&引用;在Github操作中运行时
我使用的是Relay(和Hasura),因此需要提前使用Graphql 中继编译器抛出语法错误:意外的“$&引用;在Github操作中运行时,graphql,github-actions,relay,Graphql,Github Actions,Relay,我使用的是Relay(和Hasura),因此需要提前使用Relay编译器编译代码。我可以在本地机器上很好地编译代码,但是在Github操作中它总是失败 这是我的yml文件中的一部分,其中断开了: runs-on: ubuntu-latest # other steps - name: Download GraphQL Schema run: SECRET=$SECRET ENDPOINT=$ENDPOINT yarn run get-schema env: SECRET: ${{
Relay编译器编译代码。我可以在本地机器上很好地编译代码,但是在Github操作中它总是失败
这是我的yml
文件中的一部分,其中断开了:
runs-on: ubuntu-latest
# other steps
- name: Download GraphQL Schema
run: SECRET=$SECRET ENDPOINT=$ENDPOINT yarn run get-schema
env:
SECRET: ${{ secrets.hasura_admin_secret }}
ENDPOINT: ${{ secrets.graphql_endpoint }}
- name: Test Compile Relay
run: yarn run relay <<< this fails
- name: Test build
run: yarn run build
它失败并出现以下错误:
$ /home/runner/work/<company-name>/<app-name>/node_modules/.bin/relay-compiler --schema schema.graphql --src src
Writing js
ERROR:
Syntax Error: Unexpected "$".
$/home/runner/work///node\u modules/.bin/relay编译器--schema.graphql--src-src
写js
错误:
语法错误:意外的“$”。
我已经验证了模式下载是否正确,以及模式和src文件夹的路径是否正确
我是否需要传递特定的配置或参数才能在CI环境中工作
更新
经过更多的测试,我发现从get-graphql模式下载的文件在某种程度上是不正确的。如果我提交模式并使用它而不是下载它,那么问题就不存在了
我知道上传graphql.schema
文件是不好的做法,是这样吗?如果是这样,是否需要特殊参数或设置才能使架构文件在Github操作中正常工作?我发现,在运行get-graphql架构时,Github操作会添加以下行作为文件的第一行。我可以通过一个额外的脚本来删除它
schema.graphql
$ /home/runner/work/<company-name>/<app-name>/node_modules/.bin/relay-compiler --schema schema.graphql --src src
schema {
query: query_root
mutation: mutation_root
subscription: subscription_root
}
...
$/home/runner/work///node\u modules/.bin/relay编译器--schema.graphql--src-src
模式{
query:query\u root
突变:根的突变
订阅:订阅根目录
}
...
我不确定为什么在github操作中运行此命令会复制第一行。我发现,在运行get graphql schema
it github操作时,会将以下行添加为文件的第一行。我可以通过一个额外的脚本来删除它
schema.graphql
$ /home/runner/work/<company-name>/<app-name>/node_modules/.bin/relay-compiler --schema schema.graphql --src src
schema {
query: query_root
mutation: mutation_root
subscription: subscription_root
}
...
$/home/runner/work///node\u modules/.bin/relay编译器--schema.graphql--src-src
模式{
query:query\u root
突变:根的突变
订阅:订阅根目录
}
...
我不确定为什么在github操作中运行此命令会复制第一行