Skip to content

Commit

Permalink
Merge branch 'development'
Browse files Browse the repository at this point in the history
  • Loading branch information
jclausen committed Sep 21, 2023
2 parents a6917ed + e5d8e43 commit 46fec82
Show file tree
Hide file tree
Showing 12 changed files with 509 additions and 178 deletions.
31 changes: 24 additions & 7 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,26 @@ jobs:
DB_PASSWORD: root
AWS_DOMAIN: amazonaws.com
AWS_REGION: us-east-1
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
cfengine: [ "lucee@5", "adobe@2018", "adobe@2021" ]
cfengine: [ "lucee@5", "adobe@2018", "adobe@2021" ]
coldboxVersion: [ "^6.0.0" ]
experimental: [ false ]
include:
- cfengine: "adobe@2023"
coldboxVersion: "^6.0.0"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@5"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2018"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2021"
experimental: true
steps:
- name: Checkout Repository
uses: actions/checkout@v2
Expand Down Expand Up @@ -53,21 +69,22 @@ jobs:
printf "AWS_REGION=${{ env.AWS_REGION }}\n" >> .env
printf "AWS_DOMAIN=${{ env.AWS_DOMAIN }}\n" >> .env
printf "ENGINE=${{ matrix.cfengine }}\n" >> .env
printf "COLDBOX_VERSION=${{ matrix.coldboxVersion }}\n" >> .env
- name: Setup CommandBox CLI
uses: Ortus-Solutions/[email protected]

