0.0.0-rc.57 • Published 3 years ago

insta-pipe v0.0.0-rc.57

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
3 years ago

Installation

If you don't have Node.js or Yarn installed:

curl -o- https://cdn.insta.ci/install.sh | bash

Or using Yarn directly:

yarn global add insta-pipe

Getting Started

# Create a template
pipe create --template=hello-world .insta

# Run tasks
cd .insta
pipe

Overview

tasks.ts

import { task } from 'insta-pipe';

task('First task', async () => {
  console.log('This message is the task log');
});

When you start a process, you use exec. The stdout and stderr of this process is written to its own stream.

tasks.ts

import { task, exec } from 'insta-pipe';

task('First task', async () => {
  await exec('cat', ['./task.ts']);
});

You can also create streams of any media type. The most common ones are: text/plain for logs, image/* for images, and video/webm for video.

tasks.ts

import { task, stream } from 'insta-pipe';

task('First task', async () => {
  const stream = stream('Example stream', {
    mediatype: 'text/plain',
  });
  stream.writeString('Written to the stream\n');
  stream.close();
});

Configuring Tasks

Tasks shall be defined statically. That is, no task should be configured based on values defined at runtime.

This ensures that the task DAG is deterministic, and reproducible.

Protocol

Insta is built on top of Protocol buffers and gRPC. In the future, we plan to add support to other languages, and offer the exact same features the TypeScript client offers.

Changes to the Runner service are backward-compatible.

The Insta server is aware of the version of the protocol the client uses, and is able to handle any future change in behavior.

Breaking changes will require a new Runner service.

0.0.0-rc.57

3 years ago

0.0.0-rc.56

3 years ago

0.0.0-rc.55

3 years ago

0.0.0-rc.54

3 years ago

0.0.0-rc.53

3 years ago

0.0.0-rc.52

3 years ago

0.0.0-rc.51

3 years ago

0.0.0-rc.50

3 years ago

0.0.0-rc.47

3 years ago

0.0.0-rc.49

3 years ago

0.0.0-rc.48

3 years ago

0.0.0-rc.46

3 years ago

0.0.0-rc.45

3 years ago

0.0.0-rc.44

3 years ago

0.0.0-rc.43

3 years ago

0.0.0-rc.42

3 years ago

0.0.0-rc.39

3 years ago

0.0.0-rc.38

3 years ago

0.0.0-rc.41

3 years ago

0.0.0-rc.40

3 years ago

0.0.0-rc.36

3 years ago

0.0.0-rc.35

3 years ago

0.0.0-rc.34

3 years ago

0.0.0-rc.37

3 years ago

0.0.0-rc.32

3 years ago

0.0.0-rc.25

3 years ago

0.0.0-rc.24

3 years ago

0.0.0-rc.31

3 years ago

0.0.0-rc.30

3 years ago

0.0.0-rc.29

3 years ago

0.0.0-rc.28

3 years ago

0.0.0-rc.27

3 years ago

0.0.0-rc.26

3 years ago

0.0.0-rc.23

3 years ago

0.0.0-rc.22

3 years ago

0.0.0-rc.21

3 years ago

0.0.0-rc.20

3 years ago

0.0.0-rc.19

3 years ago

0.0.0-rc.18

3 years ago

0.0.0-rc.17

3 years ago

0.0.0-rc.16

3 years ago

0.0.0-rc.15

3 years ago