fsprojects / fsprojects/FSharpLint

Doesnt seem to run in github action

Open
#601 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

needs-info
Dominant language
F#
Stars
327
Forks
74
PR merge metrics
No merged PRs in 30d

Description

Description

I am running lint in a CI pipeline in a github action, but it reports none of the warnings I get on my local machine - it reports zero warnings.

Repro steps

Please provide the steps required to reproduce the problem

name: ModelRegistry

on:
  push:
    branches: ["main"]
  pull_request:
    branches: ["main"]

defaults:
  run:
    working-directory: src/ModelRegistry

jobs:
  qa:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - name: Setup .NET
        uses: actions/setup-dotnet@v2
        with:
          dotnet-version: 6.0.x
      - name: Install tools
        run: make install
      - name: Build
        run: make build
      - name: Test
        run: make test
      - name: Validate format
        run: make check-format

and relevant make command:

.PHONY: check-format 
check-format: ## check if code is correctly formatted
	dotnet fantomas --check .
	dotnet fsharplint lint ModelRegistry.sln 
	ls

(the ls to check the files exist in the action).

Expected behavior

From my machine:

❯ make check-format
dotnet fantomas --check .
dotnet fsharplint lint ModelRegistry.sln 
[...]
========== Summary: 32 warnings ==========
make: *** [Makefile:16: check-format] Error 255
Actual behavior
Run make check-format
dotnet fantomas --recurse --check .
dotnet fsharplint lint ModelRegistry.sln 
========== Summary: 0 warnings ==========
ls
[...]
ModelRegistry.sln
[...]
Known workarounds

N/A

Related information

Everything should be in github action yml content.

  • linter Version: 0.21.3

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the GitHub Actions workflow and the Makefile's check-format target, then compare the CI and local output for dotnet fantomas and dotnet fsharplint. Check why CI reports zero warnings despite the same commands and lists the expected files. Done means the action detects the warnings and returns the expected failure status.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, shell
Domain
ci-cd, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.