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

senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
qwerescape
Is there a way to get the call stack or stack trace at any point in the code? Not from exceptions, but an expression that returns how the...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
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
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? Ecto.Repo — Ecto v3.14.0 has exampl...
New
vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
beno
I will often find my self writing things similar to: case some_value do nil -> something() "" -> something() _ -> somethi...
New
stefanluptak
Hello everybody, usually, I use a 29" ultra-wide monitor for VSCode which can easily accomodate explorer (files panel) + file with code ...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New

Other popular topics Top

Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 43622 214
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New
AngeloChecked
What learn first? Rust or Elixir Hi Elixir community! I’m here because i want learn a new language. I’m a junior developer and mainly i ...
New
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
axelson
This post is a wiki (feel free to hit the edit button near the bottom right of this post to add your own changes!) This post collects co...
239 47930 226
New

We're in Beta

About us Mission Statement