balena-cli
Version:
The official balena Command Line Interface
21 lines • 1.01 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.login = login;
const lazy_1 = require("../utils/lazy");
const server_1 = require("./server");
async function login({ host = '127.0.0.1', port = 0 }) {
const utils = await Promise.resolve().then(() => require('./utils'));
const loginServer = new server_1.LoginServer();
const { host: actualHost, port: actualPort, urlPath, } = await loginServer.start({ host, port });
const callbackUrl = `http://${actualHost}:${actualPort}${urlPath}`;
const loginUrl = await utils.getDashboardLoginURL(callbackUrl);
console.info(`Opening web browser for URL:\n${loginUrl}`);
const open = await Promise.resolve().then(() => require('open'));
await open(loginUrl, { wait: false });
const balena = (0, lazy_1.getBalenaSdk)();
const token = await loginServer.awaitForToken();
await balena.auth.loginWithToken(token);
loginServer.shutdown();
return token;
}
//# sourceMappingURL=index.js.map
;