Skip to content

kestra-io/validate-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Validate Action

Official GitHub Action to create CI/CD pipelines that validate Flows or Templates before deploying to your Kestra server.

This action could be used within a workflow that runs when a Pull Request is triggered.

The Action version is based on the Kestra Version. Only Kestra v0.6.1+ is supported.

What does the action do ?

  • Take a folder in input containing your Flow or Template as yaml files. The action look recursively meaning resources in subfolder will be validated too.
  • For each resource, 2 outputs are possible:
    • ':heavy_check_mark: flow-id' when your resource is validated.
    • ':x: filename' when an error was found in your resource. Following by the error message.

Usage

Inputs

Inputs Required Default Description
directory ✔️ Folder containing your resources
resource ✔️ Resource you want to update in your namespace, can be flow or template
server URL of your Kestra server, if none is provided, validation is done locally
user User for the basic auth
password Password for the basic auth

Server-side validation

The validation can be done locally with the client, but if you have custom plugin or want your Flows to be validated with TaskDefaults included, it may be more interesting to validate your resources on the server-side.

Differences between server-side and client-side validation

Validation Server-side Client-side
Format :heave_check_mark: :heave_check_mark:
Plugins properties :heave_check_mark:
Customs plugin :heave_check_mark:
Flows TaskDefaults :heave_check_mark:

Auth

Depending on your Kestra edition, you may need to include user and password to authenticate on the server.

Example

Example with Flows, validated on the server-side.

      - name: flow update namespace action
        uses: actions/kestra-validate-action@develop
        with:
          resource: flow
          directory: ./kestra/flows
          server: https:/kestra.io

Example with Templates, validated locally with the Kestra Client.

      - name: template update namespace action
        uses: actions/kestra-validate-action@develop
        with:
          resource: template
          directory: ./kestra/templates