Skip to content

MissingStepName

Step is missing a name.

Defined by MissingNameRule which supports workflows, actions in the "Default" ruleset along with MissingWorkflowName, MissingJobName.

Description

Having a step name is important for usability.

The default step name is the first line of run: or the action of uses:, but it's recommended to override it for human consumption:

  • The step name is the header shown when a step is collapsed on the workflow run UI.
  • Using a succinct, but descriptive name can help to understand the workflow run at a glance.
  • It's also useful when opening the file for viewing or editing, it gives the file very nice structure if each step starts with a name.

Note: the name: ... might be present in YAML, but if it's empty or blank, it's considered missing.

Compliant examples

Compliant example #1

The first job step has a name.

example.yml

name: "Example"
on: push
jobs:
  example:
    name: "Example"
    runs-on: ubuntu-latest
    steps:
      - name: "My Step"
        run: echo "Example"

Compliant example #2

The first action step has a name.

action.yml

name: "Test"
description: Test
runs:
  using: composite
  steps:
    - name: "My Step"
      run: echo "Example"
      shell: bash

Non-compliant examples

Non-compliant example #1

The first job step is missing a name.

example.yml

name: "Example"
on: push
jobs:
  example:
    name: "Example"
    runs-on: ubuntu-latest
    steps:
      - run: echo "Example"

  • Line 8: Step[#0] in Job[example] is missing a name, add one to improve developer experience.

Non-compliant example #2

The first action step is missing a name.

action.yml

name: "Test"
description: Test
runs:
  using: composite
  steps:
    - run: echo "Example"
      shell: bash

  • Line 6: Step[#0] in Action["Test"] is missing a name, add one to improve developer experience.