summaryrefslogtreecommitdiff
path: root/std/examples/gist.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/examples/gist.ts')
-rwxr-xr-xstd/examples/gist.ts61
1 files changed, 0 insertions, 61 deletions
diff --git a/std/examples/gist.ts b/std/examples/gist.ts
deleted file mode 100755
index 1698ab354..000000000
--- a/std/examples/gist.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/env -S deno run --allow-net --allow-env
-// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.
-// A program to post files to gist.github.com. Use the following to install it:
-// deno install -f --allow-env --allow-read --allow-net=api.github.com https://deno.land/std/examples/gist.ts
-import { parse } from "../flags/mod.ts";
-
-function pathBase(p: string): string {
- const parts = p.split("/");
- return parts[parts.length - 1];
-}
-
-const token = Deno.env.get("GIST_TOKEN");
-if (!token) {
- console.error("GIST_TOKEN environmental variable not set.");
- console.error("Get a token here: https://github.com/settings/tokens");
- Deno.exit(1);
-}
-
-const parsedArgs = parse(Deno.args);
-
-if (parsedArgs._.length === 0) {
- console.error(
- "Usage: gist.ts --allow-env --allow-net [-t|--title Example] some_file " +
- "[next_file]",
- );
- Deno.exit(1);
-}
-
-const files: Record<string, { content: string }> = {};
-for (const filename of parsedArgs._) {
- const base = pathBase(filename as string);
- const content = await Deno.readFile(filename as string);
- const contentStr = new TextDecoder().decode(content);
- files[base] = { content: contentStr };
-}
-
-const content = {
- description: parsedArgs.title || parsedArgs.t || "Example",
- public: false,
- files: files,
-};
-const body = JSON.stringify(content);
-
-const res = await fetch("https://api.github.com/gists", {
- method: "POST",
- headers: [
- ["Content-Type", "application/json"],
- ["User-Agent", "Deno-Gist"],
- ["Authorization", `token ${token}`],
- ],
- body,
-});
-
-if (res.ok) {
- const resObj = await res.json();
- console.log("Success");
- console.log(resObj["html_url"]);
-} else {
- const err = await res.text();
- console.error("Failure to POST", err);
-}