Fl4m3Ph03n1x

Fl4m3Ph03n1x

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 OP

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? Top

Trending in Questions Top

Blokh
Hey guys, I’ve got a huge CSV ( around 10 GB ) that needs to be processed hourly Do you guys have any suggestions what is the best prac...
New
kszambelanczyk
Hello! Could someone please give me a help/sample code, how to delete a file from s3 using waffle/waffle_ecto from Phoenix app. I creat...
New
Onor.io
I have what I’ve heard referred to as a “lookup table” in my database. This is a way of assigning codes to common values. One common lo...
New
Trolleger
What approach to take when sending live updates to “random” users Hi! I have a question, I have a little chat app, and when I create a DM...
New
RemyXRenard
I’m seeing that a list inside a Kino.DataTable will be interpreted as a charlist, even if the Kino.configure() is set to charlists: :as_l...
New
matt-savvy
Anyone here using Honeybadger? My Honeybadger account is being overwhelmed with noise from some bots. Seeing a lot of Bandit.HTTPError...
New
samoloth
Hi, I’ve just set up an application with ash_authentication. There is only magic link strategy for now, so there is no confirmation add o...
New

Other Trending Topics Top

mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
wintermeyer
There are three potential reasons for members of this forum to have a look at https://vutuv.de You are tired or annoyed of LinkedIn. Yo...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews