A required field should be checked before the script builds commands or summaries from it.

Program

Play the script to choose a field value and see the validation message.

owner
required_field.sh
Replay: real traced execution (multi-file project)
#!/usr/bin/env bash

owner="team-a"
if [ -n "$owner" ]; then
    message="owner=$owner"
else
    message="missing-owner"
fi
echo "$message"
#!/usr/bin/env bash

owner=""
if [ -n "$owner" ]; then
    message="owner=$owner"
else
    message="missing-owner"
fi
echo "$message"
  1. owner ← team-a

    3owner="team-a"4if [ -n "$owner" ]; then
    values this stepteam-aowner
  2. if [ -n "$owner" ]; then

    3owner="team-a"4if [ -n "$owner" ]; then5    message="owner=$owner"
    values this stepteam-aowner
  3. message ← owner=team-a

    4if [ -n "$owner" ]; then5    message="owner=$owner"6else
    values this stepowner=team-amessageteam-aowner
  4. echo "$message"

    8fi9echo "$message"
    outputowner=team-a
    values this stepowner=team-amessage
  1. owner ← (empty)

    3owner=""4if [ -n "$owner" ]; then
    values this step(empty)owner
  2. if [ -n "$owner" ]; then

    3owner=""4if [ -n "$owner" ]; then5    message="owner=$owner"
    values this step(empty)owner
  3. message ← missing-owner

    6else7    message="missing-owner"8fi
    values this stepmissing-ownermessage
  4. echo "$message"

    8fi9echo "$message"
    outputmissing-owner
    values this stepmissing-ownermessage
required field A required value must be present before the script continues.
non-empty test `[ -n "$owner" ]` checks that the string has length.
error message A named failure message gives callers a clear correction.