UNPKG

@litexa/core

Version:

Litexa, a programming language for writing Alexa skills

46 lines (35 loc) 1.25 kB
### # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ### fs = require 'fs' path = require 'path' Generator = require('./generator') class ArtifactTrackerGenerator extends Generator @description: 'artifacts tracker' constructor: (args) -> super(args) @artifactClass = args.artifactClass # Public Interface generate: -> filename = 'artifacts.json' source = path.join @_rootPath(), filename data = if fs.existsSync source @logger.log "existing #{filename} found -> skipping creation" JSON.parse fs.readFileSync source, 'utf8' else @logger.log "creating #{filename} -> contains deployment records and should be version controlled" {} artifacts = new @artifactClass source, data artifacts.saveGlobal 'last-generated', currentTime() # Direct Public Side-Effect @options.artifacts = artifacts return Promise.resolve() # Helper Methods currentTime = -> (new Date).getTime() module.exports = ArtifactTrackerGenerator