├── .github ├── FUNDING.yml └── workflows │ ├── deno.yaml │ ├── jsr.yml │ └── pages.yaml ├── .gitignore ├── LICENSE ├── README.md ├── application.meta.ts ├── deno.json ├── docs ├── _config.ts ├── deno.json ├── pup.schema.json └── src │ ├── _data.json │ ├── _includes │ └── head.njk │ ├── changelog.md │ ├── contributing │ ├── index.md │ └── packaging.md │ ├── examples │ ├── basic-webinterface │ │ ├── README.md │ │ └── pup.jsonc │ ├── basic │ │ ├── README.md │ │ ├── pup.jsonc │ │ ├── server.js │ │ └── task.js │ ├── cluster │ │ ├── README.md │ │ ├── app.ts │ │ └── pup.json │ ├── docker │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── pup.jsonc │ │ └── task.ts │ ├── index.md │ ├── max-restarts │ │ ├── pup.jsonc │ │ └── server.js │ ├── minimal │ │ ├── pup.jsonc │ │ └── server.js │ ├── plugins │ │ ├── README.md │ │ ├── example-plugin.ts │ │ └── pup.jsonc │ ├── telemetry │ │ ├── README.md │ │ ├── pup.json │ │ ├── task-with-telemetry-1.ts │ │ └── task-with-telemetry-2.ts │ ├── watcher │ │ ├── README.md │ │ ├── pup.jsonc │ │ └── script.js │ └── worker │ │ ├── README.md │ │ ├── pup.jsonc │ │ └── server.js │ ├── faq.md │ ├── index.md │ ├── installation.md │ ├── resources │ ├── pup-logs.png │ └── pup_dark.png │ ├── troubleshooting.md │ └── usage │ ├── basics.md │ ├── configuration.md │ ├── index.md │ ├── library.md │ ├── rest-api.md │ ├── scaling.md │ └── service.md ├── lib ├── cli │ ├── args.ts │ ├── columns.ts │ ├── config.ts │ ├── formatters │ │ ├── strings.ts │ │ └── times.ts │ ├── main.ts │ ├── output.ts │ ├── status.ts │ └── upgrade.ts ├── common │ ├── prop.ts │ └── token.ts ├── core │ ├── api.ts │ ├── cluster.ts │ ├── configuration.ts │ ├── loadbalancer.ts │ ├── logger.ts │ ├── plugin.ts │ ├── port.ts │ ├── process.ts │ ├── pup.ts │ ├── rest.ts │ ├── runner.ts │ ├── status.ts │ ├── watcher.ts │ └── worker.ts ├── types │ └── runner.ts └── workers │ └── loadbalancer.js ├── mod.ts ├── pup.ts ├── test ├── cli │ ├── args.test.ts │ ├── columns.test.ts │ ├── configuration.test.ts │ └── output.test.ts └── core │ ├── loadbalancer.test.ts │ ├── logger.test.ts │ ├── pup.test.ts │ └── status.test.ts ├── tools ├── build-schema.ts ├── generate-package-json.ts └── release.ts └── versions.json /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/workflows/deno.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/.github/workflows/deno.yaml -------------------------------------------------------------------------------- /.github/workflows/jsr.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/.github/workflows/jsr.yml -------------------------------------------------------------------------------- /.github/workflows/pages.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/.github/workflows/pages.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/README.md -------------------------------------------------------------------------------- /application.meta.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/application.meta.ts -------------------------------------------------------------------------------- /deno.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/deno.json -------------------------------------------------------------------------------- /docs/_config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/_config.ts -------------------------------------------------------------------------------- /docs/deno.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/deno.json -------------------------------------------------------------------------------- /docs/pup.schema.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/pup.schema.json -------------------------------------------------------------------------------- /docs/src/_data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/_data.json -------------------------------------------------------------------------------- /docs/src/_includes/head.njk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/_includes/head.njk -------------------------------------------------------------------------------- /docs/src/changelog.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/changelog.md -------------------------------------------------------------------------------- /docs/src/contributing/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/contributing/index.md -------------------------------------------------------------------------------- /docs/src/contributing/packaging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/contributing/packaging.md -------------------------------------------------------------------------------- /docs/src/examples/basic-webinterface/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic-webinterface/README.md -------------------------------------------------------------------------------- /docs/src/examples/basic-webinterface/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic-webinterface/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/basic/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic/README.md -------------------------------------------------------------------------------- /docs/src/examples/basic/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/basic/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic/server.js -------------------------------------------------------------------------------- /docs/src/examples/basic/task.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/basic/task.js -------------------------------------------------------------------------------- /docs/src/examples/cluster/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/cluster/README.md -------------------------------------------------------------------------------- /docs/src/examples/cluster/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/cluster/app.ts -------------------------------------------------------------------------------- /docs/src/examples/cluster/pup.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/cluster/pup.json -------------------------------------------------------------------------------- /docs/src/examples/docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/docker/Dockerfile -------------------------------------------------------------------------------- /docs/src/examples/docker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/docker/README.md -------------------------------------------------------------------------------- /docs/src/examples/docker/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/docker/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/docker/task.ts: -------------------------------------------------------------------------------- 1 | console.log("Periodic task running") 2 | -------------------------------------------------------------------------------- /docs/src/examples/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/index.md -------------------------------------------------------------------------------- /docs/src/examples/max-restarts/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/max-restarts/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/max-restarts/server.js: -------------------------------------------------------------------------------- 1 | console.log("I will restart 3 times before 'giving up'") 2 | -------------------------------------------------------------------------------- /docs/src/examples/minimal/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/minimal/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/minimal/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/minimal/server.js -------------------------------------------------------------------------------- /docs/src/examples/plugins/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/plugins/README.md -------------------------------------------------------------------------------- /docs/src/examples/plugins/example-plugin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/plugins/example-plugin.ts -------------------------------------------------------------------------------- /docs/src/examples/plugins/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/plugins/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/telemetry/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/telemetry/README.md -------------------------------------------------------------------------------- /docs/src/examples/telemetry/pup.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/telemetry/pup.json -------------------------------------------------------------------------------- /docs/src/examples/telemetry/task-with-telemetry-1.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/telemetry/task-with-telemetry-1.ts -------------------------------------------------------------------------------- /docs/src/examples/telemetry/task-with-telemetry-2.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/telemetry/task-with-telemetry-2.ts -------------------------------------------------------------------------------- /docs/src/examples/watcher/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/watcher/README.md -------------------------------------------------------------------------------- /docs/src/examples/watcher/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/watcher/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/watcher/script.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/watcher/script.js -------------------------------------------------------------------------------- /docs/src/examples/worker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/worker/README.md -------------------------------------------------------------------------------- /docs/src/examples/worker/pup.jsonc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/worker/pup.jsonc -------------------------------------------------------------------------------- /docs/src/examples/worker/server.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/examples/worker/server.js -------------------------------------------------------------------------------- /docs/src/faq.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/faq.md -------------------------------------------------------------------------------- /docs/src/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/index.md -------------------------------------------------------------------------------- /docs/src/installation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/installation.md -------------------------------------------------------------------------------- /docs/src/resources/pup-logs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/resources/pup-logs.png -------------------------------------------------------------------------------- /docs/src/resources/pup_dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/resources/pup_dark.png -------------------------------------------------------------------------------- /docs/src/troubleshooting.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/troubleshooting.md -------------------------------------------------------------------------------- /docs/src/usage/basics.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/basics.md -------------------------------------------------------------------------------- /docs/src/usage/configuration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/configuration.md -------------------------------------------------------------------------------- /docs/src/usage/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/index.md -------------------------------------------------------------------------------- /docs/src/usage/library.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/library.md -------------------------------------------------------------------------------- /docs/src/usage/rest-api.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/rest-api.md -------------------------------------------------------------------------------- /docs/src/usage/scaling.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/scaling.md -------------------------------------------------------------------------------- /docs/src/usage/service.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/docs/src/usage/service.md -------------------------------------------------------------------------------- /lib/cli/args.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/args.ts -------------------------------------------------------------------------------- /lib/cli/columns.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/columns.ts -------------------------------------------------------------------------------- /lib/cli/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/config.ts -------------------------------------------------------------------------------- /lib/cli/formatters/strings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/formatters/strings.ts -------------------------------------------------------------------------------- /lib/cli/formatters/times.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/formatters/times.ts -------------------------------------------------------------------------------- /lib/cli/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/main.ts -------------------------------------------------------------------------------- /lib/cli/output.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/output.ts -------------------------------------------------------------------------------- /lib/cli/status.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/status.ts -------------------------------------------------------------------------------- /lib/cli/upgrade.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/cli/upgrade.ts -------------------------------------------------------------------------------- /lib/common/prop.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/common/prop.ts -------------------------------------------------------------------------------- /lib/common/token.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/common/token.ts -------------------------------------------------------------------------------- /lib/core/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/api.ts -------------------------------------------------------------------------------- /lib/core/cluster.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/cluster.ts -------------------------------------------------------------------------------- /lib/core/configuration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/configuration.ts -------------------------------------------------------------------------------- /lib/core/loadbalancer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/loadbalancer.ts -------------------------------------------------------------------------------- /lib/core/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/logger.ts -------------------------------------------------------------------------------- /lib/core/plugin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/plugin.ts -------------------------------------------------------------------------------- /lib/core/port.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/port.ts -------------------------------------------------------------------------------- /lib/core/process.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/process.ts -------------------------------------------------------------------------------- /lib/core/pup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/pup.ts -------------------------------------------------------------------------------- /lib/core/rest.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/rest.ts -------------------------------------------------------------------------------- /lib/core/runner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/runner.ts -------------------------------------------------------------------------------- /lib/core/status.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/status.ts -------------------------------------------------------------------------------- /lib/core/watcher.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/watcher.ts -------------------------------------------------------------------------------- /lib/core/worker.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/core/worker.ts -------------------------------------------------------------------------------- /lib/types/runner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/types/runner.ts -------------------------------------------------------------------------------- /lib/workers/loadbalancer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/lib/workers/loadbalancer.js -------------------------------------------------------------------------------- /mod.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/mod.ts -------------------------------------------------------------------------------- /pup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/pup.ts -------------------------------------------------------------------------------- /test/cli/args.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/cli/args.test.ts -------------------------------------------------------------------------------- /test/cli/columns.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/cli/columns.test.ts -------------------------------------------------------------------------------- /test/cli/configuration.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/cli/configuration.test.ts -------------------------------------------------------------------------------- /test/cli/output.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/cli/output.test.ts -------------------------------------------------------------------------------- /test/core/loadbalancer.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/core/loadbalancer.test.ts -------------------------------------------------------------------------------- /test/core/logger.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/core/logger.test.ts -------------------------------------------------------------------------------- /test/core/pup.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/core/pup.test.ts -------------------------------------------------------------------------------- /test/core/status.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/test/core/status.test.ts -------------------------------------------------------------------------------- /tools/build-schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/tools/build-schema.ts -------------------------------------------------------------------------------- /tools/generate-package-json.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/tools/generate-package-json.ts -------------------------------------------------------------------------------- /tools/release.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/tools/release.ts -------------------------------------------------------------------------------- /versions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hexagon/pup/HEAD/versions.json --------------------------------------------------------------------------------