Skip to content

Commit 1bc930b

Browse files
committed
Print log(in) messages
1 parent d73d06c commit 1bc930b

File tree

2 files changed

+20
-6
lines changed

2 files changed

+20
-6
lines changed

main.ts

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { ROOT, exists } from "./filesystem.ts";
99
import { loadConfig } from "./config.ts";
1010
import { authUrl, obtainToken } from "./oauth.ts";
1111
import { decodeId } from "./openid.ts";
12-
import { getToken, setToken } from "./refresh_tokens.ts";
12+
import { BACKING_FILE, getToken, setToken } from "./refresh_tokens.ts";
1313

1414
const CONFIG_FILE = "config.json";
1515

@@ -55,20 +55,32 @@ async function handler(request: Request): Promise<Response> {
5555

5656
const expiry = new Date(Date.now() + tokens.expires_in * 1000);
5757
const email = decodeId(tokens.id_token).email;
58-
if(tokens.refresh_token)
58+
let newUser = "";
59+
if(tokens.refresh_token) {
5960
await setToken(email, tokens.refresh_token);
60-
else {
61+
newUser = " for the first time";
62+
} else {
6163
const stored = await getToken(email);
62-
if(!stored)
64+
if(!stored) {
65+
console.warn("User " + email + " missing from " + BACKING_FILE + "!");
6366
return new Response(
6467
"User is banned: " + email,
6568
{status: Status.Forbidden},
6669
);
70+
}
6771
tokens.refresh_token = stored;
6872
}
73+
console.log("User " + email + " logged in" + newUser);
6974

7075
let vsCodeToken = emailToToken[email];
71-
if(!vsCodeToken) {
76+
if(vsCodeToken)
77+
console.log(
78+
"Reusing user "
79+
+ email
80+
+ "'s existing VSCode instance at port "
81+
+ tokenToPort[vsCodeToken]
82+
);
83+
else {
7284
const vscode = Deno.run({
7385
cmd: ["chroot/jail", "vscode", "-c", "openvscode-drive"],
7486
stdin: "piped",
@@ -83,6 +95,7 @@ async function handler(request: Request): Promise<Response> {
8395
tokenToPort[token] = port;
8496
emailToToken[email] = token;
8597
vsCodeToken = token;
98+
console.log("Started new VSCode instance for user " + email + " on port " + port);
8699
}
87100
url.search = "?tkn=" + vsCodeToken;
88101
return Response.redirect(String(url));
@@ -165,3 +178,4 @@ if(!config) {
165178
Deno.exit(3);
166179
}
167180
serve(handler, address);
181+
console.log("Started Web server at http://" + address.hostname + ":" + (address.port ?? 8000));

refresh_tokens.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { exists } from "./filesystem.ts";
22
import { mutex } from "./mutex.ts";
33

4-
const BACKING_FILE = "refresh_tokens.json";
4+
export const BACKING_FILE = "refresh_tokens.json";
55

66
let tokens: {[_: string]: string} | null = null;
77
let lock = mutex();

0 commit comments

Comments
 (0)