UNPKG

@litexa/core

Version:

Litexa, a programming language for writing Alexa skills

53 lines (42 loc) 1.96 kB
### # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ### chalk = require 'chalk' path = require 'path' fs = require 'fs' mkdirp = require 'mkdirp' debug = require('debug')('litexa') LoggingChannel = require './loggingChannel' module.exports.run = (options, after) -> logger = new LoggingChannel({ logStream: options.logger ? console logPrefix: 'logs' verbose: options.verbose }) logger.important "Beginning log pull" config = require './project-config' options.projectConfig = await config.loadConfig options.root options.projectInfo = new (require './project-info')({jsonConfig: options.projectConfig, variant: options.deployment}) options.logsRoot = path.join options.projectConfig.root, '.logs' mkdirp.sync options.logsRoot logger.log "logs root at #{options.logsRoot}" unless 'deployments' of options.projectInfo throw new Error "missing `deployments` key in the Litexa config file, can't continue without parameters to pass to the deployment module!" options.deployment = options.deployment ? 'development' deploymentOptions = options.projectInfo.deployments[options.deployment] options.deploymentName = options.deployment options.projectRoot = options.projectConfig.root options.deploymentOptions = deploymentOptions unless deploymentOptions? throw new Error "couldn't find a deployment called `#{options.deployment}` in the deployments section of the Litexa config file, cannot continue." deployModule = require('../deployment/deployment-module')(options.projectConfig.root, deploymentOptions, logger) deployModule.logs.pull options, logger .then -> logger.important "done pulling logs" .catch (error) -> logger.important error