- name: Install Dependencies
- name: Install Test Harness with ColdBox ${{ matrix.coldboxVersion }}
run: |
box run-script install:dependencies
box install
cd test-harness
box package set dependencies.coldbox=${{ matrix.coldboxVersion }}
box install
- name: Start ${{ matrix.cfengine }} Server
run: |
box server start serverConfigFile="server-${{ matrix.cfengine }}.json" --noSaveSettings --debug
# Install Adobe 2021 cfpm modules
if [[ "${{ matrix.cfengine }}" == "adobe@2021" ]] ; then
box run-script install:2021
fi
curl http://127.0.0.1:60299
- name: Run Tests
Expand Down
76 changes: 48 additions & 28 deletions ModuleConfig.cfc
Original file line number Diff line number Diff line change
Expand Up @@ -7,40 +7,52 @@
component {

// Module Properties
this.title = "Amazon S3 SDK";
this.author = "Ortus Solutions, Corp";
this.webURL = "https://www.ortussolutions.com";
this.description = "This SDK will provide you with Amazon S3 connectivity for any ColdFusion (CFML) application.";
// We will map the models
this.autoMapModels = false;
this.title = "Amazon S3 SDK";
this.author = "Ortus Solutions, Corp";
this.webURL = "https://www.ortussolutions.com";
this.description = "This SDK will provide you with Amazon S3 connectivity for any ColdFusion (CFML) application.";

// Module Entry Point
this.entryPoint = "s3sdk";
// Model Namespace
this.modelNamespace = "s3sdk";
// CF Mapping
this.cfmapping = "s3sdk";
// Auto-map models
this.autoMapModels = false;

/**
* Configure
*/
function configure(){
// Settings
variables.settings = {
accessKey : "",
autoContentType : false,
autoMD5 : false,
awsDomain : "amazonaws.com",
awsRegion : "us-east-1",
debug : false,
defaultACL : "public-read",
defaultBucketName : "",
defaultCacheControl : "no-store, no-cache, must-revalidate",
defaultDelimiter : "/",
defaultStorageClass : "STANDARD",
defaultTimeOut : 300,
encryptionCharset : "utf-8",
retriesOnError : 3,
secretKey : "",
serviceName : "s3",
signatureType : "V4",
ssl : true,
throwOnRequestError : true,
defaultEncryptionAlgorithm : "",
defaultEncryptionKey : ""
accessKey : "",
autoContentType : false,
autoMD5 : false,
awsDomain : "amazonaws.com",
awsRegion : "us-east-1",
debug : false,
defaultACL : "public-read",
defaultBucketName : "",
defaultCacheControl : "no-store, no-cache, must-revalidate",
defaultDelimiter : "/",
defaultStorageClass : "STANDARD",
defaultTimeOut : 300,
encryptionCharset : "utf-8",
retriesOnError : 3,
secretKey : "",
serviceName : "s3",
signatureType : "V4",
ssl : true,
throwOnRequestError : true,
defaultEncryptionAlgorithm : "",
defaultEncryptionKey : "",
defaultObjectOwnership : "ObjectWriter",
defaultBlockPublicAcls : false,
defaultIgnorePublicAcls : false,
defaultBlockPublicPolicy : false,
defaultRestrictPublicBuckets : false
};
}

Expand Down Expand Up @@ -70,7 +82,15 @@ component {
.initArg( name = "serviceName", value = variables.settings.serviceName )
.initArg( name = "debug", value = variables.settings.debug )
.initArg( name = "defaultEncryptionAlgorithm", value = variables.settings.defaultEncryptionAlgorithm )
.initArg( name = "defaultEncryptionKey", value = variables.settings.defaultEncryptionKey );
.initArg( name = "defaultEncryptionKey", value = variables.settings.defaultEncryptionKey )
.initArg( name = "defaultObjectOwnership", value = variables.settings.defaultObjectOwnership )
.initArg( name = "defaultBlockPublicAcls", value = variables.settings.defaultBlockPublicAcls )
.initArg( name = "defaultIgnorePublicAcls", value = variables.settings.defaultIgnorePublicAcls )
.initArg( name = "defaultBlockPublicPolicy", value = variables.settings.defaultBlockPublicPolicy )
.initArg(
name = "defaultRestrictPublicBuckets",
value = variables.settings.defaultRestrictPublicBuckets
);
binder.map( "Sv4Util@s3sdk" ).to( "#moduleMapping#.models.AmazonS3" );

binder.map( "Sv2Util@s3sdk" ).to( "#moduleMapping#.models.AmazonS3" );
Expand Down
7 changes: 2 additions & 5 deletions box.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name":"Amazon S3 SDK",
"version":"5.5.2",
"version":"5.7.1",
"slug":"s3sdk",
"location":"https://downloads.ortussolutions.com/ortussolutions/coldbox-modules/s3sdk/@build.version@/[email protected]@.zip",
"author":"Ortus Solutions, Corp",
Expand Down Expand Up @@ -46,9 +46,6 @@
"format":"cfformat run models,test-harness/tests/**/*.cfc,*.cfc --overwrite",
"format:watch":"cfformat watch models,test-harness/tests/**/*.cfc,*.cfc ./.cfformat.json",
"format:check":"cfformat check models,test-harness/tests/**/*.cfc,*.cfc",
"cfpm":"echo '\".engine/adobe2021/WEB-INF/cfusion/bin/cfpm.sh\"' | run",
"cfpm:install":"echo '\".engine/adobe2021/WEB-INF/cfusion/bin/cfpm.sh\" install ${1}' | run",
"install:2021":"run-script cfpm:install zip,debugger,mysql",
"install:dependencies":"install && cd test-harness && install"
"install:dependencies":"install --force && cd test-harness && install --force"
}
}
9 changes: 9 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

----
## v5.7.1 => 2023-SEP-21
### Fixed
* Added `entryPoint`, `modelNamespace` and `cfmapping` keys to ModuleConfig, to ensure mappings for downstream modules are available during framework load
## v5.7.0 => 2023-MAY-03
### Changed
* Updates permission handling to account for updated AWS default bucket policies
## v5.6.0 => 2023-MAR-07
### Added
* Support for overriding response headers like content type for pre-signed URLs
## v5.5.2 => 2023-FEB-07
### Fixed
* Multi-part upload concurrency fixes
Expand Down
Loading

0 comments on commit 46fec82

Please sign in to comment.