http://coldfusion.com logo
Join Slack
Powered by
# aws
  • p

    paul

    05/23/2022, 11:12 AM
    So @Mark Takata (Adobe) and updates with regards to lambda?
  • m

    Mark Takata (Adobe)

    05/23/2022, 2:53 PM
    Hey Paul! Nothing I can share unfortunately, but we are still continuing to explore options.
    😒 2
  • i

    iknowkungfoo

    06/16/2022, 11:24 PM
    Has anyone tested this new service from AWS? https://aws.amazon.com/rds/aurora/babelfish/
  • i

    iknowkungfoo

    06/16/2022, 11:26 PM
    Running SQL Server on Aurora PostgreSQL?
  • p

    paul

    06/17/2022, 12:49 AM
    Yep
  • p

    paul

    06/17/2022, 12:49 AM
    It's good, like your using SQL Server
    g
    • 2
    • 3
  • p

    philcruz

    08/16/2022, 9:15 PM
    Trying to publish a message to SNS using the Java SDK that has message attributes. Can anyone share an example?
    r
    • 2
    • 2
  • m

    Mark Berning

    08/23/2022, 2:06 PM
    We have started the upgrade from CF 2018 --> 2021. We want to migrate many sets of files from an on premise web application to AWS served through CloudFront and S3. During this process we will need to "register" in a DB the new path for the folder (AWS prefix). We don't register every file just top level directory. A typical upload will consist of ~2000-3000 small files (html, gif, png) and a few large files (+100 MB). My plan is to: 1. Mount the disk currently used for the Web Server to the CF server (both on-premise) read only 2. With CF web application pick the current registration (knows the current web server path) 3. Ask for the new folder location in the S3 bucket 4. Upload the files - I am guessing this will take considerable amount of time, longer than current CF page timeout 5. Update the registration to point to AWS S3 bucket With all of the S3 built-in functions as well as using AWS REST functions (currently using), what is the most efficient way to code the upload: • uploadDirectory - easiest to code, but don't know if it does any of parallel, multi-part or will be the most efficient loop through all files and upload individually: • parallelUploadFile • multipartUpload • uploadObject • uploadObject but use threading (arrayMap, structMap, traditional threading) • Using REST API (cfhttp) A couple other notes: We would be using our staging CF server, not our production server, to do this. We don't want to upload all files currently on the web server, we want to be selective. The directory structures on the web server are not an exact path match to AWS S3 buckets and therefore may need manual prompting. It is not just upload but we also need to update the DB. Thoughts/comments/suggestions?
    f
    • 2
    • 1
  • b

    brianklaas

    08/24/2022, 7:20 PM
    If you're willing to live with a request timeout setting of more than 60 seconds, you should be able to upload a couple hundred MB of data in a single request. You could then use the uploadDirectory method of ColdFusion 2021's built-in S3 support. I don't personally know if uploadDirectory works in a multithreaded way — that would be a question for the Adobe engineers. The AWS Java SDK definitely is multithreaded, however. multipartUpload is really only good for very large files — a gigabyte or more in size. It doesn't sound like you have many of those.
    p
    • 2
    • 1
  • b

    bdw429s

    11/09/2022, 4:17 PM
    I'm working on adding server-side encryption support to Ortus' S3SDK and I'm getting hung up on something that seems simple and I'm curious if anyone can help me here. Without getting bogged down in the details, I'm testing out customer-provided server-side encryption keys which are provided to the REST API via the HTTP headers documented here: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html#specifying-s3-c-encryption • the encryption key needs to be a 256-bit base64-encoded, so I used
    generatesecretkey( 'AES', '256' )
    • The base64-coded MD5 hash of the key I tried two different ways-- ◦ by hashing the base64-encoded key
    toBase64( hash( key ) )
    ◦ or hashing the original binary key
    toBase64( hash( toBinary( key ) ) )
    However, no matter what I do, I get this error back from the AWS REST API
    Copy code
    The calculated MD5 hash of the key did not match the hash that was provided.
    I'm having a hard time finding a specific reference online that shows examples of what an AES256 key and it's hash would look like, but I can see that my values are not matching examples I see in tickets online. Is anyone, perhaps more familiar with how AWS does stuff, able to see what I'm doing wrong here?
    p
    • 2
    • 17
  • b

    bdw429s

    11/09/2022, 8:00 PM
    ☝️ Got this working 😉
  • b

    bdw429s

    11/09/2022, 8:00 PM
    message has been deleted
    p
    • 2
    • 1
  • c

    Cameron Childress

    12/01/2022, 4:28 PM
    Lambda snap start was announced at re:Invent a couple of days ago. Seems to have a pretty significant impact on Java based apps. I wonder if this will breath any life into Fuseless. https://aws.amazon.com/blogs/aws/new-accelerate-your-lambda-functions-with-lambda-snapstart/
    👍 1
    f
    m
    +2
    • 5
    • 17
  • m

    Mark Berning

    12/12/2022, 8:32 PM
    I am looking to use the new AWS S3 capabilities in CF 2021. It looks like I am forced to go into the CF Administrator to add Cloud Credentials and Cloud Configuration before I can use it or can I define that on the fly? The reason I am asking is we rotate our keys and retrieve the new keys and store them encrypted in a DB. Anyone have experience using the new AWS S3 functions?
    j
    p
    • 3
    • 9
  • h

    harryk

    04/13/2023, 12:58 PM
    I have a problem with the translate service in the AWS-CFML repo from @jcberquist https://github.com/jcberquist/aws-cfml If I call it in Lucee5 e.g. response = aws.translate.translateText( Text = "trash", SourceLanguageCode = "en", TargetLanguageCode = "zh" ); I get a correctly encoded chinese text. But unfortunately it doesn't work in ACF (tested with ACF 2018 and 2021) - the result in response.data.TranslatedText is not encoded correctly. Thanks for your help!
    e
    • 2
    • 5
  • h

    harryk

    05/01/2023, 3:43 PM
    I am working with the AWS REST Api (and the https://github.com/jcberquist/aws-cfml library). My goal is to write some RewriteRules into a S3 bucket. Unfortunately the aws-cfml library has not method yet to write and read bucket settings. So I first wrote the method "getBucketWebsite", which works fine (will add a pull request later). Then I wrote the "putBucketWebsite" method:
    Copy code
    /**
        * This operation sets the configuration of the website that is specified in the website subresource.
        * <https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketWebsite.html>
        * @Bucket the name of the bucket
        * @Content-MD5 The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the
        * request body was not corrupted in transit.
        * @x-amz-expected-bucket-owner The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails
        * with the HTTP status code 403 Forbidden (access denied).
        * @x-amz-sdk-checksum-algorithm Indicates the algorithm used to create the checksum for the object when using the SDK. This header will not
        * provide any additional functionality if not using the SDK.
        * @WebsiteConfiguration Root level tag for the WebsiteConfiguration parameters. Required: Yes
        *   @ErrorDocument The name of the error document for the website.
        *   @IndexDocument The name of the index document for the website.
        *   @RedirectAllRequestsTo The redirect behavior for every request to this bucket's website endpoint. If you specify this property, you can't
        * specify any other property.
        *   @RoutingRules Rules that define when a redirect is applied and the redirect behavior. Type: Array of RoutingRule data types
        */
        public any function putBucketWebsite(
            required string Bucket,
        ) {
            var requestSettings = api.resolveRequestSettings( argumentCollection = arguments );
            var queryParams = { 'website': '' };
            var apiResponse = apiCall(
                requestSettings,
                'PUT',
                '/',
                queryParams,
                { },
                arguments.WebsiteConfiguration
            );
            return apiResponse;
        }
    My problem here is the WebsiteConfiguration xml data type. I guess that I would have to read the existing settings and then merge my rewriteRule xml Node into the existing xml? Or is there an easier way? aws-cfml has some xml methods, but not xmlMerge - so I could add it? Example:
    Copy code
    settings = aws.s3.getBucketWebsite(
    	Bucket="pwa-app"
    );
    
    // settings.rawData = '<WebsiteConfiguration xmlns="<http://s3.amazonaws.com/doc/2006-03-01/>"><IndexDocument><Suffix>index.html</Suffix></IndexDocument><ErrorDocument><Key>index.html</Key></ErrorDocument></WebsiteConfiguration>';
    
    WebsiteConfiguration = xmlMerge(settings.rawData, '<RoutingRules><RoutingRule><Condition><KeyPrefixEquals>webcam</KeyPrefixEquals><HttpErrorCodeReturnedEquals>403</HttpErrorCodeReturnedEquals></Condition><Redirect><Protocol>https</Protocol><HostName><http://testhost.de|testhost.de></HostName><ReplaceKeyWith>podcasts/webcam.html</ReplaceKeyWith></Redirect></RoutingRule></RoutingRules>');
    
    setdata = aws.s3.putBucketWebsite(
    	Bucket="pwa-app",
    	WebsiteConfiguration = WebsiteConfiguration
    );
    b
    • 2
    • 7
  • a

    Alex

    05/22/2023, 8:13 AM
    @Alex has left the channel
  • t

    tony

    08/09/2023, 2:10 PM
    @tony has left the channel
  • m

    Mark Berning

    09/29/2023, 11:48 AM
    FYI - anyone using AWS SQS and processing the SQS queues from CF or Lambda should really look at EventBridge Pipes https://us-east-1.console.aws.amazon.com/events/home?region=us-east-1#/pipes It manages the SQS queue, throttling, and ensured delivery to your CF API calls. I no longer need to poll the que from CF or create my own lambda to do it. It also allows for built in JSON manipulation. You can use lambda to filter and/or have a built in enrichment step before calling CF API. It has really simplified the whole SQS --> CF process for us.
    👍 3
    b
    s
    • 3
    • 3
  • d

    dan.byron

    12/29/2023, 9:03 PM
    Has anyone here had experience with #lucee and Docker in a prod env?
    b
    n
    +3
    • 6
    • 15
  • d

    dan.byron

    02/08/2024, 7:22 PM
    Any ideas where to address this error coming from Tomcat (Lucee v6)? This is an Amazon Linux 2023 instance running behind an ELB. The timout of the ELB has been updated to 300 seconds, but this error persists at exactly the 60 second mark. I see there is a connection timeout seting found within
    /opt/lucee/tomcat/conf/server.xml
    but that setting is set for 20000, so not sure that’s applicable?
    <Connector port="8888" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
    p
    q
    • 3
    • 3
  • p

    paul

    05/20/2024, 2:04 AM
    Any decent java devs around that woudl potentially work with me to get Fuseless working again? https://fuseless.org/. Needs to be updated to work with java 11 or 21
    f
    g
    c
    • 4
    • 16
  • s

    Steve Bryant

    06/28/2024, 5:47 PM
    @Steve Bryant has left the channel
  • j

    jakobward

    08/06/2024, 3:10 AM
    @jakobward has left the channel
  • n

    nyahgfx

    08/19/2024, 8:10 AM
    anyone using docker in aws ecs ? is there an easy way to configure it for multi sites ? How do you deploy the code to the ecs containers ?
    d
    p
    • 3
    • 13
  • a

    alholden

    04/01/2025, 10:20 PM
    My S3 bucket has thousands of image files. Each "folder" in the bucket represents a different (Mura) web site. I can see them all in the AWS console. They can all be loaded in a browser by their public S3 resource URL. When the Mura server calls to get a list of all images in the bucket for a specific site (sub "folder"), the list is returned fine and dandy. Except for just one site (or bucket "folder"). That single Mura call to S3 gets nothing. Here's what the component returns:
    <?xml version="1.0" encoding="utf-8" standalone="no"?>
    <Connector resourceType="Images">
    <Error number="0"/>
    <CurrentFolder acl="255" path="/" url="<https://BUCKET.s3.amazonaws.com/aam/assets/Image/>"/>
    <Files/>
    </Connector>
    I'm too dumb to understand why S3 would be happy to return other "folder" lists from the same bucket, except just this "/aam/" one, to a Lucee 6.1.0.243 server running Mura. I'll try updating the S3 Resource Extension - 2.0.2.21 ( 2.0.1.25 ) tonight, although I'm not sure how only one location in a bucket would need it. Thanks for reading...
    p
    • 2
    • 6