Skip to main content Link Search Menu Expand Document (external link)

Input overview

Schema-based input parsing for GitHub Actions.

This module provides a simple, Schema-first API for parsing action inputs. The core functions are raw and parse, with convenience helpers for common cases.

Added in v1.0.0


Table of contents


helpers

boolean

Parse input as a boolean (YAML 1.2 style).

Accepts: true/false/yes/no/on/off/1/0

Signature

export declare const boolean: (
  name: string
) => Effect.Effect<boolean, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

integer

Parse input as an integer.

Signature

export declare const integer: (name: string) => Effect.Effect<number, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

json

Parse input as JSON and validate against a schema.

Signature

export declare const json: <A, I, R>(
  name: string,
  schema: Schema.Schema<A, I, R>
) => Effect.Effect<A, InputValidationFailure, ActionRunner.ActionRunner | R>

Added in v1.0.0

nonEmptyString

Parse input as a non-empty string.

Fails if missing or empty.

Signature

export declare const nonEmptyString: (
  name: string
) => Effect.Effect<string, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

number

Parse input as a number.

Signature

export declare const number: (name: string) => Effect.Effect<number, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

secret

Parse input as a secret (Redacted string).

Fails if missing or empty.

Signature

export declare const secret: (
  name: string
) => Effect.Effect<Redacted.Redacted<string>, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

string

Parse input as a string.

Returns empty string if missing.

Signature

export declare const string: (name: string) => Effect.Effect<string, InputValidationFailure, ActionRunner.ActionRunner>

Added in v1.0.0

primitives

parse

Parse an input value using an Effect Schema.

On validation failure, returns an InputValidationFailure with details.

Signature

export declare const parse: <A, I, R>(
  name: string,
  schema: Schema.Schema<A, I, R>
) => Effect.Effect<A, InputValidationFailure, ActionRunner.ActionRunner | R>

Added in v1.0.0

raw

Get the raw string value of an input.

This never fails - returns empty string if the input is missing.

Signature

export declare const raw: (name: string) => Effect.Effect<string, never, ActionRunner.ActionRunner>

Added in v1.0.0

schemas

YamlBoolean

YAML 1.2 boolean schema.

Parses the following values:

  • true: true, True, TRUE, yes, Yes, YES, on, On, ON, 1
  • false: false, False, FALSE, no, No, NO, off, Off, OFF, 0, “” (empty string)

Signature

export declare const YamlBoolean: Schema.Schema<boolean, string, never>

Added in v1.0.0