UNPKG

deep-package-manager

Version:
111 lines (90 loc) 2.81 kB
/** * Created by AlexanderC on 5/27/15. */ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.CloudWatchLogsService = undefined; var _AbstractService = require('./AbstractService'); var _deepCore = require('deep-core'); var _deepCore2 = _interopRequireDefault(_deepCore); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class CloudWatchLogsService extends _AbstractService.AbstractService { /** * @param {Array} args */ constructor(...args) { super(...args); } /** * @returns {String} */ name() { return _deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS; } /** * @returns {String[]} */ static get AVAILABLE_REGIONS() { return [_deepCore2.default.AWS.Region.ANY]; } /** * @param {Core.Generic.ObjectStorage} services * @returns {CloudWatchLogsService} */ _setup(services) { // @todo: implement! if (this._isUpdate) { this._ready = true; return this; } this._ready = true; return this; } /** * @param {Core.Generic.ObjectStorage} services * @returns {CloudWatchLogsService} */ _postProvision(services) { // @todo: implement! if (this._isUpdate) { this._readyTeardown = true; return this; } this._readyTeardown = true; return this; } /** * @param {Core.Generic.ObjectStorage} services * @returns {CloudWatchLogsService} */ _postDeployProvision(services) { // @todo: implement! if (this._isUpdate) { this._ready = true; return this; } this._ready = true; return this; } /** * Allow full access to CloudWatch logs * * @returns {Core.AWS.IAM.Statement} */ generateAllowFullAccessStatement() { let policy = new _deepCore2.default.AWS.IAM.Policy(); let statement = policy.statement.add(); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'CreateLogGroup'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'CreateLogStream'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'DescribeLogGroups'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'DescribeLogStreams'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'PutLogEvents'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'GetLogEvents'); statement.action.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, 'FilterLogEvents'); statement.resource.add(_deepCore2.default.AWS.Service.CLOUD_WATCH_LOGS, _deepCore2.default.AWS.IAM.Policy.ANY, this.awsAccountId, _deepCore2.default.AWS.IAM.Policy.ANY); return statement; } } exports.CloudWatchLogsService = CloudWatchLogsService;