npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

automatiqal-cli

v0.7.6

Published

CLI wrapper for automatiqal

Downloads

34

Readme

Automatiqal CLI (Beta)

ko-fi

Warning UNDER DEVELOPMENT

Automatiqal CLI is a NodeJS wrapper around Automatiqal package that allows automating Qlik Sense administration/deployment tasks by describing them in yaml/json files.

As the name suggests Automatiqal CLI is a command line/terminal tool.

Note At the moment only Qlik Sense Enterprise on Windows is supported! SaaS support is on the roadmap

Installation

Install as global module: npm install -g automatiqal-cli

Usage

  • All available commands can be displayed at any time by running automatiqal with the --help flag or running it without any flag:

    $ automatiqal --help $ automatiqal

    --file       -f     Location of the file, containing the run book data
    --variables, -v     Location of the variable file (if needed)
    --json              Indicates that the run book file is in JSON format
    --output,    -o     Saves the result in the provided path
    --connect,   -c     Test the connectivity. No tasks are ran
    --sample,    -s     Generate sample run book and variables files in the current folder
    --help,      -h     Shows this message
  • --file - pass the location of the yaml file $ automatiqal --file path/to/deployment/file.yaml

  • --variables - pass the location of the variables file $ automatiqal --file path/to/deployment/file.yaml --variables path/to/deployment/variables-file.yaml

  • --json - if the source file is in json format then --json flag should be added as an extra parameter $ automatiqal --file path/to/deployment/file.json --json

  • --output - to save the result of the run book in a json file $ automatiqal --file path/to/deployment/file.yaml --output path/to/result.json

  • --sample - generate sample yaml file in the current folder $ automatiqal --sample

Runbook examples

Have a look at the examples folder for list of example yaml files (btw these runbooks are used to test Automatiqal CLI itself)


Example of importing an app and publishing it to a new stream:

name: Sample run book
edition: windows
environment:
  host: ${host}
  port: 443
  proxy: jwt
  authentication:
    token: ${jwt_token}
tasks:
  - name: Import application
    description: Import brand new qvf
    operation: app.upload
    details:
      file: ${qvfLocation}
      name: Something New
  - name: Create stream
    operation: stream.create
    details:
      name: New Stream
  - name: Publish app
    operation: app.publish
    source: Import application
    details:
      stream: New Stream
      name: Something New (Published)

Creating new external task, trigger scheduling and tagging the task:

name: External Task operations
edition: windows
environment:
  host: ${host}
  port: 4242
  authentication:
    cert: ${certificate}
    key: ${certificate_key}
    user_dir: ${user_dir}
    user_name: ${user_name}
tasks:
  - name: Create tags
    operation: tag.createMany
    details:
      names: ["Tag Value 1", "Tag Value 2"]
  - name: Create external task
    operation: externalTask.create
    details:
      name: New external task
      path: c:\ProgramFiles\Qlik\Sense\ServiceDispatcher\Node\node.exe
      parameters: d:\temp\index.js
  - name: Add trigger schema to task
    operation: externalTask.addTriggerSchema
    filter: name eq 'New external task'
    details:
      name: Simple daily trigger
      repeat: Daily
      repeatEvery: 1
      startDate: 2022-02-07T14:30:00.000
  - name: Add multiple trigger schema to task
    operation: externalTask.addTriggerMany
    filter: name eq 'New external task'
    details:
      - name: Weekly trigger
        repeat: Weekly
        startDate: 2022-02-07T12:30:00.000
        daysOfWeek:
          - Monday
          - Wednesday
          - Sunday
      - name: Monthly trigger
        repeat: Monthly
        enabled: false
        startDate: 2022-02-07T13:30:00.000
        daysOfMonth: [1, 5, 10]
  - name: Update external task
    operation: externalTask.update
    filter: name eq 'New external task'
    details:
      tags:
        - Tag Value 1
        - Tag Value 2

Documentation

Have a look at Automatiqal package wiki pages or the official user documentation on how to structure the file and list of operations. More information will be added soon here as well

Schema

Great little addition is the availability of YAML schema. The schema greatly helps when writing runbooks. Please refer to the schema's repo on how to use it (in VSCode)

Warning The schema is also under development and some bugs/issues are possible/expected

Limitations

Demonstration

Short video how writing the runbook feels (with the json schema)

demo

Related projects

  • Automatiqal - Automatiqal CLI is the CLI wrapper of Automatiqal. The heavy lifting is done by the Automatiqal package. Automatiqal package can be used programmatically to process runbooks
  • Qlik Repo API - Automatiqal itself is using Qlik Repo API under the hood to communicate with Qlik Repo Service. Qlik Repo API abstracts the raw HTTP requests and exposes multiple methods that can be used without knowing the Qlik Repository Rest API specifics
  • Qlik SaaS API - Qlik SaaS API abstracts the raw HTTP requests and exposes multiple methods that can be used without knowing the Qlik SaaS Rest API specifics (to be used in Automatiqal to write SaaS runbooks)
  • Qlik Rest API - this package is the at the bottom of all. It allows communicating with various Qlik Rest API endpoints (Repository, Proxy, Engine etc)