Fl4m3Ph03n1x

Fl4m3Ph03n1x

Github workflow errors out

Background

I have a small elixir project and I am trying to use GithubWorkflow to have a nice pipeline and automate some actions.

Problem

However I can’t even get it started as I get the following error:

 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

Code

I think my workflow might be incorrect, could someone help figure out what’s wrong?

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

Marked As Solved

Fl4m3Ph03n1x

Fl4m3Ph03n1x

Summary

The elixir version in the file was wrong. It should have:

      with:
        elixir-version: '1.10.4 # Define the elixir version [required]
        otp-version: '22.1' # Define the OTP version [required]

Instead of the current content.

RCA

So this one was interesting. When it comes to elixir versions, because I use asdf as my version manager, I am allowed to pick the best version (the most optimized) for the erlang setup I have.

How do I know which elixir version is the best for, lets say, erlang 22.1?
Well, I use bob’s list:

And while this is fine and it does work on my machine and in docker files and so on, Github Action wont accept it. Github Actions takes its elixir version’s from here:

And as you can see, there no official release called “1.10-otp-22”

So, instead of the current content, the file should instead have:

with:
        elixir-version: '1.10.4' # Define the elixir version [required]
        otp-version: '22.1' # Define the OTP version [required]

Where Next?

Popular in Questions Top

electic
Hi, I am new to Elixir. I am trying to use the DateTime component to insert a date into MySQL however the there seems to be no way to fo...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
Fl4m3Ph03n1x
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: ) Hello all, this is ...
New
9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
vrod
I am using the Starship cross-shell prompt – it seems pretty nice, but I get some errors: [WARN] - (starship::utils): Executing command ...
New

Other popular topics Top

JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New

We're in Beta

About us Mission Statement