private createRole()

in lib/template/pattern/lambda-pattern.ts [90:106]


    private createRole(roleName: string, policies: string[] | iam.PolicyStatement[]): iam.Role {
        const role = new iam.Role(this, roleName, {
            roleName: roleName,
            assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),
        });

        role.addManagedPolicy({ managedPolicyArn: 'arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole' });
        for (var item of policies) {
            if (item instanceof iam.PolicyStatement) {
                role.addToPolicy(item);
            } else {
                role.addManagedPolicy({ managedPolicyArn: item });
            }
        }

        return role;
    }