我有一个小灵丹妙药项目,我正在尝试使用GithubWorkflow建立一个不错的管道并自动执行一些操作。
但是由于出现以下错误,我什至无法启动它:
Setup elixir
1s
AUCTION_HOUSE_TOKEN: ***
Run actions/setup-elixir@v1
with:
elixir-version: 1.10-otp-22
otp-version: 22.1
install-hex: true
install-rebar: true
env:
COOKIE: ***
TOKEN: ***
##[error]Cannot read property 'includes' of undefined
我认为我的工作流程可能不正确,有人可以帮忙找出问题所在吗?
name: build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
env:
AUCTION_HOUSE_COOKIE: ${{ secrets.MARKET_MANAGER_WM_COOKIE }}
AUCTION_HOUSE_TOKEN: ${{ secrets.MARKET_MANAGER_WM_XCSRFTOKEN }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup elixir
uses: actions/setup-elixir@v1
with:
elixir-version: '1.10-otp-22' # Define the elixir version [required]
otp-version: '22.1' # Define the OTP version [required]
- name: Install Dependencies
run: mix deps.get
- name: Run Tests
run: mix test
- name: Run credo code analyser
run: mix credo --strict
- name: Run typechecks
run: mix dialyzer
- name: Build executable
run: mix escript.build
env:
MIX_ENV: prod
答案 0 :(得分:0)
文件中的长生不老药版本错误。它应该具有:
with:
elixir-version: '1.10.4 # Define the elixir version [required]
otp-version: '22.1' # Define the OTP version [required]
代替当前内容。
所以这个很有趣。谈到elixir版本时,因为我将asdf用作我的版本管理器,所以我可以为我拥有的erlang设置选择最佳版本(最优化)。
我怎么知道哪个elixir版本最适合,比如说erlang 22.1? 好吧,我使用bob的列表:
https://bobs-list.kobrakai.de/#version_v1.10
尽管这很好,并且可以在我的机器和docker文件等上正常运行,但Github Action 不会接受。 Github Actions从这里获得了它的长生不老药版本:
https://github.com/elixir-lang/elixir/releases
如您所见,没有称为“ 1.10-otp-22”的正式发行版
因此,文件应具有以下内容,而不是当前内容:
with:
elixir-version: '1.10.4' # Define the elixir version [required]
otp-version: '22.1' # Define the OTP version [required]