/drunner

Deno task runner for automation pipelines script sequential task workflow steps in yaml conditional execution, loops, error handling & retries

Primary LanguageTypeScriptMIT LicenseMIT

drunner

Drunner CI Drunner Release CI

Deno task runner for automation pipelines script sequential task workflow steps in yaml conditional execution, loops, error handling & retries.

Install

deno install --allow-run --allow-read -f -n drunner https://raw.githubusercontent.com/rjoydip/drunner/master/cli.ts

Usage CLI

drunner runner.yaml

Run locally

deno run --allow-run --allow-read --unstable cli.ts test/runner.yaml

Arguments

  • --noColor - (Default: true) - No colored output
  • --pretty - (Default: false) - No format
  • --prefix - (Default: name) - Steps name will display with --pretty

Example

name: Test runner

variables:
  hello: world
  pwd: /test

jobs:
  job1:
    steps:
      - name: Test
        description: Test description
        with:
          version: t1.0.0.0000
        run: echo "Test version $version"

      - name: Build
        description: Build description
        with:
          version: b1.0.0.0000
        run: |
          echo "Build version $version and $pwd"

  job2:
    steps:
      - name: Deploy
        description: Deploy description
        with:
          version: v1.0.0
        run: |
          echo "Deploy version $version"
          echo "multiline"

      - name: Echo sh
        description: Run example sh file
        run: sh  ./echo.sh
        
      - name: No return
        description: Golang version desc
        run: 
          script: echo "No return"
          return: false
  job3:
    steps:
      - name: Deno version
        description: Deno version desc
        run: deno --version
      
      - name: Node.js version
        description: Node.js version desc
        run: node --version