diff --git a/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdmin.kt b/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdmin.kt index 5520426..0a866cb 100644 --- a/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdmin.kt +++ b/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdmin.kt @@ -18,14 +18,14 @@ fun main() { Utils.setWorkflowOpts() val connectionQN = Utils.reuseConnection("CONNECTION_QUALIFIED_NAME") - val apiTokenName = Utils.getEnvVar("API_TOKEN_NAME", "") + val apiTokenGuid = Utils.getEnvVar("API_TOKEN_GUID", "") - if (connectionQN == "" || apiTokenName == "") { + if (connectionQN == "" || apiTokenGuid == "") { logger.error("Missing required parameter - you must provide BOTH a connection and the name of an API token.") exitProcess(4) } - val apiTokenId = getIdForToken(apiTokenName) + val apiTokenId = getIdForToken(apiTokenGuid) val connection = getConnectionWithAdmins(connectionQN) addTokenAsConnectionAdmin(connection, apiTokenId) } @@ -33,14 +33,14 @@ fun main() { /** * Retrieve the API token's pseudo-username, that can be used anywhere a username can be used. * - * @param apiTokenName name of the API token for which to fetch the pseudo-username + * @param apiTokenGuid name of the API token for which to fetch the pseudo-username * @return the pseudo-username of the API token */ -fun getIdForToken(apiTokenName: String): String { - logger.info("Looking up API token: {}", apiTokenName) - val token = Atlan.getDefaultClient().apiTokens.get(apiTokenName) +fun getIdForToken(apiTokenGuid: String): String { + logger.info("Looking up API token: {}", apiTokenGuid) + val token = Atlan.getDefaultClient().apiTokens.getByGuid(apiTokenGuid) if (token == null) { - logger.error("Unable to find any API token with the name: {}", apiTokenName) + logger.error("Unable to find any API token with the GUID: {}", apiTokenGuid) exitProcess(5) } return "service-account-${token.clientId}" diff --git a/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdminPkg.kt b/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdminPkg.kt index e049c56..e235bc8 100644 --- a/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdminPkg.kt +++ b/packages/api-token-connection-admin/src/main/kotlin/ApiTokenConnectionAdminPkg.kt @@ -15,7 +15,7 @@ object ApiTokenConnectionAdminPkg : CustomPackage( "API Token Connection Admin", "Assigns an API token as a connection admin for an existing connection.", "http://assets.atlan.com/assets/ph-key-light.svg", - "https://developer.atlan.com/samples/packages/api-token-connection-admin/", + "https://atlanhq.github.io/marketplace-csa-scripts/api-token-connection-admin/", uiConfig = UIConfig( steps = listOf( UIStep( @@ -39,7 +39,7 @@ object ApiTokenConnectionAdminPkg : CustomPackage( ), ), ), - containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.3.0", + containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.4.0", containerCommand = listOf("/dumb-init", "--", "java", "ApiTokenConnectionAdminKt"), outputs = WorkflowOutputs(mapOf("debug-logs" to "/tmp/debug.log")), keywords = listOf("kotlin", "utility"), diff --git a/packages/duplicate-detector/build.gradle.kts b/packages/duplicate-detector/build.gradle.kts index 7c8a886..da2ebea 100644 --- a/packages/duplicate-detector/build.gradle.kts +++ b/packages/duplicate-detector/build.gradle.kts @@ -6,6 +6,7 @@ plugins { dependencies { implementation(project(":common")) + implementation(project(":serde")) implementation(project(":pkg-config")) } diff --git a/packages/duplicate-detector/src/main/kotlin/DuplicateDetector.kt b/packages/duplicate-detector/src/main/kotlin/DuplicateDetector.kt index 5842883..78938df 100644 --- a/packages/duplicate-detector/src/main/kotlin/DuplicateDetector.kt +++ b/packages/duplicate-detector/src/main/kotlin/DuplicateDetector.kt @@ -27,22 +27,13 @@ private val hashToAssetKeys = ConcurrentHashMap>() private val hashToColumns = ConcurrentHashMap>() private val uniqueContainers = ConcurrentHashMap() -fun main(args: Array) { +fun main() { Utils.setClient() Utils.setWorkflowOpts() - val qnPrefix: String - val types: List - val batchSize: Int - if (args.isNotEmpty()) { - qnPrefix = args[0] - types = args[1].split(",") - batchSize = 50 - } else { - qnPrefix = Utils.getEnvVar("QN_PREFIX", "default") - types = Utils.getEnvVar("ASSET_TYPES", "Table,View,MaterialisedView").split(",") - batchSize = Utils.getEnvVar("BATCH_SIZE", "50").toInt() - } + val qnPrefix = Utils.getEnvVar("QN_PREFIX", "default") + val types = MultiSelectDeserializer.deserialize(Utils.getEnvVar("ASSET_TYPES", "[\"Table\",\"View\",\"MaterialisedView\"]")) + val batchSize = Utils.getEnvVar("BATCH_SIZE", "50").toInt() logger.info("Detecting duplicates across {} (for prefix {}) on: {}", types, qnPrefix, Atlan.getDefaultClient().baseUrl) findAssets(qnPrefix, types, batchSize) diff --git a/packages/duplicate-detector/src/main/kotlin/DuplicateDetectorPkg.kt b/packages/duplicate-detector/src/main/kotlin/DuplicateDetectorPkg.kt index 5b000ef..ce7e942 100644 --- a/packages/duplicate-detector/src/main/kotlin/DuplicateDetectorPkg.kt +++ b/packages/duplicate-detector/src/main/kotlin/DuplicateDetectorPkg.kt @@ -18,7 +18,7 @@ object DuplicateDetectorPkg : CustomPackage( "Duplicate Detector", "Detect possible duplicate tables, views and materialized views based on their columns.", "http://assets.atlan.com/assets/ph-copy-light.svg", - "https://developer.atlan.com/samples/packages/duplicate-detector/", + "https://atlanhq.github.io/marketplace-csa-scripts/duplicate-detector/", uiConfig = UIConfig( steps = listOf( UIStep( @@ -71,7 +71,7 @@ object DuplicateDetectorPkg : CustomPackage( ), ), ), - containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.3.0", + containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.4.0", containerCommand = listOf("/dumb-init", "--", "java", "DuplicateDetectorKt"), outputs = WorkflowOutputs(mapOf("debug-logs" to "/tmp/debug.log")), keywords = listOf("kotlin", "utility"), diff --git a/packages/migration-assistant-export/src/main/kotlin/MigrationAssistantExportPkg.kt b/packages/migration-assistant-export/src/main/kotlin/MigrationAssistantExportPkg.kt index 700e707..cb4ead9 100644 --- a/packages/migration-assistant-export/src/main/kotlin/MigrationAssistantExportPkg.kt +++ b/packages/migration-assistant-export/src/main/kotlin/MigrationAssistantExportPkg.kt @@ -17,7 +17,7 @@ object MigrationAssistantExportPkg : CustomPackage( "Migration Assistant Export", "Export manually-enriched assets and the manual enrichments made against them.", "http://assets.atlan.com/assets/ph-cloud-arrow-down-light.svg", - "https://developer.atlan.com/samples/packages/migration-assistant-export/", + "https://atlanhq.github.io/marketplace-csa-scripts/migration-assistant/export/", uiConfig = UIConfig( steps = listOf( UIStep( @@ -55,7 +55,7 @@ object MigrationAssistantExportPkg : CustomPackage( label = "Batch size", required = false, help = "Maximum number of results to process at a time (per API request).", - placeholder = "20", + placeholder = "50", grid = 4, ), ), @@ -68,9 +68,14 @@ object MigrationAssistantExportPkg : CustomPackage( ), ), ), - containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.3.0", + containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.4.0", containerCommand = listOf("/dumb-init", "--", "java", "ExporterKt"), - outputs = WorkflowOutputs(mapOf("debug-logs" to "/tmp/debug.log")), + outputs = WorkflowOutputs( + mapOf( + "debug-logs" to "/tmp/debug.log", + "assets-csv" to "/tmp/asset-export.csv", + ), + ), keywords = listOf("kotlin", "utility"), preview = true, ) { diff --git a/packages/migration-assistant-import/src/main/kotlin/MigrationAssistantImportPkg.kt b/packages/migration-assistant-import/src/main/kotlin/MigrationAssistantImportPkg.kt index 159c2e9..1d49318 100644 --- a/packages/migration-assistant-import/src/main/kotlin/MigrationAssistantImportPkg.kt +++ b/packages/migration-assistant-import/src/main/kotlin/MigrationAssistantImportPkg.kt @@ -18,7 +18,7 @@ object MigrationAssistantImportPkg : CustomPackage( "Migration Assistant Import", "Import manually-enriched assets from a CSV file.", "http://assets.atlan.com/assets/ph-cloud-arrow-up-light.svg", - "https://developer.atlan.com/samples/packages/migration-assistant-import/", + "https://atlanhq.github.io/marketplace-csa-scripts/migration-assistant/import/", uiConfig = UIConfig( steps = listOf( UIStep( @@ -38,6 +38,7 @@ object MigrationAssistantImportPkg : CustomPackage( possibleValues = mapOf( "certificateStatus" to "Certificate", "announcementType" to "Announcement", + "displayName" to "Display name", "description" to "Description (system)", "userDescription" to "Description (user)", "ownerUsers" to "Owners (users)", @@ -63,7 +64,7 @@ object MigrationAssistantImportPkg : CustomPackage( label = "Batch size", required = false, help = "Maximum number of results to process at a time (per API request).", - placeholder = "20", + placeholder = "50", grid = 4, ), ), @@ -76,7 +77,7 @@ object MigrationAssistantImportPkg : CustomPackage( ), ), ), - containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.3.0", + containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.4.0", containerCommand = listOf("/dumb-init", "--", "java", "ImporterKt"), outputs = WorkflowOutputs(mapOf("debug-logs" to "/tmp/debug.log")), keywords = listOf("kotlin", "utility"), diff --git a/packages/openapi-spec-loader/src/main/kotlin/OpenAPISpecLoaderPkg.kt b/packages/openapi-spec-loader/src/main/kotlin/OpenAPISpecLoaderPkg.kt index bea451e..46c42f8 100644 --- a/packages/openapi-spec-loader/src/main/kotlin/OpenAPISpecLoaderPkg.kt +++ b/packages/openapi-spec-loader/src/main/kotlin/OpenAPISpecLoaderPkg.kt @@ -19,7 +19,7 @@ object OpenAPISpecLoaderPkg : CustomPackage( "OpenAPI Spec Loader", "Loads API specs and paths from an OpenAPI (v3) definition.", "http://assets.atlan.com/assets/apispec.png", - "https://developer.atlan.com/samples/loaders/openapi/", + "https://atlanhq.github.io/marketplace-csa-scripts/openapi-spec-loader/", uiConfig = UIConfig( steps = listOf( UIStep( @@ -73,7 +73,7 @@ object OpenAPISpecLoaderPkg : CustomPackage( ), ), ), - containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.3.0", + containerImage = "ghcr.io/atlanhq/atlan-kotlin-samples:0.4.0", containerCommand = listOf("/dumb-init", "--", "java", "OpenAPISpecLoaderKt"), outputs = WorkflowOutputs(mapOf("debug-logs" to "/tmp/debug.log")), keywords = listOf("kotlin", "crawler", "openapi"),