Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aws lambda 无错误堆栈名。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础设施初始化,但最终放弃并退回到手动创建资源,并将其记录在自述文件和私有配置文件_Aws Lambda_Amazon Cloudformation_Amazon Elasticache_Serverless Framework - Fatal编程技术网

Aws lambda 无错误堆栈名。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础设施初始化,但最终放弃并退回到手动创建资源,并将其记录在自述文件和私有配置文件

Aws lambda 无错误堆栈名。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础设施初始化,但最终放弃并退回到手动创建资源,并将其记录在自述文件和私有配置文件,aws-lambda,amazon-cloudformation,amazon-elasticache,serverless-framework,Aws Lambda,Amazon Cloudformation,Amazon Elasticache,Serverless Framework,无错误堆栈名。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础设施初始化,但最终放弃并退回到手动创建资源,并将其记录在自述文件和私有配置文件中。只要我手动创建Elasticache集群,这对我来说应该就行了,并使用无服务器堆栈名称作为密钥名称的前缀。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天


无错误堆栈名。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础设施初始化,但最终放弃并退回到手动创建资源,并将其记录在自述文件和私有配置文件中。只要我手动创建Elasticache集群,这对我来说应该就行了,并使用无服务器堆栈名称作为密钥名称的前缀。每个项目一次性手动操作不是问题,我可能还会为生产创建一个单独的实例。但令人惊讶的是,使用CloudFormation如此困难。这是两天来我第三次尝试使用它来简化基础架构初始化,结果放弃并退回到手动创建资源,并将它们记录在自述文件和私有配置文件中。
"Resources": {
    ...snip...
    "Redis": {
        "Type": "AWS::ElastiCache::CacheCluster",
        "Properties": {
            "AutoMinorVersionUpgrade": "true",
            "AZMode": "single-az",
            "CacheNodeType": "cache.t2.micro",
            "Engine": "redis",
            "EngineVersion": "2.8.24",
            "NumCacheNodes": "1",
            "PreferredAvailabilityZone": "eu-west-1a",
            "PreferredMaintenanceWindow": "tue:00:30-tue:01:30",
            "CacheSubnetGroupName": {
                "Ref": "cachesubnetdefault"
            },
            "VpcSecurityGroupIds": [
                {
                    "Fn::GetAtt": [
                        "sgdefault",
                        "GroupId"
                    ]
                }
            ]
        }
    }
},
"Outputs": {
    "IamRoleArnLambda": {
        "Description": "ARN of the lambda IAM role",
        "Value": {
            "Fn::GetAtt": [
                "IamRoleLambda",
                "Arn"
            ]
        }
    },
    "RedisEndpointAddress": {
        "Description": "Redis server host",
        "Value": {
            "Fn::GetAtt": [
                "Redis",
                "Address"
            ]
        }
    }
}
{
  "redisUrl": "...",
  "redisPort": "...",
  "redisPass": "..."
}
"environment": {
  "REDIS_URL": "${redisUrl}",
  "REDIS_PORT": "${redisPort}",
  "REDIS_PASS": "${redisPass}"
}
module.exports = () => {
  const redis = require('redis')
  const jsonify = require('redis-jsonify')
  const redisOptions = {
    host: process.env.REDIS_URL,
    port: process.env.REDIS_PORT,
    password: process.env.REDIS_PASS
  }

  return jsonify(redis.createClient(redisOptions))
}
redis = require('../lib/redis')()
"Outputs": {
    "redisHost": {
        "Description": "Redis host URI",
        "Value": {
            "Fn::GetAtt": [
                "RedisCluster",
                "RedisEndpoint.Address"
            ]
        }
    }
}
"environment": {
    "REDIS_HOST": "${redisHost}"
},
exports.handler = function(event, context) {
    console.log("Redis host: ", process.env.REDIS_HOST);
};
// Require Serverless ENV vars
var ServerlessHelpers = require('serverless-helpers-js');
ServerlessHelpers.loadEnv();

// Require Logic
var lib = require('../lib');

// Lambda Handler
module.exports.handler = function(event, context) {
  ServerlessHelpers.CF.loadVars()
  .then(function() {
    lib.respond(event, function(error, response) {
      return context.done(error, response);
    });
  })
};