Skip to content
play

GitHub Action

Avrolint Action

v1.0.5 Latest version

Avrolint Action

play

Avrolint Action

GitHub Action to run linting checks using avro-js

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Avrolint Action

uses: frankgrimes97/[email protected]

Learn more about this action in frankgrimes97/avrolint-action

Choose a version

Avrolint v1

This action performs linting on Apache Avro Schema files (.avsc).

Usage

- uses: frankgrimes97/avrolint-action@v1
  with:
    # Avro schema file(s) to lint
    # Can be a single file path:
    #   e.g. '/tmp/avroSchema.avsc'
    # Can be a string containing a JSON-encoded array of paths:
    #   e.g. '["/tmp/avroSchemaA.avsc", "/tmp2/avroSchemaB.avsc"]'
    avsc-to-lint: ''

    # Check that all fields are documented.
    # Default: true
    undocumented-field-check: ''

    # Check that union types are all simple types.
    # i.e. only used to express nullability
    # This is enforced because schemas which have complex union types are
    # difficult for most programming language type systems to handle gracefully.
    # e.g.
    #   valid: ["null", <TYPE>]
    #   invalid: [<TYPE1>, <TYPE2>]
    #   invalid: ["null", <TYPE1>, <TYPE2>]
    # Default: true
    complex-union-check: ''

Build

To build it locally, run npm clean-install.

N.B. For efficiency of execution, NCC is used to build a single JavaScript file under the dist/ folder.

Be sure to check in changes to that file, otherwise changes made to the sources won't be reflected in what's run by the action.

Release

Releases are handled through Git tags.

Example tags:

  • v1 (major version, moving tag)
  • v1.0.0 (specific version, fixed/immutable tag)