The Katoa Module Registry is a collection of 3rd-party code modules. These modules abstract over Katoa jobs, abstract over Katoa steps, and provide other general utility functions.
Head to deno.land/x/katoa_modules to see all the modules
import * as npm from "https://deno.land/x/katoa_modules/npm/mod.ts";
npm.installDependencies();
Step abstractions
import { Job, Pipeline, Secret } from "https://deno.land/x/katoa/lib.ts";
import * as npm from "https://deno.land/x/katoa_modules/npm/mod.ts"
const publish = new Job({
image: "ubuntu:22.04",
steps: [
npm.installNode({version: "16.4"}),
npm.installDependencies(),
npm.publish(token: new Secret.value("npm-token") ),
]
})
export new Pipeline([ publish ])
Job Abstraction
import { Job, Pipeline, Secret } from "https://deno.land/x/katoa/lib.ts";
import * as npm from "https://deno.land/x/katoa_modules/npm/mod.ts"
import * as terraform from "https://deno.land/x/katoa_modules/terraform/mod.ts"
import * as snyk from "https://deno.land/x/katoa_modules/snyk/mod.ts"
export new Pipeline([
new npm.TestSuite({ nodeVersion: "16.4"}),
new npm.Publish({ token: new Secret.value("npm-token") }),
new terraform.Deploy({ token: new Secret.value("terraform-token") }),
new snyk.SecurityChecks({ token: new Secret.value("snyk-token") }),
])
Have a module idea? Contribute it.
Check out contributing.