Skip to content

always() fails to run if needs jobs are skipped #3664

Open
@dv01d

Description

@dv01d

Describe the bug
It is impossible to always run a job

To Reproduce
Steps to reproduce the behavior:

  1. Add jobs to workflow
  2. Create a last job that needs all jobs so it runs last
  3. use always() as a condition in if
  4. If any needs jobs are skipped always() job is also skipped

Expected behavior
I would expect always() to return true and job is ran

Runner Version and Platform

latest

OS of the machine running the runner? OSX/Windows/Linux/...
Linux

What's not working?

When is always() not always? When is true not true? I have tried using the following if condition
if: ${{ true || always() || failure() || success() || cancelled() || needs.*.result == 'skipped' }}

Runner and Worker's Diagnostic Logs

Reasons for skip are never logged, nor are their logs for decision.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions