From 0b40bf4b3d8c9564ff5c84c3f0eca3892155d7e8 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Tue, 30 Apr 2024 05:14:44 -0400 Subject: [PATCH 1/8] version upgrade + pk fix --- .settings/org.eclipse.jdt.core.prefs | 20 ++++++++++---------- doc/changes/changelog.md | 1 + doc/changes/changes_2.8.0.md | 10 ++++++++++ doc/user_guide/user_guide.md | 20 ++++++++++---------- pk_generated_parent.pom | 2 +- pom.xml | 4 ++-- 6 files changed, 34 insertions(+), 23 deletions(-) create mode 100644 doc/changes/changes_2.8.0.md diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index bb40c3fa..266b3f72 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -1,13 +1,13 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore -org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull +org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= -org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= -org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable.secondary= -org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled +org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 @@ -56,15 +56,15 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning -org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error +org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning org.eclipse.jdt.core.compiler.problem.nullReference=warning -org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error -org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning +org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning +org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=ignore org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore -org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning @@ -78,7 +78,7 @@ org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled -org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled +org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning @@ -111,7 +111,7 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning -org.eclipse.jdt.core.compiler.processAnnotations=disabled +org.eclipse.jdt.core.compiler.processAnnotations=enabled org.eclipse.jdt.core.compiler.release=disabled org.eclipse.jdt.core.compiler.source=11 org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md index 02675fd5..86b9d6e8 100644 --- a/doc/changes/changelog.md +++ b/doc/changes/changelog.md @@ -1,5 +1,6 @@ # Changes +* [2.8.0](changes_2.8.0.md) * [2.7.12](changes_2.7.12.md) * [2.7.11](changes_2.7.11.md) * [2.7.10](changes_2.7.10.md) diff --git a/doc/changes/changes_2.8.0.md b/doc/changes/changes_2.8.0.md new file mode 100644 index 00000000..9dbe7a4f --- /dev/null +++ b/doc/changes/changes_2.8.0.md @@ -0,0 +1,10 @@ +# Cloud Storage Extension 2.8.0, released 2024-??-?? + +Code name: + +## Summary + +## Features + +* ISSUE_NUMBER: description + diff --git a/doc/user_guide/user_guide.md b/doc/user_guide/user_guide.md index b6f1ff91..23985a95 100644 --- a/doc/user_guide/user_guide.md +++ b/doc/user_guide/user_guide.md @@ -150,7 +150,7 @@ downloaded jar file is the same as the checksum provided in the releases. To check the SHA256 result of the local jar, run the command: ```sh -sha256sum exasol-cloud-storage-extension-2.7.12.jar +sha256sum exasol-cloud-storage-extension-2.8.0.jar ``` ### Building From Source @@ -180,7 +180,7 @@ mvn clean package -DskipTests=true ``` The assembled jar file should be located at -`target/exasol-cloud-storage-extension-2.7.12.jar`. +`target/exasol-cloud-storage-extension-2.8.0.jar`. ### Create an Exasol Bucket @@ -202,7 +202,7 @@ for the HTTP protocol. Upload the jar file using curl command: ```sh -curl -X PUT -T exasol-cloud-storage-extension-2.7.12.jar \ +curl -X PUT -T exasol-cloud-storage-extension-2.8.0.jar \ http://w:@exasol.datanode.domain.com:2580// ``` @@ -234,7 +234,7 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION; CREATE OR REPLACE JAVA SET SCRIPT IMPORT_PATH(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesImportQueryGenerator; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( @@ -244,12 +244,12 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( end_index DECIMAL(36, 0) ) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / ``` @@ -268,12 +268,12 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION; CREATE OR REPLACE JAVA SET SCRIPT EXPORT_PATH(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.TableExportQueryGenerator; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT EXPORT_TABLE(...) EMITS (ROWS_AFFECTED INT) AS %scriptclass com.exasol.cloudetl.scriptclasses.TableDataExporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / ``` @@ -407,13 +407,13 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( ) AS %jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180 %scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS %jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180 %scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.7.12.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.0.jar; / ``` diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom index 5c40e703..fa05372b 100644 --- a/pk_generated_parent.pom +++ b/pk_generated_parent.pom @@ -3,7 +3,7 @@ 4.0.0 com.exasol cloud-storage-extension-generated-parent - 2.7.12 + 2.8.0 pom UTF-8 diff --git a/pom.xml b/pom.xml index 54527579..c1eb99f4 100644 --- a/pom.xml +++ b/pom.xml @@ -3,14 +3,14 @@ 4.0.0 com.exasol cloud-storage-extension - 2.7.12 + 2.8.0 Cloud Storage Extension Exasol Cloud Storage Import And Export Extension https://github.com/exasol/cloud-storage-extension/ cloud-storage-extension-generated-parent com.exasol - 2.7.12 + 2.8.0 pk_generated_parent.pom From 3d948a2e2c586500969608d6baeb941be9fbd398 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Tue, 30 Apr 2024 05:21:46 -0400 Subject: [PATCH 2/8] run pk:fix --- .settings/org.eclipse.jdt.core.prefs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index 266b3f72..bb40c3fa 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -1,13 +1,13 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore -org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull +org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull org.eclipse.jdt.core.compiler.annotation.nonnull.secondary= -org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=javax.annotation.ParametersAreNonnullByDefault +org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary= -org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable +org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable org.eclipse.jdt.core.compiler.annotation.nullable.secondary= -org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled +org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 @@ -56,15 +56,15 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning -org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning +org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error org.eclipse.jdt.core.compiler.problem.nullReference=warning -org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning -org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=ignore +org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error +org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore -org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning @@ -78,7 +78,7 @@ org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled -org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled +org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning @@ -111,7 +111,7 @@ org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning -org.eclipse.jdt.core.compiler.processAnnotations=enabled +org.eclipse.jdt.core.compiler.processAnnotations=disabled org.eclipse.jdt.core.compiler.release=disabled org.eclipse.jdt.core.compiler.source=11 org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false From 41cc2ffec6eca927273733bde44f4e8c640b34c7 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Wed, 8 May 2024 06:55:05 -0400 Subject: [PATCH 3/8] fix typo in code --- src/main/scala/com/exasol/cloudetl/bucket/SecureBucket.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/scala/com/exasol/cloudetl/bucket/SecureBucket.scala b/src/main/scala/com/exasol/cloudetl/bucket/SecureBucket.scala index c830a225..5c94588a 100644 --- a/src/main/scala/com/exasol/cloudetl/bucket/SecureBucket.scala +++ b/src/main/scala/com/exasol/cloudetl/bucket/SecureBucket.scala @@ -27,7 +27,7 @@ trait SecureBucket extends LazyLogging { self: Bucket => throw new BucketValidationException( ExaError .messageBuilder("E-CSE-5") - .message("Using credentials as parameters is forbidded.") + .message("Using credentials as parameters is forbidden.") .mitigation("Please use an Exasol named connection object via CONNECTION_NAME property.") .toString() ) From 6eb754bba8f8dc04715c921d5865ff74af9e74e1 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Wed, 8 May 2024 06:55:33 -0400 Subject: [PATCH 4/8] add regex for onelake + test --- .../exasol/cloudetl/bucket/AzureAbfsBucket.scala | 5 +++++ .../cloudetl/bucket/AzureAbfsBucketTest.scala | 15 +++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala b/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala index f2329e6f..6195a533 100644 --- a/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala +++ b/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala @@ -65,12 +65,17 @@ final case class AzureAbfsBucket(path: String, params: StorageProperties) extend // Intentionally copy-paste, duplicate count: 2. Please, refactor when // it reaches 3+. + // Fabric / OneLake: .dfs.fabric.microsoft.com private[this] final val AZURE_ABFS_PATH_REGEX: Regex = """abfss?://(.*)@([^.]+).dfs.core.windows.net/(.*)$""".r + private[this] final val AZURE_ABFS_ONELAKE_PATH_REGEX: Regex = + """abfss?://(.*)@([^.]+)\.dfs\.fabric\.microsoft\.com/(.*)$""".r private[this] def regexParsePath(path: String): AccountAndContainer = path match { case AZURE_ABFS_PATH_REGEX(containerName, accountName, _) => AccountAndContainer(accountName, containerName) + case AZURE_ABFS_ONELAKE_PATH_REGEX(containerName, accountName, _) => + AccountAndContainer(accountName, containerName) case _ => throw new BucketValidationException( ExaError diff --git a/src/test/scala/com/exasol/cloudetl/bucket/AzureAbfsBucketTest.scala b/src/test/scala/com/exasol/cloudetl/bucket/AzureAbfsBucketTest.scala index d3a08ec7..c5d67c9a 100644 --- a/src/test/scala/com/exasol/cloudetl/bucket/AzureAbfsBucketTest.scala +++ b/src/test/scala/com/exasol/cloudetl/bucket/AzureAbfsBucketTest.scala @@ -36,6 +36,21 @@ class AzureAbfsBucketTest extends AbstractBucketTest { assert(thrown.getMessage().startsWith("E-CSE-20")) assert(thrown.getMessage().contains(s"path '$path' scheme is not valid.")) } + // https://github.com/MicrosoftDocs/fabric-docs/blob/main/docs/onelake/onelake-access-api.md + // "abfss://container1@account1.dfs.core.windows.net/data/" + // The account name is always onelake + // The container name is your workspace name. + // + // From the docs + // -> abfs[s]://@onelake.dfs.fabric.microsoft.com/.// + test("apply throws if Azure OneLake path does not return valid Bucket") { + val path = "abfss://workspacename@onelake.dfs.fabric.microsoft.com/item.itemtype/path/filename" + val exaMetadata = mockConnectionInfo("", "AZURE_SECRET_KEY=secret") + properties = defaultProperties ++ Map(PATH -> path, "CONNECTION_NAME" -> "connection_info") + + val bucket = getBucket(properties, exaMetadata) + assert(bucket.isInstanceOf[AzureAbfsBucket]) + } test("apply throws if no connection name is provided") { properties = defaultProperties From c8cf3882f9fc19416a30d39c1af71668ce1ed18a Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Wed, 8 May 2024 07:33:35 -0400 Subject: [PATCH 5/8] fix failing test after typo fix --- .../scala/com/exasol/cloudetl/bucket/AbstractBucketTest.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/scala/com/exasol/cloudetl/bucket/AbstractBucketTest.scala b/src/test/scala/com/exasol/cloudetl/bucket/AbstractBucketTest.scala index d3fea9cf..497e01dd 100644 --- a/src/test/scala/com/exasol/cloudetl/bucket/AbstractBucketTest.scala +++ b/src/test/scala/com/exasol/cloudetl/bucket/AbstractBucketTest.scala @@ -54,7 +54,7 @@ class AbstractBucketTest extends AnyFunSuite with BeforeAndAfterEach with Mockit fn } val message = thrown.getMessage() - assert(message.contains("Using credentials as parameters is forbidded")) + assert(message.contains("Using credentials as parameters is forbidden")) assert(message.contains("Please use an Exasol named connection object")) () } From a9b06b98a861a7740356fcd203cba2b07c5fa9ba Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Tue, 14 May 2024 04:59:35 -0400 Subject: [PATCH 6/8] updated pk + ran pk fix --- .github/workflows/broken_links_checker.yml | 2 ++ .github/workflows/ci-build.yml | 3 +-- dependencies.md | 4 ++-- doc/changes/changes_2.8.0.md | 10 ++++++++++ pk_generated_parent.pom | 6 +++--- pom.xml | 2 +- 6 files changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/broken_links_checker.yml b/.github/workflows/broken_links_checker.yml index d7a38b46..39612b76 100644 --- a/.github/workflows/broken_links_checker.yml +++ b/.github/workflows/broken_links_checker.yml @@ -13,6 +13,8 @@ on: jobs: linkChecker: runs-on: ubuntu-latest + permissions: + contents: read defaults: run: shell: "bash" diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml index 05866e36..6585b5c1 100644 --- a/.github/workflows/ci-build.yml +++ b/.github/workflows/ci-build.yml @@ -15,8 +15,7 @@ jobs: shell: bash } permissions: { - contents: read, - checks: write + contents: read } concurrency: { group: '${{ github.workflow }}-${{ github.ref }}-${{ matrix.exasol_db_version }}', diff --git a/dependencies.md b/dependencies.md index b7322e29..571ac810 100644 --- a/dependencies.md +++ b/dependencies.md @@ -79,7 +79,7 @@ | Dependency | License | | ------------------------------------------------------- | --------------------------------------------- | | [SonarQube Scanner for Maven][82] | [GNU LGPL 3][83] | -| [Apache Maven Toolchains Plugin][84] | [Apache License, Version 2.0][3] | +| [Apache Maven Toolchains Plugin][84] | [Apache-2.0][3] | | [Apache Maven Compiler Plugin][85] | [Apache-2.0][3] | | [Apache Maven Enforcer Plugin][86] | [Apache-2.0][3] | | [Maven Flatten Plugin][87] | [Apache Software Licenese][3] | @@ -91,7 +91,7 @@ | [Versions Maven Plugin][94] | [Apache License, Version 2.0][3] | | [duplicate-finder-maven-plugin Maven Mojo][95] | [Apache License 2.0][32] | | [Apache Maven Assembly Plugin][96] | [Apache-2.0][3] | -| [Apache Maven JAR Plugin][97] | [Apache License, Version 2.0][3] | +| [Apache Maven JAR Plugin][97] | [Apache-2.0][3] | | [Artifact reference checker and unifier][98] | [MIT License][99] | | [Maven Failsafe Plugin][100] | [Apache-2.0][3] | | [JaCoCo :: Maven Plugin][101] | [EPL-2.0][102] | diff --git a/doc/changes/changes_2.8.0.md b/doc/changes/changes_2.8.0.md index 9dbe7a4f..0d57e19a 100644 --- a/doc/changes/changes_2.8.0.md +++ b/doc/changes/changes_2.8.0.md @@ -8,3 +8,13 @@ Code name: * ISSUE_NUMBER: description +## Dependency Updates + +### Cloud Storage Extension + +#### Plugin Dependency Updates + +* Updated `com.exasol:error-code-crawler-maven-plugin:2.0.2` to `2.0.3` +* Updated `com.exasol:project-keeper-maven-plugin:4.3.0` to `4.3.1` +* Updated `org.apache.maven.plugins:maven-jar-plugin:3.3.0` to `3.4.1` +* Updated `org.apache.maven.plugins:maven-toolchains-plugin:3.1.0` to `3.2.0` diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom index fa05372b..967503c3 100644 --- a/pk_generated_parent.pom +++ b/pk_generated_parent.pom @@ -44,7 +44,7 @@ org.apache.maven.plugins maven-toolchains-plugin - 3.1.0 + 3.2.0 @@ -230,7 +230,7 @@ org.apache.maven.plugins maven-jar-plugin - 3.3.0 + 3.4.1 default-jar @@ -315,7 +315,7 @@ com.exasol error-code-crawler-maven-plugin - 2.0.2 + 2.0.3 verify diff --git a/pom.xml b/pom.xml index c1eb99f4..582c8d3e 100644 --- a/pom.xml +++ b/pom.xml @@ -865,7 +865,7 @@ com.exasol project-keeper-maven-plugin - 4.3.0 + 4.3.1 From 0ce5ee04bd1b085ad557a1c6d08cd9547075ad95 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Fri, 14 Jun 2024 06:06:14 -0400 Subject: [PATCH 7/8] add check for fabric and path and alter the fs.azure.account.key.accountname suffix when found --- .../scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala b/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala index 6195a533..83286f8a 100644 --- a/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala +++ b/src/main/scala/com/exasol/cloudetl/bucket/AzureAbfsBucket.scala @@ -57,8 +57,11 @@ final case class AzureAbfsBucket(path: String, params: StorageProperties) extend .get(AZURE_ACCOUNT_NAME) .getOrElse(accountAndContainer.accountName) val secretKey = mergedProperties.getString(AZURE_SECRET_KEY) - - conf.set(s"fs.azure.account.key.$accountName.dfs.core.windows.net", secretKey) + if (path.contains("fabric")) { + conf.set(s"fs.azure.account.key.$accountName.dfs.fabric.microsoft.com", secretKey) + } else { + conf.set(s"fs.azure.account.key.$accountName.dfs.core.windows.net", secretKey) + } conf } From 03fff5e7093d26523b4048b640a69db61e59e4b8 Mon Sep 17 00:00:00 2001 From: Pieterjan Spoelders Date: Fri, 14 Jun 2024 06:07:40 -0400 Subject: [PATCH 8/8] update version number to 2.9 to get PK to play along nicely --- .github/workflows/dependencies_update.yml | 2 +- doc/changes/changelog.md | 1 + doc/changes/changes_2.9.0.md | 17 +++++++++++++++++ doc/user_guide/user_guide.md | 20 ++++++++++---------- pk_generated_parent.pom | 2 +- pom.xml | 6 +++--- 6 files changed, 33 insertions(+), 15 deletions(-) create mode 100644 doc/changes/changes_2.9.0.md diff --git a/.github/workflows/dependencies_update.yml b/.github/workflows/dependencies_update.yml index 1bf502f0..0fa71800 100644 --- a/.github/workflows/dependencies_update.yml +++ b/.github/workflows/dependencies_update.yml @@ -75,7 +75,7 @@ jobs: echo >> "$GITHUB_OUTPUT" echo '# ⚠️ Notes ⚠️' >> "$GITHUB_OUTPUT" echo '## Run PK fix manually' >> "$GITHUB_OUTPUT" - echo 'Due to restrictions workflow `dependencies_update.yml` can't update other workflows, see https://github.com/exasol/project-keeper/issues/578 for details.' >> "$GITHUB_OUTPUT" + echo 'Due to restrictions workflow `dependencies_update.yml` cannot update other workflows, see https://github.com/exasol/project-keeper/issues/578 for details.' >> "$GITHUB_OUTPUT" echo 'Please checkout this PR locally and run `mvn com.exasol:project-keeper-maven-plugin:fix --projects .`' >> "$GITHUB_OUTPUT" echo '## This PR does not trigger CI workflows' >> "$GITHUB_OUTPUT" echo 'Please click the **Close pull request** button and then **Reopen pull request** to trigger running checks.' >> "$GITHUB_OUTPUT" diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md index 2e49baf9..a1ef754f 100644 --- a/doc/changes/changelog.md +++ b/doc/changes/changelog.md @@ -1,5 +1,6 @@ # Changes +* [2.9.0](changes_2.9.0.md) * [2.8.1](changes_2.8.1.md) * [2.8.0](changes_2.8.0.md) * [2.7.12](changes_2.7.12.md) diff --git a/doc/changes/changes_2.9.0.md b/doc/changes/changes_2.9.0.md new file mode 100644 index 00000000..79d6e549 --- /dev/null +++ b/doc/changes/changes_2.9.0.md @@ -0,0 +1,17 @@ +# Cloud Storage Extension 2.9.0, released 2024-??-?? + +Code name: + +## Summary + +## Features + +* ISSUE_NUMBER: description + +## Dependency Updates + +### Cloud Storage Extension + +#### Plugin Dependency Updates + +* Updated `com.exasol:project-keeper-maven-plugin:4.3.2` to `4.3.3` diff --git a/doc/user_guide/user_guide.md b/doc/user_guide/user_guide.md index 6415decf..285f2ce3 100644 --- a/doc/user_guide/user_guide.md +++ b/doc/user_guide/user_guide.md @@ -150,7 +150,7 @@ downloaded jar file is the same as the checksum provided in the releases. To check the SHA256 result of the local jar, run the command: ```sh -sha256sum exasol-cloud-storage-extension-2.8.1.jar +sha256sum exasol-cloud-storage-extension-2.9.0.jar ``` ### Building From Source @@ -180,7 +180,7 @@ mvn clean package -DskipTests=true ``` The assembled jar file should be located at -`target/exasol-cloud-storage-extension-2.8.1.jar`. +`target/exasol-cloud-storage-extension-2.9.0.jar`. ### Create an Exasol Bucket @@ -202,7 +202,7 @@ for the HTTP protocol. Upload the jar file using curl command: ```sh -curl -X PUT -T exasol-cloud-storage-extension-2.8.1.jar \ +curl -X PUT -T exasol-cloud-storage-extension-2.9.0.jar \ http://w:@exasol.datanode.domain.com:2580// ``` @@ -234,7 +234,7 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION; CREATE OR REPLACE JAVA SET SCRIPT IMPORT_PATH(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesImportQueryGenerator; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( @@ -244,12 +244,12 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( end_index DECIMAL(36, 0) ) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / ``` @@ -268,12 +268,12 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION; CREATE OR REPLACE JAVA SET SCRIPT EXPORT_PATH(...) EMITS (...) AS %scriptclass com.exasol.cloudetl.scriptclasses.TableExportQueryGenerator; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT EXPORT_TABLE(...) EMITS (ROWS_AFFECTED INT) AS %scriptclass com.exasol.cloudetl.scriptclasses.TableDataExporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / ``` @@ -407,13 +407,13 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS ( ) AS %jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180 %scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS %jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180 %scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter; - %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.8.1.jar; + %jar /buckets/bfsdefault//exasol-cloud-storage-extension-2.9.0.jar; / ``` diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom index 21b50a55..47624c85 100644 --- a/pk_generated_parent.pom +++ b/pk_generated_parent.pom @@ -3,7 +3,7 @@ 4.0.0 com.exasol cloud-storage-extension-generated-parent - 2.8.1 + 2.9.0 pom UTF-8 diff --git a/pom.xml b/pom.xml index 814f10d2..f53b55a3 100644 --- a/pom.xml +++ b/pom.xml @@ -3,14 +3,14 @@ 4.0.0 com.exasol cloud-storage-extension - 2.8.1 + 2.9.0 Cloud Storage Extension Exasol Cloud Storage Import And Export Extension https://github.com/exasol/cloud-storage-extension/ cloud-storage-extension-generated-parent com.exasol - 2.8.1 + 2.9.0 pk_generated_parent.pom @@ -883,7 +883,7 @@ com.exasol project-keeper-maven-plugin - 4.3.2 + 4.3.3