From 4c88a06ed2567a1e9b53c5401c966d351e34ada7 Mon Sep 17 00:00:00 2001 From: Anuj Parashar Date: Tue, 30 Jan 2024 11:10:27 +1100 Subject: [PATCH] Archiving Old Samples (#664) * Archiving old samples * Archiving old samples * Archiving old samples * Fixing linting errors * Fixing linting errors * Fixing YML error * making AAD - Microsoft Entra changes --- README.md | 51 +- archive/README.md | 27 + .../e2e_samples}/dataset_versioning/README.md | 0 .../dataset_versioning/databricks/README.md | 2 +- .../databricks/data_versioning.py | 0 .../dataset_versioning/datafactory/README.md | 0 .../arm_template/arm_template.json | 0 .../factory/adf-loan-dev_arm_template.json | 0 .../linkedTemplates/ArmTemplate_0.json | 0 .../linkedTemplates/ArmTemplate_master.json | 0 .../docs/adrs/source_data_store.md | 0 .../docs/images/adf_pipeline.JPG | Bin .../docs/images/architecture.PNG | Bin .../docs/images/versioned_data.JPG | Bin .../dataset_versioning/infra/README.md | 0 .../dataset_versioning/infra/setup.sh | 0 .../terraform/.azdo/iac-build-validation.yml | 0 .../infra/terraform/.azdo/iac-pipeline.yml | 0 .../infra/terraform/.azdo/iac-template.yml | 0 .../infra/terraform/live/dev/main.tf | 0 .../infra/terraform/live/dev/output.tf | 0 .../infra/terraform/live/dev/variables.tf | 0 .../terraform/modules/data_factory/main.tf | 0 .../terraform/modules/data_factory/output.tf | 0 .../modules/data_factory/variables.tf | 0 .../infra/terraform/modules/data_lake/main.tf | 0 .../terraform/modules/data_lake/output.tf | 0 .../terraform/modules/data_lake/variables.tf | 0 .../terraform/modules/databricks/main.tf | 0 .../terraform/modules/databricks/variables.tf | 0 .../terraform/modules/keyvault/locals.tf | 0 .../infra/terraform/modules/keyvault/main.tf | 0 .../terraform/modules/keyvault/output.tf | 0 .../terraform/modules/keyvault/variables.tf | 0 .../infra/terraform/modules/service/main.tf | 0 .../infra/terraform/modules/service/output.tf | 0 .../terraform/modules/service/variables.tf | 0 .../terraform/modules/sql_server/main.tf | 0 .../terraform/modules/sql_server/variables.tf | 0 .../data_generator/.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../sql/data_generator/README.md | 0 .../sql/data_generator/keyvault_wrapper.py | 0 .../sql/data_generator/main.py | 0 .../sql/data_generator/process.py | 0 .../sql/data_generator/requirements.txt | 0 .../sql/data_generator/sql_wrapper.py | 0 .../sql/data_generator/tests/__init__.py | 0 .../sql/data_generator/tests/test_main.py | 0 .../sql/data_generator/tests/test_process.py | 0 .../sql/data_generator/tests/test_sample.csv | 0 .../dataset_versioning/sql/ddl/README.md | 0 .../dataset_versioning/sql/ddl/watermark.sql | 0 .../e2e_samples}/deployment_stamps/README.md | 23 +- .../deployment_stamps/api/.gitignore | 0 .../deployment_stamps/api/WebApi.sln | 0 .../WebApi/Controllers/ExceptionController.cs | 0 .../Controllers/TelemetriesController.cs | 0 .../AuthorizeByTenantIdAttribute.cs | 0 .../ValidateDeviceAttribute.cs | 0 .../Filters/HttpRequestExceptionFilter.cs | 0 .../WebApi/Filters/ValidateDeviceFilter.cs | 0 .../api/WebApi/Models/CosmosContext.cs | 0 .../CustomAttributes/GuidFormatAttributes.cs | 0 .../api/WebApi/Models/Device.cs | 0 .../api/WebApi/Models/DeviceInfo.cs | 0 .../api/WebApi/Models/Telemetry.cs | 0 .../api/WebApi/Models/TelemetryEntity.cs | 0 .../WebApi/PathHandlers/TenantIdHandler.cs | 0 .../deployment_stamps/api/WebApi/Program.cs | 0 .../api/WebApi/Properties/launchSettings.json | 0 .../WebApi/Repositories/CosmosRepository.cs | 0 .../api/WebApi/Repositories/IRepository.cs | 0 .../Repositories/RepositoryConstructor.cs | 0 .../Repositories/TableTelemetryRepository.cs | 0 .../deployment_stamps/api/WebApi/Startup.cs | 0 .../api/WebApi/WebApi.csproj | 0 .../api/WebApi/appsettings.json | 0 .../.images/architecture-without-routing.JPG | Bin .../docs/.images/postman-token1.PNG | Bin .../docs/.images/postman-token2.PNG | Bin .../docs/.images/postman-token3.PNG | Bin .../docs/.images/postman-token4.PNG | Bin .../docs/.images/postman-token5.PNG | Bin .../docs/.images/postman-token6.PNG | Bin .../deployment_stamps/docs/AUTH.md | 18 +- .../deployment_stamps/docs/POSTMAN.md | 0 .../functions/TelemetryProcessor/.gitignore | 0 .../TelemetryProcessor/.local.settings.json | 0 .../CustomAttributes/GuidFormatAttributes.cs | 0 .../Models/TableStorageConfig.cs | 0 .../TelemetryProcessor/Models/Telemetry.cs | 0 .../functions/TelemetryProcessor/Program.cs | 0 .../Services/ITableClientService.cs | 0 .../Services/TableClientService.cs | 0 .../TelemetryProcessor/SplitAndSaveFunc.cs | 0 .../TelemetryProcessor.csproj | 0 .../functions/TelemetryProcessor/host.json | 0 .../stamp/arm-templates/azuredeploy.json | 0 .../arm-templates/azuredeploy.parameters.json | 0 .../pipelines/create-one-stamp.yml | 2 +- .../e2e_samples}/mdw_governance/README.md | 2 +- .../adf/_scripts/deploymentadf.ps1 | 0 .../ParkingSensors_Anonymized_CSV.json | 0 .../dataset/ParkingSensors_Bronze_CSV.json | 0 .../dataset/ParkingSensors_Source_CSV.json | 0 .../adf/pipeline/IngestToBronze.json | 0 .../arm-templates/O365_connector.json | 0 .../O365_connector.parameters.json | 0 .../arm-templates/app_insights.json | 0 .../app_insights.parameters.json | 0 .../azure_function_datalakelogs.json | 0 ...zure_function_datalakelogs.parameters.json | 0 .../arm-templates/data_factory.json | 0 .../data_factory.parameters.json | 0 .../arm-templates/data_lake.json | 0 .../arm-templates/data_lake.parameters.json | 0 .../arm-templates/databricks.json | 0 .../arm-templates/databricks.parameters.json | 0 .../arm-templates/email_logic_app.json | 0 .../email_logic_app.parameters.json | 0 .../arm-templates/key_vault.json | 2 +- .../arm-templates/key_vault.parameters.json | 0 .../arm-templates/log_analytics.json | 0 .../log_analytics.parameters.json | 0 .../arm-templates/private_endpoint.json | 0 .../private_endpoint.parameters.json | 0 .../mdw_governance/arm-templates/purview.json | 0 .../arm-templates/purview.parameters.json | 0 .../mdw_governance/arm-templates/vnet.json | 0 .../arm-templates/vnet.parameters.json | 0 .../On-street_Parking_Bay_Sensors.csv | 0 .../On-street_Parking_Bay_Sensors.json | 0 .../On-street_Parking_Bay_Sensors_baylist.csv | 0 .../mdw_governance/data/raw_data/README.md | 0 .../mdw_governance/data/seed/dim_date.csv | 0 .../mdw_governance/data/seed/dim_time.csv | 0 .../databricks/config/cluster.config.json | 0 .../databricks/config/run.setup.config.json | 0 .../databricks/notebooks/00_setup.py | 0 .../notebooks/01_transform_presidio.py | 0 .../databricks/setup/startup.sh | 0 .../docs/images/architecture.png | Bin .../docs/pipelines-and-scripts.md | 0 .../pipelines/create-infrastructure.yml | 0 .../jobs/create-data-lake-log-sender-job.yml | 0 .../jobs/create-email-sender-job.yml | 0 .../jobs/create-infrastructure-job.yml | 0 .../pipelines/templates/O365_connector.yml | 0 .../pipelines/templates/app-insights.yml | 0 .../templates/azure-function-datalakelogs.yml | 0 .../pipelines/templates/data-factory.yml | 0 .../pipelines/templates/data-lake.yml | 0 .../pipelines/templates/databricks.yml | 0 .../templates/df-email-logic-app.yml | 0 .../pipelines/templates/key-vault.yml | 0 .../pipelines/templates/log-analytics.yml | 0 .../pipelines/templates/purview.yml | 0 .../pipelines/templates/vnet.yml | 0 .../pipelines/variables/dev-environment.yml | 0 .../pipelines/variables/prod-environment.yml | 0 .../pipelines/variables/test-environment.yml | 0 .../scripts/agent/Set-AgentTools.ps1 | 0 .../environment/ADF-Pre-And-Post-Deploy.ps1 | 0 .../environment/Databricks-Post-Deploy.ps1 | 0 .../environment/New-ADFLinkedService.ps1 | 0 .../environment/New-EnvironmentVariables.ps1 | 0 .../environment/New-PurviewADFConnection.ps1 | 0 .../environment/New-PurviewADLSource.ps1 | 0 .../environment/New-PurviewDataScan.ps1 | 0 .../New-StorageContainerFolders.ps1 | 0 .../scripts/environment/Set-ADL-RBAC.ps1 | 0 .../environment/Set-AdlLoggingProperties.ps1 | 0 ...-AdlRoleAssignmentForLogSenderFunction.ps1 | 0 .../scripts/environment/Set-AuthToken.ps1 | 0 .../environment/Set-SPNOwnerToPurview.ps1 | 0 .../.funcignore | 0 .../.gitignore | 0 .../function.json | 0 .../run.ps1 | 0 .../host.json | 0 .../profile.ps1 | 0 .../proxies.json | 0 .../requirements.psd1 | 0 .../e2e_samples}/temperature_events/README.md | 2 +- .../devops/azure-pipelines-ci-artifacts.yml | 0 .../functions/.config/dotnet-tools.json | 0 .../functions/.editorconfig | 0 .../temperature_events/functions/README.md | 0 .../DeviceIdFilterTest.cs | 0 .../TemperatureEventsProj.Test.csproj | 0 .../TemperatureFilterTest.cs | 0 .../TemperatureEventsProj/.gitignore | 0 .../TemperatureEventsProj/DeviceIdFilter.cs | 0 .../Models/DeviceEvent.cs | 0 .../TemperatureEventsProj.csproj | 0 .../TemperatureFilter.cs | 0 .../functions/TemperatureEventsProj/host.json | 0 .../local.settings.template.json | 0 .../functions/TemperatureEventsSln.sln | 0 .../temperature_events/functions/host.json | 0 .../images/application_map.png | Bin .../images/azure_pipeline_setup.png | Bin .../images/azure_pipeline_var_group.png | Bin .../images/correlated_logs.png | Bin .../e2e_transaction_detail_parallel.png | Bin .../e2e_transaction_detail_sequential.png | Bin .../images/function-deviceidfilter.png | Bin .../images/function-temperaturefilter.png | Bin .../images/function_instances_from_logs.png | Bin .../function_instances_live_metrics.png | Bin .../images/loadtesting_git_import.png | Bin .../images/loadtesting_git_import_url.png | Bin .../images/observability_eventhubmetrics.png | Bin .../images/observability_portaldashboard.png | Bin .../temperature-events-architecture.png | Bin .../images/var_group_secrets.png | Bin .../temperature_events/infra/README.md | 0 .../infra/infra-ado-ci-pipeline-test.yml | 0 .../infra/infra-ado-ci-pipeline.yml | 0 .../infra/infra-ado-pipeline-template.yml | 0 .../temperature_events/infra/setup.sh | 0 .../infra/terraform/live/dev/main.tf | 0 .../infra/terraform/live/dev/variables.tf | 0 .../infra/terraform/modules/eventhubs/main.tf | 0 .../terraform/modules/eventhubs/outputs.tf | 0 .../terraform/modules/eventhubs/variables.tf | 0 .../terraform/modules/functions/locals.tf | 0 .../infra/terraform/modules/functions/main.tf | 0 .../terraform/modules/functions/outputs.tf | 0 .../terraform/modules/functions/variables.tf | 0 .../terraform/modules/services/locals.tf | 0 .../infra/terraform/modules/services/main.tf | 0 .../terraform/modules/services/variables.tf | 0 .../loadtesting/IoTSimulator.ps1 | 0 .../loadtesting/LoadTestCheckResult.ps1 | 0 .../temperature_events/loadtesting/README.md | 0 .../loadtesting/loadtest-pipeline.yml | 0 .../single_tech_samples/adf_cicd}/README.md | 0 .../adf_cicd}/adf/_scripts/deploymentadf.ps1 | 0 .../dataset/ParkingSensors_Bronze_CSV.json | 0 .../dataset/ParkingSensors_Source_CSV.json | 0 .../adf/linkedService/DataLakeStorage.json | 0 .../adf_cicd}/adf/linkedService/KeyVault.json | 0 .../adf/linkedService/SourceDataStorage.json | 0 .../adf/pipeline/IngestToBronze.json | 0 .../On-street_Parking_Bay_Sensors.csv | 0 .../On-street_Parking_Bay_Sensors.json | 0 .../On-street_Parking_Bay_Sensors_baylist.csv | 0 .../adf_cicd}/data/raw_data/README.md | 0 .../adf_cicd}/data/seed/dim_date.csv | 0 .../adf_cicd}/data/seed/dim_time.csv | 0 .../single_tech_samples/adf_cicd}/deploy.sh | 0 .../devops/azure-pipelines-cd-release.yml | 0 .../devops/azure-pipelines-ci-artifacts.yml | 0 .../devops/templates/jobs/deploy-adf-job.yml | 0 .../jobs/integration-test-adf-job.yml | 0 .../adf_cicd}/docs/images/.gitkeep | 0 .../adf_cicd}/docs/images/ADFRun.png | Bin .../adf_cicd}/docs/images/CICD-logical.PNG | Bin .../adf_cicd}/docs/images/CICD.PNG | Bin .../adf_cicd}/docs/images/CICDv2.PNG | Bin .../adf_cicd}/docs/images/PublishADF.PNG | Bin .../adf_cicd}/docs/images/ReleasePipeline.png | Bin .../docs/images/ReleasePipelinev3.PNG | Bin .../adf_cicd}/docs/images/architecture.PNG | Bin .../adf_cicd}/docs/images/create-pull.png | Bin .../adf_cicd}/docs/images/create-pull2.png | Bin .../docs/images/integrationTestResultv2.PNG | Bin .../adf_cicd}/docs/images/new_branch.png | Bin .../adf_cicd}/docs/images/publish.png | Bin .../adf_cicd}/infrastructure/.gitkeep | 0 .../adf_cicd}/infrastructure/azuredeploy.json | 2 +- .../azuredeploy.parameters.dev.json | 0 .../azuredeploy.parameters.prod.json | 0 .../azuredeploy.parameters.stg.json | 0 .../adf_cicd}/scripts/clean_up.sh | 0 .../adf_cicd}/scripts/common.sh | 0 .../scripts/deploy_azdo_pipelines.sh | 0 .../deploy_azdo_service_connections_azure.sh | 0 .../deploy_azdo_service_connections_github.sh | 0 .../scripts/deploy_azdo_variables.sh | 0 .../scripts/deploy_infrastructure.sh | 0 .../adf_cicd}/scripts/init_environment.sh | 0 .../adf_cicd}/scripts/verify_prerequisites.sh | 0 .../tests/integrationtests/requirements.txt | 0 .../tests/integrationtests/tests/README.md | 0 .../tests/integrationtests/tests}/__init__.py | 0 .../tests/integrationtests/tests/conftest.py | 0 .../tests/dataconnectors}/__init__.py | 0 .../tests/dataconnectors/blob_storage.py | 0 .../tests/test_pipeline_ingest_to_bronze.py | 0 .../.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.devcontainer/settings.vscode.json | 0 .../README.md | 24 +- .../databricks/workspace.parameters.json | 0 .../databricks/workspace.template.json | 0 .../deploy.sh | 0 .../destroy.sh | 0 .../images}/IAC_Adb.png | Bin .../images}/IAC_Architecture.png | Bin .../images}/IAC_Deployment_Logs.png | Bin .../images}/IAC_Keyvault.png | Bin .../images}/IAC_Script_Deploy.png | Bin .../images}/IAC_Script_Teardown.png | Bin .../images}/IAC_Storage.png | Bin .../keyvault/keyvault.parameters.json | 0 .../keyvault/keyvault.template.json | 4 +- .../storageaccount.parameters.json | 0 .../storageaccount.template.json | 0 .../.devcontainer/Dockerfile | 32 + .../.devcontainer/devcontainer.json | 37 + .../.devcontainer/settings.vscode.json | 3 + .../.gitignore | 0 .../README.md | 2 +- .../access-data-directly-via-account-key.ipy | 0 .../access-data-mount-via-ad-passthrough.ipy | 0 .../cluster-config.default.json | 0 .../cluster-config.high-concurrency.json | 0 .../deploy.sh | 0 .../sample-data.us-population.json | 0 .../scripts/configure-databricks-cli.sh | 0 .../scripts/deploy-default-and-hc-clusters.sh | 0 .../scripts/import-data-access-notebooks.sh | 0 .../scripts/upload-sample-data.sh | 0 .../.devcontainer/Dockerfile | 32 + .../.devcontainer/devcontainer.json | 37 + .../.devcontainer/settings.vscode.json | 3 + .../README.md | 50 +- .../databricks/workspace.parameters.json | 0 .../databricks/workspace.template.json | 0 .../deploy.sh | 0 .../destroy.sh | 0 .../example-dotenv | 0 .../firewall/firewall.parameters.json | 0 .../firewall/firewall.template.json | 0 .../images}/ADB_Notebooks.png | Bin .../images}/ADE_Adb.png | Bin .../images}/ADE_Architecture.png | Bin .../images}/ADE_Deployment.png | Bin .../images}/ADE_Deployment_Logs.png | Bin .../images}/ADE_Firewall.png | Bin .../images}/ADE_Firewall_AR.png | Bin .../images}/ADE_Firewall_Deny.png | Bin .../images}/ADE_Hub.png | Bin .../images}/ADE_IP.png | Bin .../images}/ADE_Keyvault.png | Bin .../images}/ADE_NSG.png | Bin .../images}/ADE_PL.png | Bin .../images}/ADE_Route.png | Bin .../images}/ADE_Script_Deploy.png | Bin .../images}/ADE_Script_Teardown.png | Bin .../images}/ADE_Spoke.png | Bin .../images}/ADE_Storage.png | Bin .../images}/ADE_Subnet.png | Bin .../images}/ADO_Pipeline_Code.png | Bin .../images}/ADO_Pipeline_Create.png | Bin .../images}/ADO_Pipeline_Repo.png | Bin .../images}/ADO_Pipeline_Repo_Select.png | Bin .../images}/ADO_Pipeline_Type.png | Bin .../images}/ADO_Pipeline_Variables.png | Bin .../images}/ADO_Result.png | Bin .../images}/ADO_Run.png | Bin .../images}/ADO_RunChart.png | Bin .../images}/ADO_Runlog.png | Bin .../images}/ADO_Variables.png | Bin .../images}/Azure_Databricks_Icon.png | Bin .../images}/Lumos_logo.png | Bin .../images}/MIT.svg | 0 .../images}/Open_Source.svg | 0 .../images}/Status-Active.svg | 0 .../keyvault/keyvault.parameters.json | 0 .../keyvault/keyvault.template.json | 4 +- .../keyvault/privateendpoint.parameters.json | 0 .../keyvault/privateendpoint.template.json | 0 .../routetable/routetable.parameters.json | 0 .../routetable/routetable.template.json | 0 .../securitygroup.parameters.json | 0 .../securitygroup/securitygroup.template.json | 0 .../privateendpoint.parameters.json | 0 .../privateendpoint.template.json | 0 .../storageaccount.parameters.json | 0 .../storageaccount.template.json | 0 .../vnet/vnet.parameters.json | 0 .../vnet/vnet.template.json | 0 .../.devcontainer/devcontainer.json | 0 .../.gitignore | 0 .../README.md | 56 +- .../azure_function/.gitignore | 0 .../AcceptDataShareInvitations/__init__.py | 0 .../configuration.py | 0 .../data_share_helper.py | 0 .../AcceptDataShareInvitations/function.json | 0 .../azure_function/host.json | 0 .../local.settings.template.json | 0 .../azure_function/requirements.txt | 0 .../infra/bash_setup_infra.sh | 0 .../infra/bash_setup_sp_permissions.sh | 0 .../infra/ps_setup_infra.ps1 | 0 .../infra/ps_setup_sp_permissions.ps1 | 0 .../media/add-data-share-permissions.png | Bin .../media/dataset.png | Bin .../media/invitation.png | Bin .../media/mapping.png | Bin .../media/schedule.png | Bin .../media/share_created.png | Bin .../media/snapshot.png | Bin .../media/subscription_created.png | Bin .../media/trigger.png | Bin .../python/dest.py | 0 .../python/requirements.txt | 0 .../python/source.py | 0 .../purview_iac}/README.md | 0 .../adf/_scripts/deploymentadf.ps1 | 0 .../adf/dataset/CustomerBronzeData.json | 0 .../adf/dataset/CustomerDataDrop.json | 0 .../adf/linkedService/DataLakeStorage.json | 0 .../adf/linkedService/KeyVault.json | 0 .../adf/pipeline/IngestCustomerData.json | 0 .../purview_iac}/data/Customers.csv | 0 .../purview_iac}/deploy.sh | 0 .../purview_iac}/docs/images/architecture.png | Bin .../infrastructure/azuredeploy.json | 2 +- .../azuredeploy.parameters.dev.json | 0 .../azuredeploy.parameters.prod.json | 0 .../azuredeploy.parameters.stg.json | 0 .../purview_iac}/scripts/--name | 0 .../purview_iac}/scripts/--resource-group | 0 .../purview_iac}/scripts/--resource-type | 0 .../purview_iac}/scripts/clean_up.sh | 0 .../purview_iac}/scripts/common.sh | 0 .../scripts/delete_purview_data.sh | 0 .../scripts/deploy_infrastructure.sh | 0 .../scripts/deploy_purview_linkedservices.sh | 0 .../scripts/deploy_purview_spn.sh | 0 .../scripts/get_purview_access_token.sh | 0 .../purview_iac}/scripts/init_environment.sh | 0 .../purview_iac}/scripts/search_advanced.sh | 0 .../scripts/verify_prerequisites.sh | 0 .../README.md | 0 .../action.yml | 0 .../entrypoint.sh | 0 ...unctions-lib-to-set-purview-permissions.sh | 0 .../storage_lifecycle_management}/README.md | 0 .../sample1_data_lifecycle/README.md | 6 +- .../images/data_lifecycle_rules.png | Bin .../images/storage_accounts.png | Bin .../images/storage_containers.png | Bin .../sample1_data_lifecycle/terraform/main.tf | 0 .../terraform/terraform.auto.tfvars | 0 .../terraform/variables.tf | 0 .../.devcontainer/.envtemplate | 0 .../.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.devcontainer/docker-compose.yml | 0 .../synapse_integration_testing}/README.md | 4 +- .../synapse_integration_testing}/deploy.sh | 0 .../docs/devcontainer.md | 0 .../docs/images/SynapseRun.png | Bin .../docs/images/devcontainer_build_error.png | Bin .../parking_sensors_dev_container_start.gif | Bin .../infrastructure/main.bicep | 0 .../infrastructure/main.parameters.dev.json | 0 .../infrastructure/modules/keyvault.bicep | 0 .../infrastructure/modules/storage.bicep | 0 .../infrastructure/modules/synapse.bicep | 0 .../modules/synapse_sql_pool.bicep | 0 .../scripts/clean_up.sh | 0 .../scripts/common.sh | 0 .../scripts/deploy_infrastructure.sh | 0 .../scripts/deploy_synapse_artifacts.sh | 0 .../scripts/init_environment.sh | 0 .../scripts/verify_prerequisites.sh | 0 .../synapse/notebook/ETL_sample.ipynb | 0 .../dataset/Ds_SqlDW_Table_template.json | 0 .../Ls_KeyVault_01_template.json | 0 .../pipeline/P_Sample3_template.json | 0 .../templates/trigger/T_Stor_template.json | 0 .../workspace/dataflow/Df_SaveToSQL.json | 0 .../workspace/dataset/Ds_AdlsGen2_Data.json | 0 .../dataset/Ds_AdlsGen2_Interim.json | 0 .../workspace/dataset/Ds_Egress_Parquet.json | 0 .../workspace/dataset/Ds_Ingest_CSV.json | 0 .../linkedService/Ls_AdlsGen2_01.json | 0 .../synapse/workspace/pipeline/README.md | 0 .../synapse/workspace/trigger/README.md | 0 .../integrationtests/.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.devcontainer/docker-compose.yml | 0 .../tests/integrationtests/.envtemplate | 0 .../tests/integrationtests/README.md | 0 .../tests/integrationtests/data/dim_date.csv | 0 .../integrationtests/dataconnectors/adls.py | 0 .../dataconnectors/local_file.py | 0 .../integrationtests/dataconnectors/sql.py | 0 .../files/processed_parquet_file.parquet | Bin .../tests/integrationtests/requirements.txt | 0 .../tests/integrationtests/setup.cfg | 0 .../tests/integrationtests/tests}/__init__.py | 0 .../tests/integrationtests/tests/conftest.py | 0 .../tests/test_synapse_pipeline_sample3.py | 0 .../integrationtests/utils/pipelineutils.py | 0 .../.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.gitignore | 0 .../OrchestratorNotebook.ipynb | 0 .../README.md | 22 +- .../csv_dataset.json | 0 .../data/country_list.csv | 0 .../images}/Architecture_design.png | Bin .../images}/IAC_Script_Deploy.png | Bin .../images}/IAC_Storage.png | Bin .../images}/IAC_Synapse.png | Bin .../images}/IAC_package.png | Bin .../images}/Spark_table_full.png | Bin .../images}/pipeline_run.png | Bin .../images}/pipeline_run_asia.png | Bin .../images}/spark-pool1.png | Bin .../images}/spark-pool2.png | Bin .../images}/spark_table_asia.png | Bin .../linked_service.json | 0 .../modules/data_filter/README.MD | 0 .../modules/data_filter}/__init__.py | 0 .../modules/data_filter/data_filter.py | 0 .../modules/data_filter/setup.py | 0 .../modules/md5/README.MD | 0 .../modules/md5}/__init__.py | 0 .../modules/md5/md5.py | 0 .../modules/md5/setup.py | 0 .../pipeline.json | 0 .../setup/deploy.sh | 0 .../setup/destroy.sh | 0 azure-pipelines.yml | 46 - docs/parking_sensors_troubleshooting.md | 10 +- .../scripts/configure_databricks.sh | 2 +- .../scripts/deploy_infrastructure.sh | 4 +- single_tech_samples/azuresql/README.md | 192 +- .../azuresql/azuresql_ci_cd/README.md | 193 + .../azuresql/{ => azuresql_ci_cd}/deploy.sh | 0 .../docs/images/azuresql_addcolumn.PNG | Bin .../docs/images/azuresql_azure_resources.PNG | Bin .../docs/images/azuresql_builds.PNG | Bin .../images/azuresql_gitbranchcheckout.PNG | Bin .../docs/images/azuresql_gitcommitpush.PNG | Bin .../docs/images/azuresql_pipelines.PNG | Bin .../docs/images/azuresql_prvalidation.PNG | Bin .../docs/images/azuresql_release.PNG | Bin .../images/azuresql_service_connections.PNG | Bin .../docs/images/azuresql_viewchanges.PNG | Bin .../infrastructure/azuredeploy.json | 0 .../azure-pipelines-01-validate-pr.yml | 0 .../pipelines/azure-pipelines-02-build.yml | 0 .../azure-pipelines-03-simple-multi-stage.yml | 0 ...ipelines-04-multi-stage-predeploy-test.yml | 0 .../{ => azuresql_ci_cd}/scripts/clean_up.sh | 0 .../{ => azuresql_ci_cd}/scripts/common.sh | 0 .../deploy_azure_pipelines_01_validate_pr.sh | 0 .../deploy_azure_pipelines_02_build.sh | 0 ...y_azure_pipelines_03_simple_multi_stage.sh | 0 ...pipelines_04_multi_stage_predeploy_test.sh | 0 .../scripts/init_environment.sh | 0 .../ddo_samples_azuresql.sln | 0 .../SalesLT/Sequences/SalesOrderNumber.sql | 0 .../SalesLT/Tables/Address.sql | 0 .../SalesLT/Tables/Customer.sql | 0 .../SalesLT/Tables/CustomerAddress.sql | 0 .../SalesLT/Tables/Product.sql | 0 .../SalesLT/Tables/ProductCategory.sql | 0 .../SalesLT/Tables/ProductDescription.sql | 0 .../SalesLT/Tables/ProductModel.sql | 0 .../Tables/ProductModelProductDescription.sql | 0 .../SalesLT/Tables/SalesOrderDetail.sql | 0 .../SalesLT/Tables/SalesOrderHeader.sql | 0 .../SalesLT/Views/vGetAllCategories.sql | 0 .../SalesLT/Views/vProductAndDescription.sql | 0 .../Views/vProductModelCatalogDescription.sql | 0 .../ddo_samples_azuresql/Security/SalesLT.sql | 0 .../dbo/Functions/ufnGetAllCategories.sql | 0 .../Functions/ufnGetCustomerInformation.sql | 0 .../Functions/ufnGetSalesOrderStatusText.sql | 0 .../dbo/Stored Procedures/uspLogError.sql | 0 .../dbo/Stored Procedures/uspPrintError.sql | 0 .../dbo/Tables/BuildVersion.sql | 0 .../dbo/Tables/ErrorLog.sql | 0 .../dbo/User Defined Types/AccountNumber.sql | 0 .../dbo/User Defined Types/Flag.sql | 0 .../dbo/User Defined Types/Name.sql | 0 .../dbo/User Defined Types/NameStyle.sql | 0 .../dbo/User Defined Types/OrderNumber.sql | 0 .../dbo/User Defined Types/Phone.sql | 0 .../ddo_samples_azuresql.sqlproj | 0 single_tech_samples/cosmosdb/README.md | 17 - single_tech_samples/databricks/Makefile | 2 - single_tech_samples/databricks/README.md | 14 +- .../.dbx/lock.json | 0 .../.dbx/project.json | 0 .../.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.devcontainer/settings.vscode.json | 3 + .../.gitignore | 0 .../README.md | 0 .../common}/__init__.py | 0 .../common/module_a.py | 0 .../common}/tests/__init__.py | 0 .../common/tests/module_a_test.py | 0 .../conf/deployment-example.json | 0 .../conf/deployment_notebook.json | 0 .../conf/deployment_notebook_new_cluster.json | 0 .../conf/deployment_spark_python.json | 0 .../deployment_spark_python_new_cluster.json | 0 .../devops/lib-pipelines.yml | 0 .../devops/notebook-pipelines.yml | 0 .../devops/spark-python-pipelines.yml | 0 .../template/create-deployment-json.yml | 0 .../devops/template/deploy-lib-job.yml | 0 .../devops/template/deploy-notebook-job.yml | 0 .../template/deploy-spark-python-job.yml | 0 .../devops/template/test-lib-job.yml | 0 .../devops/template/test-notebook-job.yml | 0 .../devops/template/test-spark-python-job.yml | 0 .../images/architecture.png | Bin .../images/dbx-repo.png | Bin .../images/deploy-lib.png | Bin .../images/notebook-prod.png | Bin .../images/notebook-staging.png | Bin .../images/notebook-test.png | Bin .../images/pipelines.png | Bin .../images/pytest-output-devcon.png | Bin .../images/pytest-output.png | Bin .../images/spark-python-prod.png | Bin .../images/spark-python-staging.png | Bin .../images/variable-group.png | Bin .../images/variables.png | Bin .../notebook_jobs/main_notebook_a.py | 0 .../notebook_jobs/main_notebook_b.py | 0 .../notebook_jobs/main_notebook_sql.py | 0 .../notebook_jobs/module_b_notebook.py | 0 .../tests/main_notebook_a_test.py | 0 .../tests/main_notebook_b_test.py | 0 .../tests/main_notebook_sql_test.py | 0 .../tests/module_b_notebook_test.py | 0 .../pytest.ini | 0 .../requirements.txt | 0 .../setup.py | 0 .../spark_python_jobs}/__init__.py | 0 .../spark_python_jobs/main.py | 0 .../spark_python_jobs/tests}/__init__.py | 0 .../tests/integration}/__init__.py | 0 .../tests/integration/main_test.py | 0 .../spark_python_jobs/tests/unit}/__init__.py | 0 .../spark_python_jobs/tests/unit/main_test.py | 0 single_tech_samples/dataexplorer/README.md | 7 - single_tech_samples/datafactory/README.md | 9 +- .../DEPLOYMENT_STEPS.md | 0 .../README.md | 0 .../arm-template-parameters-definition.json | 0 .../adf/dataset/destination.json | 0 .../adf/dataset/source.json | 0 .../adf/linkedService/adls_connection.json | 0 .../linkedService/keyvault_connection.json | 0 .../adf/pipeline/copy_data.json | 0 .../adf/publish_config.json | 0 .../adf/trigger/trigger1.json | 0 .../docs/images/adf_deploy_to_dev_env.png | Bin .../docs/images/adf_deploy_to_preprod_env.png | Bin .../images/adf_deployment_architecture.png | Bin .../docs/images/adf_link_to_git.png | Bin .../docs/images/new_branch.png | Bin .../infra/azuredeploy.json | 2 +- .../pipelines/adf-deployment-multi-env.yml | 0 .../pipelines/adf-deployment.yml | 0 .../scripts/cereal.csv | 0 .../scripts/deploy_azdo_pipelines.sh | 0 .../deploy_azdo_service_connections_azure.sh | 0 .../scripts/deploy_azdo_variables.sh | 0 .../scripts/deploy_infra.sh | 0 .../.devcontainer/devcontainer.json | 0 .../README.md | 2 +- .../deploy/adf/README.md | 0 .../deploy/adf/deploy-pipeline.sh | 0 .../adf/linkedService/azurebatch_ls.json | 0 .../linkedService/azurebatchstorage_ls.json | 0 .../adf/linkedService/temp_azurebatch_ls.json | 0 .../deploy/adf/pipeline/pipeline.json | 0 .../deploy/terraform/.gitignore | 0 .../deploy/terraform/README.md | 0 .../deploy/terraform/main.tf | 0 .../deploy/terraform/modules/adf/main.tf | 0 .../deploy/terraform/modules/adf/outputs.tf | 0 .../deploy/terraform/modules/adf/variables.tf | 0 .../terraform/modules/azureBatch/main.tf | 0 .../terraform/modules/azureBatch/output.tf | 0 .../terraform/modules/azureBatch/variables.tf | 0 .../modules/containerRegistry/main.tf | 0 .../modules/containerRegistry/outputs.tf | 0 .../modules/containerRegistry/variables.tf | 0 .../terraform/modules/dataLakeStorage/main.tf | 0 .../modules/dataLakeStorage/output.tf | 0 .../dataLakeStorage/storage-container.json | 0 .../modules/dataLakeStorage/variables.tf | 0 .../deploy/terraform/modules/keyVault/main.tf | 0 .../terraform/modules/keyVault/output.tf | 0 .../terraform/modules/keyVault/variables.tf | 0 .../terraform/modules/kvSecerets/main.tf | 0 .../terraform/modules/kvSecerets/variables.tf | 0 .../terraform/modules/managedIdentity/main.tf | 0 .../modules/managedIdentity/outputs.tf | 0 .../modules/managedIdentity/variables.tf | 0 .../modules/role_assignments/main.tf | 0 .../modules/role_assignments/variables.tf | 0 .../deploy/terraform/modules/storage/main.tf | 0 .../terraform/modules/storage/outputs.tf | 0 .../terraform/modules/storage/variables.tf | 0 .../terraform/modules/virtualNetwork/main.tf | 0 .../modules/virtualNetwork/output.tf | 0 .../modules/virtualNetwork/variables.tf | 0 .../deploy/terraform/outputs.tf | 0 .../deploy/terraform/provider.tf | 0 .../deploy/terraform/terraform.tfvars | 0 .../deploy/terraform/variables.tf | 0 .../images/adf-batch-integration-design.svg | 2 +- .../images/apply-output.png | Bin .../images/author-pipelines.png | Bin .../images/deployed-resources-output.png | Bin .../images/destroy-output.png | Bin .../images/init-output.png | Bin .../images/jobs.png | Bin .../images/local-debug.png | Bin .../images/pipeline-output.png | Bin .../images/pipeline-run.png | Bin .../images/plan-output.png | Bin .../images/post-apply-output.png | Bin .../pre-processing-usecase.map.drawio.svg | 0 .../images/sample-pipeline.png | Bin .../images/storage-mount.png | Bin .../images/terraform-vars.png | Bin .../orchestrator-app/.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../src/orchestrator-app/.gitignore | 0 .../src/orchestrator-app/README.md | 0 .../orchestrator-app/app/core}/__init__.py | 0 .../app/core/batch}/__init__.py | 0 .../orchestrator-app/app/core/batch/job.py | 0 .../orchestrator-app/app/core/batch/task.py | 0 .../src/orchestrator-app/app/core/config.py | 0 .../app/core/extract}/__init__.py | 0 .../app/core/extract/extractscheduler.py | 0 .../app/core/extract/extracttasks.py | 0 .../app/core/extract/taskbuilder.py | 0 .../src/orchestrator-app/app/extract.py | 0 .../orchestrator-app/app/utils}/__init__.py | 0 .../orchestrator-app/app/utils/batchclient.py | 0 .../app/utils/confighelper.py | 0 .../src/orchestrator-app/app/utils/enums.py | 0 .../app/utils/keyvaultclient.py | 0 .../src/orchestrator-app/env.template | 0 .../src/orchestrator-app/requirements.txt | 0 .../.devcontainer/devcontainer.json | 0 .../src/sample-processor/Dockerfile | 0 .../src/sample-processor/README.md | 0 .../src/sample-processor/app.py | 0 .../_slash_can_bus_dbw_slash_can_rx.csv | 0 ..._slash_center_camera_slash_camera_info.csv | 0 ...era_slash_image_color_slash_compressed.csv | 0 .../data/output/_slash_diagnostics.csv | 0 .../data/output/_slash_ecef_slash_.csv | 0 .../data/output/_slash_fix.csv | 0 .../data/output/_slash_imu_slash_data.csv | 0 .../_slash_left_camera_slash_camera_info.csv | 0 ...era_slash_image_color_slash_compressed.csv | 0 .../data/output/_slash_pressure.csv | 0 .../_slash_right_camera_slash_camera_info.csv | 0 ...era_slash_image_color_slash_compressed.csv | 0 .../data/output/_slash_time_reference.csv | 0 ..._slash_vehicle_slash_brake_info_report.csv | 0 .../_slash_vehicle_slash_brake_report.csv | 0 .../_slash_vehicle_slash_filtered_accel.csv | 0 ..._slash_vehicle_slash_fuel_level_report.csv | 0 .../_slash_vehicle_slash_gear_report.csv | 0 .../_slash_vehicle_slash_gps_slash_fix.csv | 0 .../_slash_vehicle_slash_gps_slash_time.csv | 0 .../_slash_vehicle_slash_gps_slash_vel.csv | 0 ...slash_vehicle_slash_imu_slash_data_raw.csv | 0 .../_slash_vehicle_slash_joint_states.csv | 0 .../_slash_vehicle_slash_misc_1_report.csv | 0 .../_slash_vehicle_slash_sonar_cloud.csv | 0 .../_slash_vehicle_slash_steering_report.csv | 0 .../_slash_vehicle_slash_surround_report.csv | 0 ..._slash_vehicle_slash_suspension_report.csv | 0 ...ash_vehicle_slash_throttle_info_report.csv | 0 .../_slash_vehicle_slash_throttle_report.csv | 0 ...ash_vehicle_slash_tire_pressure_report.csv | 0 ...slash_vehicle_slash_wheel_speed_report.csv | 0 .../data/output/_slash_velodyne_packets.csv | 0 .../sample-processor/data/raw/sample-data.bag | Bin .../src/sample-processor/deploy-processor.sh | 0 single_tech_samples/fabric/README.md | 4 +- .../src/infra/deploy-azure-resources.ipynb | 2 +- single_tech_samples/streamanalytics/README.md | 177 +- .../streamanalytics/e2e/package-lock.json | 3527 ----------------- .../streamanalytics/e2e/package.json | 24 - .../.devcontainer/devcontainer.json | 0 .../{ => streamanalytics_ci_cd}/.gitignore | 0 .../JobConfig.json | 0 .../streamanalytics_ci_cd/README.md | 176 + .../{ => streamanalytics_ci_cd}/asaproj.json | 0 .../containers.bicep | 0 .../docs/images/ASA-job.PNG | Bin .../docs/images/BLOB-OUT.PNG | Bin .../docs/images/Bicep-doc.PNG | Bin .../docs/images/InkedIoT-Simulator_LI.jpg | Bin .../docs/images/e2e-test.PNG | Bin .../{ => streamanalytics_ci_cd}/e2e/e2e.ts | 0 .../{ => streamanalytics_ci_cd}/iothubs.bicep | 0 .../{ => streamanalytics_ci_cd}/main.bicep | 0 .../samplecicdpipeline.yml | 0 .../streamanalytics-tech-sample.asaql | 0 .../streamingjobs.bicep | 0 .../test/temperature_equal_to_27_degrees.json | 0 .../temperature_greater_than_27_degrees.json | 0 .../temperature_less_than_27_degrees.json | 0 .../test/testConfig.json | 0 .../synapseanalytics/README.md | 5 +- .../data_filter-0.0.1-py3-none-any.whl | Bin 2270 -> 0 bytes .../packages/md5-0.0.1-py3-none-any.whl | Bin 2203 -> 0 bytes .../integrationtests/.vscode/launch.json | 15 - .../.devcontainer/.envtemplate | 0 .../.devcontainer/Dockerfile | 0 .../.devcontainer/devcontainer.json | 0 .../.devcontainer/docker-compose.yml | 2 +- .../README.md | 12 +- .../deploy.sh | 0 .../images/CLS.jpg | Bin .../images/NO_AAD_MEMBER.jpg | Bin .../images/SSMS.jpg | Bin .../images/container.jpg | Bin .../datalake_after_field_query_delete.jpg | Bin .../images/datalake_after_folder_delete.jpg | Bin .../images/datalake_after_ingestion.jpg | Bin .../images/datalake_after_running_vacuum.jpg | Bin .../images/datalake_config_json.jpg | Bin .../images/deltalake_folders.jpg | Bin .../images/stored_procedure_details.jpg | Bin .../images/views_synapse_studio.jpg | Bin .../infrastructure/main.bicep | 0 .../infrastructure/modules/keyvault.bicep | 0 .../infrastructure/modules/storage.bicep | 0 .../infrastructure/modules/synapse.bicep | 0 .../scripts/common.sh | 0 .../config/datalake_config_template.json | 0 .../scripts/deploy_infrastructure.sh | 22 +- .../scripts/deploy_synapse_artifacts.sh | 0 .../scripts/verify_prerequisites.sh | 0 .../src/adlsaccess}/__init__.py | 0 .../src/adlsaccess/synadlsaccess.py | 2 +- .../src/requirements.txt | 0 .../src/setup.py | 0 ...Nb_NYCTaxi_Config_Operations_Library.ipynb | 214 +- ...i_Config_Operations_Library_No_Wheel.ipynb | 8 +- .../Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb | 0 .../Nb_NYCTaxi_Run_Data_Retention.ipynb | 0 ..._NYCTaxi_Run_Data_Retention_No_Wheel.ipynb | 0 .../workspace/datasets/Ds_NYCTaxi_ADLS2.json | 0 .../datasets/Ds_NYCTaxi_ADLS2_Folder.json | 0 .../Ds_NYCTaxi_ADLS2_Year_Folder.json | 0 .../workspace/datasets/Ds_NYCTaxi_Config.json | 0 .../workspace/datasets/Ds_NYCTaxi_HTTP.json | 0 .../linkedservices/Ls_NYCTaxi_ADLS2.json | 0 .../Ls_NYCTaxi_ADLS2_Folder.json | 0 .../linkedservices/Ls_NYCTaxi_Config.json | 0 .../linkedservices/Ls_NYCTaxi_HTTP.json | 0 .../linkedservices/Ls_NYCTaxi_KeyVault.json | 0 .../Ls_NYCTaxi_Synapse_Serverless_db.json | 0 .../Ls_NYCTaxi_Synapse_Serverless_master.json | 0 .../pipelines/Pl_NYCTaxi_0_Main.json | 0 .../pipelines/Pl_NYCTaxi_1_Setup.json | 0 .../Pl_NYCTaxi_2_CreateServerlessView.json | 0 .../pipelines/Pl_NYCTaxi_2_IngestData.json | 0 .../Pl_NYCTaxi_Run_Data_Retention.json | 0 .../scripts/Sc_Column_Level_Security.sql | 6 +- .../workspace/triggers/Tg_NYCTaxi_0_Main.json | 0 .../adlsaccess-1.0-py3-none-any.whl | Bin 883 files changed, 843 insertions(+), 4307 deletions(-) create mode 100644 archive/README.md rename {e2e_samples => archive/e2e_samples}/dataset_versioning/README.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/databricks/README.md (97%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/databricks/data_versioning.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/datafactory/README.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/datafactory/arm_template/arm_template.json (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/datafactory/arm_template/factory/adf-loan-dev_arm_template.json (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_0.json (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_master.json (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/docs/adrs/source_data_store.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/docs/images/adf_pipeline.JPG (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/docs/images/architecture.PNG (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/docs/images/versioned_data.JPG (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/README.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/setup.sh (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/.azdo/iac-build-validation.yml (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/.azdo/iac-pipeline.yml (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/.azdo/iac-template.yml (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/live/dev/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/live/dev/output.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/live/dev/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_factory/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_factory/output.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_factory/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_lake/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_lake/output.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/data_lake/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/databricks/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/databricks/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/keyvault/locals.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/keyvault/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/keyvault/output.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/keyvault/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/service/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/service/output.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/service/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/sql_server/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/infra/terraform/modules/sql_server/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/.devcontainer/Dockerfile (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/.devcontainer/devcontainer.json (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/README.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/keyvault_wrapper.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/main.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/process.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/requirements.txt (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/sql_wrapper.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/tests/__init__.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/tests/test_main.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/tests/test_process.py (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/data_generator/tests/test_sample.csv (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/ddl/README.md (100%) rename {e2e_samples => archive/e2e_samples}/dataset_versioning/sql/ddl/watermark.sql (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/README.md (88%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/.gitignore (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi.sln (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Controllers/ExceptionController.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Controllers/TelemetriesController.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/CustomAttributes/AuthorizeByTenantIdAttribute.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/CustomAttributes/ValidateDeviceAttribute.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Filters/HttpRequestExceptionFilter.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Filters/ValidateDeviceFilter.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/CosmosContext.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/CustomAttributes/GuidFormatAttributes.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/Device.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/DeviceInfo.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/Telemetry.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Models/TelemetryEntity.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/PathHandlers/TenantIdHandler.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Program.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Properties/launchSettings.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Repositories/CosmosRepository.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Repositories/IRepository.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Repositories/RepositoryConstructor.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Repositories/TableTelemetryRepository.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/Startup.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/WebApi.csproj (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/api/WebApi/appsettings.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/architecture-without-routing.JPG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token1.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token2.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token3.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token4.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token5.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/.images/postman-token6.PNG (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/AUTH.md (78%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/docs/POSTMAN.md (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/.gitignore (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/.local.settings.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Models/CustomAttributes/GuidFormatAttributes.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Models/TableStorageConfig.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Models/Telemetry.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Program.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Services/ITableClientService.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/Services/TableClientService.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/SplitAndSaveFunc.cs (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/TelemetryProcessor.csproj (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/functions/TelemetryProcessor/host.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/infra/stamp/arm-templates/azuredeploy.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/infra/stamp/arm-templates/azuredeploy.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/deployment_stamps/pipelines/create-one-stamp.yml (96%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/README.md (98%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/adf/_scripts/deploymentadf.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/adf/dataset/ParkingSensors_Anonymized_CSV.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/adf/dataset/ParkingSensors_Bronze_CSV.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/adf/dataset/ParkingSensors_Source_CSV.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/adf/pipeline/IngestToBronze.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/O365_connector.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/O365_connector.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/app_insights.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/app_insights.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/azure_function_datalakelogs.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/azure_function_datalakelogs.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/data_factory.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/data_factory.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/data_lake.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/data_lake.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/databricks.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/databricks.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/email_logic_app.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/email_logic_app.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/key_vault.json (95%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/key_vault.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/log_analytics.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/log_analytics.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/private_endpoint.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/private_endpoint.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/purview.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/purview.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/vnet.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/arm-templates/vnet.parameters.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/raw_data/README.md (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/seed/dim_date.csv (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/data/seed/dim_time.csv (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/databricks/config/cluster.config.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/databricks/config/run.setup.config.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/databricks/notebooks/00_setup.py (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/databricks/notebooks/01_transform_presidio.py (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/databricks/setup/startup.sh (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/docs/images/architecture.png (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/docs/pipelines-and-scripts.md (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/create-infrastructure.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/jobs/create-data-lake-log-sender-job.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/jobs/create-email-sender-job.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/jobs/create-infrastructure-job.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/O365_connector.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/app-insights.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/azure-function-datalakelogs.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/data-factory.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/data-lake.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/databricks.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/df-email-logic-app.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/key-vault.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/log-analytics.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/purview.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/templates/vnet.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/variables/dev-environment.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/variables/prod-environment.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/pipelines/variables/test-environment.yml (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/agent/Set-AgentTools.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/ADF-Pre-And-Post-Deploy.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Databricks-Post-Deploy.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-ADFLinkedService.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-EnvironmentVariables.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-PurviewADFConnection.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-PurviewADLSource.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-PurviewDataScan.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/New-StorageContainerFolders.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Set-ADL-RBAC.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Set-AdlLoggingProperties.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Set-AdlRoleAssignmentForLogSenderFunction.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Set-AuthToken.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/scripts/environment/Set-SPNOwnerToPurview.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.funcignore (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.gitignore (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/function.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/run.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/host.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/profile.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/proxies.json (100%) rename {e2e_samples => archive/e2e_samples}/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/requirements.psd1 (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/README.md (99%) rename {e2e_samples => archive/e2e_samples}/temperature_events/devops/azure-pipelines-ci-artifacts.yml (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/.config/dotnet-tools.json (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/.editorconfig (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/README.md (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj.Test/DeviceIdFilterTest.cs (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj.Test/TemperatureEventsProj.Test.csproj (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj.Test/TemperatureFilterTest.cs (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/.gitignore (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/DeviceIdFilter.cs (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/Models/DeviceEvent.cs (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/TemperatureEventsProj.csproj (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/TemperatureFilter.cs (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/host.json (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsProj/local.settings.template.json (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/TemperatureEventsSln.sln (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/functions/host.json (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/application_map.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/azure_pipeline_setup.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/azure_pipeline_var_group.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/correlated_logs.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/e2e_transaction_detail_parallel.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/e2e_transaction_detail_sequential.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/function-deviceidfilter.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/function-temperaturefilter.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/function_instances_from_logs.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/function_instances_live_metrics.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/loadtesting_git_import.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/loadtesting_git_import_url.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/observability_eventhubmetrics.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/observability_portaldashboard.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/temperature-events-architecture.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/images/var_group_secrets.png (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/README.md (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/infra-ado-ci-pipeline-test.yml (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/infra-ado-ci-pipeline.yml (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/infra-ado-pipeline-template.yml (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/setup.sh (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/live/dev/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/live/dev/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/eventhubs/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/eventhubs/outputs.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/eventhubs/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/functions/locals.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/functions/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/functions/outputs.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/functions/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/services/locals.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/services/main.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/infra/terraform/modules/services/variables.tf (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/loadtesting/IoTSimulator.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/loadtesting/LoadTestCheckResult.ps1 (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/loadtesting/README.md (100%) rename {e2e_samples => archive/e2e_samples}/temperature_events/loadtesting/loadtest-pipeline.yml (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/README.md (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/_scripts/deploymentadf.ps1 (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/dataset/ParkingSensors_Bronze_CSV.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/dataset/ParkingSensors_Source_CSV.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/linkedService/DataLakeStorage.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/linkedService/KeyVault.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/linkedService/SourceDataStorage.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/adf/pipeline/IngestToBronze.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/raw_data/README.md (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/seed/dim_date.csv (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/data/seed/dim_time.csv (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/deploy.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/devops/azure-pipelines-cd-release.yml (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/devops/azure-pipelines-ci-artifacts.yml (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/devops/templates/jobs/deploy-adf-job.yml (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/devops/templates/jobs/integration-test-adf-job.yml (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/.gitkeep (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/ADFRun.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/CICD-logical.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/CICD.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/CICDv2.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/PublishADF.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/ReleasePipeline.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/ReleasePipelinev3.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/architecture.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/create-pull.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/create-pull2.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/integrationTestResultv2.PNG (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/new_branch.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/docs/images/publish.png (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/infrastructure/.gitkeep (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/infrastructure/azuredeploy.json (99%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/infrastructure/azuredeploy.parameters.dev.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/infrastructure/azuredeploy.parameters.prod.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/infrastructure/azuredeploy.parameters.stg.json (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/clean_up.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/common.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/deploy_azdo_pipelines.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/deploy_azdo_service_connections_azure.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/deploy_azdo_service_connections_github.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/deploy_azdo_variables.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/deploy_infrastructure.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/init_environment.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/scripts/verify_prerequisites.sh (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/tests/integrationtests/requirements.txt (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/tests/integrationtests/tests/README.md (100%) rename {single_tech_samples/databricks/sample4_ci_cd/common => archive/single_tech_samples/adf_cicd/tests/integrationtests/tests}/__init__.py (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/tests/integrationtests/tests/conftest.py (100%) rename {single_tech_samples/databricks/sample4_ci_cd/common/tests => archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/dataconnectors}/__init__.py (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/tests/integrationtests/tests/dataconnectors/blob_storage.py (100%) rename {single_tech_samples/datafactory/sample1_cicd => archive/single_tech_samples/adf_cicd}/tests/integrationtests/tests/test_pipeline_ingest_to_bronze.py (100%) rename {single_tech_samples/databricks => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/.devcontainer/Dockerfile (100%) rename {single_tech_samples/databricks => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/.devcontainer/devcontainer.json (100%) rename {single_tech_samples/databricks/sample4_ci_cd => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/.devcontainer/settings.vscode.json (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/README.md (86%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/databricks/workspace.parameters.json (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/databricks/workspace.template.json (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/deploy.sh (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/destroy.sh (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Adb.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Architecture.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Deployment_Logs.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Keyvault.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Script_Deploy.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Script_Teardown.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_basic_azure_databricks_environment/images}/IAC_Storage.png (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/keyvault/keyvault.parameters.json (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/keyvault/keyvault.template.json (88%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/storageaccount/storageaccount.parameters.json (100%) rename {single_tech_samples/databricks/sample1_basic_azure_databricks_environment => archive/single_tech_samples/databricks_basic_azure_databricks_environment}/storageaccount/storageaccount.template.json (100%) create mode 100644 archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/Dockerfile create mode 100644 archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/devcontainer.json create mode 100644 archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/settings.vscode.json rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/.gitignore (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/README.md (98%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/access-data-directly-via-account-key.ipy (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/access-data-mount-via-ad-passthrough.ipy (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/cluster-config.default.json (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/cluster-config.high-concurrency.json (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/deploy.sh (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/sample-data.us-population.json (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/scripts/configure-databricks-cli.sh (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/scripts/deploy-default-and-hc-clusters.sh (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/scripts/import-data-access-notebooks.sh (100%) rename {single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access => archive/single_tech_samples/databricks_cluster_provisioning_and_data_access}/scripts/upload-sample-data.sh (100%) create mode 100644 archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/Dockerfile create mode 100644 archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/devcontainer.json create mode 100644 archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/settings.vscode.json rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/README.md (84%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/databricks/workspace.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/databricks/workspace.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/deploy.sh (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/destroy.sh (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/example-dotenv (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/firewall/firewall.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/firewall/firewall.template.json (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADB_Notebooks.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Adb.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Architecture.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Deployment.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Deployment_Logs.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Firewall.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Firewall_AR.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Firewall_Deny.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Hub.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_IP.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Keyvault.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_NSG.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_PL.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Route.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Script_Deploy.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Script_Teardown.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Spoke.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Storage.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADE_Subnet.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Code.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Create.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Repo.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Repo_Select.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Type.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Pipeline_Variables.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Result.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Run.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_RunChart.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Runlog.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/ADO_Variables.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/Azure_Databricks_Icon.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/Lumos_logo.png (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/MIT.svg (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/Open_Source.svg (100%) rename {single_tech_samples/databricks/Common_Assets/Images => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images}/Status-Active.svg (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/keyvault/keyvault.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/keyvault/keyvault.template.json (88%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/keyvault/privateendpoint.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/keyvault/privateendpoint.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/routetable/routetable.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/routetable/routetable.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/securitygroup/securitygroup.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/securitygroup/securitygroup.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/storageaccount/privateendpoint.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/storageaccount/privateendpoint.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/storageaccount/storageaccount.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/storageaccount/storageaccount.template.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/vnet/vnet.parameters.json (100%) rename {single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment => archive/single_tech_samples/databricks_enterprise_azure_databricks_environment}/vnet/vnet.template.json (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/.devcontainer/devcontainer.json (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/.gitignore (100%) rename single_tech_samples/datashare/Readme.md => archive/single_tech_samples/datashare_automated_data_sharing/README.md (91%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/.gitignore (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/AcceptDataShareInvitations/__init__.py (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/AcceptDataShareInvitations/configuration.py (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/AcceptDataShareInvitations/data_share_helper.py (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/AcceptDataShareInvitations/function.json (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/host.json (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/local.settings.template.json (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/azure_function/requirements.txt (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/infra/bash_setup_infra.sh (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/infra/bash_setup_sp_permissions.sh (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/infra/ps_setup_infra.ps1 (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/infra/ps_setup_sp_permissions.ps1 (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/add-data-share-permissions.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/dataset.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/invitation.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/mapping.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/schedule.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/share_created.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/snapshot.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/subscription_created.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/media/trigger.png (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/python/dest.py (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/python/requirements.txt (100%) rename {single_tech_samples/datashare => archive/single_tech_samples/datashare_automated_data_sharing}/python/source.py (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/README.md (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/_scripts/deploymentadf.ps1 (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/dataset/CustomerBronzeData.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/dataset/CustomerDataDrop.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/linkedService/DataLakeStorage.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/linkedService/KeyVault.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/adf/pipeline/IngestCustomerData.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/data/Customers.csv (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/deploy.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/docs/images/architecture.png (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/infrastructure/azuredeploy.json (99%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/infrastructure/azuredeploy.parameters.dev.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/infrastructure/azuredeploy.parameters.prod.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/infrastructure/azuredeploy.parameters.stg.json (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/--name (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/--resource-group (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/--resource-type (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/clean_up.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/common.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/delete_purview_data.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/deploy_infrastructure.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/deploy_purview_linkedservices.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/deploy_purview_spn.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/get_purview_access_token.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/init_environment.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/search_advanced.sh (100%) rename {single_tech_samples/purview => archive/single_tech_samples/purview_iac}/scripts/verify_prerequisites.sh (100%) rename {single_tech_samples/purview/sample2_data_plane_permissions_release_mng => archive/single_tech_samples/purview_managing_data_plane_permissions}/README.md (100%) rename {single_tech_samples/purview/sample2_data_plane_permissions_release_mng => archive/single_tech_samples/purview_managing_data_plane_permissions}/action.yml (100%) rename {single_tech_samples/purview/sample2_data_plane_permissions_release_mng => archive/single_tech_samples/purview_managing_data_plane_permissions}/entrypoint.sh (100%) rename {single_tech_samples/purview/sample2_data_plane_permissions_release_mng => archive/single_tech_samples/purview_managing_data_plane_permissions}/functions-lib-to-set-purview-permissions.sh (100%) rename {single_tech_samples/storage => archive/single_tech_samples/storage_lifecycle_management}/README.md (100%) rename {single_tech_samples/storage => archive/single_tech_samples/storage_lifecycle_management}/sample1_data_lifecycle/README.md (97%) rename {single_tech_samples/storage/common_assets => archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle}/images/data_lifecycle_rules.png (100%) rename {single_tech_samples/storage/common_assets => archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle}/images/storage_accounts.png (100%) rename {single_tech_samples/storage/common_assets => archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle}/images/storage_containers.png (100%) rename {single_tech_samples/storage => archive/single_tech_samples/storage_lifecycle_management}/sample1_data_lifecycle/terraform/main.tf (100%) rename {single_tech_samples/storage => archive/single_tech_samples/storage_lifecycle_management}/sample1_data_lifecycle/terraform/terraform.auto.tfvars (100%) rename {single_tech_samples/storage => archive/single_tech_samples/storage_lifecycle_management}/sample1_data_lifecycle/terraform/variables.tf (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/.devcontainer/.envtemplate (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/.devcontainer/Dockerfile (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/.devcontainer/devcontainer.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/.devcontainer/docker-compose.yml (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/README.md (97%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/deploy.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/docs/devcontainer.md (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/docs/images/SynapseRun.png (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/docs/images/devcontainer_build_error.png (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/docs/images/parking_sensors_dev_container_start.gif (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/main.bicep (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/main.parameters.dev.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/modules/keyvault.bicep (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/modules/storage.bicep (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/modules/synapse.bicep (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/infrastructure/modules/synapse_sql_pool.bicep (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/clean_up.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/common.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/deploy_infrastructure.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/deploy_synapse_artifacts.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/init_environment.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/scripts/verify_prerequisites.sh (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/notebook/ETL_sample.ipynb (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/templates/dataset/Ds_SqlDW_Table_template.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/templates/linkedService/Ls_KeyVault_01_template.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/templates/pipeline/P_Sample3_template.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/templates/trigger/T_Stor_template.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/dataflow/Df_SaveToSQL.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/dataset/Ds_AdlsGen2_Data.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/dataset/Ds_AdlsGen2_Interim.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/dataset/Ds_Egress_Parquet.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/dataset/Ds_Ingest_CSV.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/linkedService/Ls_AdlsGen2_01.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/pipeline/README.md (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/synapse/workspace/trigger/README.md (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/.devcontainer/Dockerfile (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/.devcontainer/devcontainer.json (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/.devcontainer/docker-compose.yml (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/.envtemplate (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/README.md (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/data/dim_date.csv (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/dataconnectors/adls.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/dataconnectors/local_file.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/dataconnectors/sql.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/files/processed_parquet_file.parquet (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/requirements.txt (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/setup.cfg (100%) rename {single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs => archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests}/__init__.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/tests/conftest.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/tests/test_synapse_pipeline_sample3.py (100%) rename {single_tech_samples/synapseanalytics/sample3_integration_testing => archive/single_tech_samples/synapse_integration_testing}/tests/integrationtests/utils/pipelineutils.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/.devcontainer/Dockerfile (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/.devcontainer/devcontainer.json (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/.gitignore (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/OrchestratorNotebook.ipynb (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/README.md (92%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/csv_dataset.json (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/data/country_list.csv (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/Architecture_design.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/IAC_Script_Deploy.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/IAC_Storage.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/IAC_Synapse.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/IAC_package.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/Spark_table_full.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/pipeline_run.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/pipeline_run_asia.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/spark-pool1.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/spark-pool2.png (100%) rename {single_tech_samples/synapseanalytics/Common_Assets/Images => archive/single_tech_samples/synapse_loading_dynamic_modules/images}/spark_table_asia.png (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/linked_service.json (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/data_filter/README.MD (100%) rename {single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests => archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter}/__init__.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/data_filter/data_filter.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/data_filter/setup.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/md5/README.MD (100%) rename {single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/integration => archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5}/__init__.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/md5/md5.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/modules/md5/setup.py (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/pipeline.json (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/setup/deploy.sh (100%) rename {single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules => archive/single_tech_samples/synapse_loading_dynamic_modules}/setup/destroy.sh (100%) delete mode 100644 azure-pipelines.yml create mode 100644 single_tech_samples/azuresql/azuresql_ci_cd/README.md rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/deploy.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_addcolumn.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_azure_resources.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_builds.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_gitbranchcheckout.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_gitcommitpush.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_pipelines.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_prvalidation.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_release.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_service_connections.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/docs/images/azuresql_viewchanges.PNG (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/infrastructure/azuredeploy.json (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/pipelines/azure-pipelines-01-validate-pr.yml (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/pipelines/azure-pipelines-02-build.yml (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/pipelines/azure-pipelines-03-simple-multi-stage.yml (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/clean_up.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/common.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/deploy_azure_pipelines_01_validate_pr.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/deploy_azure_pipelines_02_build.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/deploy_azure_pipelines_03_simple_multi_stage.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/deploy_azure_pipelines_04_multi_stage_predeploy_test.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/scripts/init_environment.sh (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql.sln (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Sequences/SalesOrderNumber.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Address.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Customer.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/CustomerAddress.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Product.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductCategory.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductDescription.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModel.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModelProductDescription.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderDetail.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderHeader.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vGetAllCategories.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductAndDescription.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductModelCatalogDescription.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/Security/SalesLT.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetAllCategories.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetCustomerInformation.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetSalesOrderStatusText.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspLogError.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspPrintError.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/BuildVersion.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/ErrorLog.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/AccountNumber.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Flag.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Name.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/NameStyle.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/OrderNumber.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Phone.sql (100%) rename single_tech_samples/azuresql/{ => azuresql_ci_cd}/src/ddo_samples_azuresql/ddo_samples_azuresql/ddo_samples_azuresql.sqlproj (100%) delete mode 100644 single_tech_samples/cosmosdb/README.md delete mode 100644 single_tech_samples/databricks/Makefile rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/.dbx/lock.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/.dbx/project.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/.devcontainer/Dockerfile (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/.devcontainer/devcontainer.json (100%) create mode 100644 single_tech_samples/databricks/databricks_ci_cd/.devcontainer/settings.vscode.json rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/.gitignore (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/README.md (100%) rename single_tech_samples/databricks/{sample4_ci_cd/spark_python_jobs/tests/unit => databricks_ci_cd/common}/__init__.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/common/module_a.py (100%) rename single_tech_samples/{datafactory/sample1_cicd/tests/integrationtests => databricks/databricks_ci_cd/common}/tests/__init__.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/common/tests/module_a_test.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/conf/deployment-example.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/conf/deployment_notebook.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/conf/deployment_notebook_new_cluster.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/conf/deployment_spark_python.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/conf/deployment_spark_python_new_cluster.json (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/lib-pipelines.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/notebook-pipelines.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/spark-python-pipelines.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/create-deployment-json.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/deploy-lib-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/deploy-notebook-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/deploy-spark-python-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/test-lib-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/test-notebook-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/devops/template/test-spark-python-job.yml (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/architecture.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/dbx-repo.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/deploy-lib.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/notebook-prod.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/notebook-staging.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/notebook-test.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/pipelines.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/pytest-output-devcon.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/pytest-output.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/spark-python-prod.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/spark-python-staging.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/variable-group.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/images/variables.png (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/main_notebook_a.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/main_notebook_b.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/main_notebook_sql.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/module_b_notebook.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/tests/main_notebook_a_test.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/tests/main_notebook_b_test.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/tests/main_notebook_sql_test.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/notebook_jobs/tests/module_b_notebook_test.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/pytest.ini (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/requirements.txt (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/setup.py (100%) rename single_tech_samples/{datafactory/sample1_cicd/tests/integrationtests/tests/dataconnectors => databricks/databricks_ci_cd/spark_python_jobs}/__init__.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/spark_python_jobs/main.py (100%) rename single_tech_samples/{datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core => databricks/databricks_ci_cd/spark_python_jobs/tests}/__init__.py (100%) rename single_tech_samples/{datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch => databricks/databricks_ci_cd/spark_python_jobs/tests/integration}/__init__.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/spark_python_jobs/tests/integration/main_test.py (100%) rename single_tech_samples/{datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract => databricks/databricks_ci_cd/spark_python_jobs/tests/unit}/__init__.py (100%) rename single_tech_samples/databricks/{sample4_ci_cd => databricks_ci_cd}/spark_python_jobs/tests/unit/main_test.py (100%) delete mode 100644 single_tech_samples/dataexplorer/README.md rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/DEPLOYMENT_STEPS.md (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/README.md (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/arm-template-parameters-definition.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/dataset/destination.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/dataset/source.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/linkedService/adls_connection.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/linkedService/keyvault_connection.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/pipeline/copy_data.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/publish_config.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/adf/trigger/trigger1.json (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/docs/images/adf_deploy_to_dev_env.png (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/docs/images/adf_deploy_to_preprod_env.png (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/docs/images/adf_deployment_architecture.png (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/docs/images/adf_link_to_git.png (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/docs/images/new_branch.png (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/infra/azuredeploy.json (99%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/pipelines/adf-deployment-multi-env.yml (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/pipelines/adf-deployment.yml (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/scripts/cereal.csv (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/scripts/deploy_azdo_pipelines.sh (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/scripts/deploy_azdo_service_connections_azure.sh (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/scripts/deploy_azdo_variables.sh (100%) rename single_tech_samples/datafactory/{sample2_cicd_auto_publish => adf_cicd_auto_publish}/scripts/deploy_infra.sh (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/.devcontainer/devcontainer.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/README.md (99%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/README.md (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/deploy-pipeline.sh (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/linkedService/azurebatch_ls.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/linkedService/azurebatchstorage_ls.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/linkedService/temp_azurebatch_ls.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/adf/pipeline/pipeline.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/.gitignore (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/README.md (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/adf/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/adf/outputs.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/adf/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/azureBatch/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/azureBatch/output.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/azureBatch/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/containerRegistry/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/containerRegistry/outputs.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/containerRegistry/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/dataLakeStorage/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/dataLakeStorage/output.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/dataLakeStorage/storage-container.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/dataLakeStorage/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/keyVault/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/keyVault/output.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/keyVault/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/kvSecerets/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/kvSecerets/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/managedIdentity/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/managedIdentity/outputs.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/managedIdentity/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/role_assignments/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/role_assignments/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/storage/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/storage/outputs.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/storage/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/virtualNetwork/main.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/virtualNetwork/output.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/modules/virtualNetwork/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/outputs.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/provider.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/terraform.tfvars (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/deploy/terraform/variables.tf (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/adf-batch-integration-design.svg (99%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/apply-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/author-pipelines.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/deployed-resources-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/destroy-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/init-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/jobs.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/local-debug.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/pipeline-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/pipeline-run.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/plan-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/post-apply-output.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/pre-processing-usecase.map.drawio.svg (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/sample-pipeline.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/storage-mount.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/images/terraform-vars.png (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/.devcontainer/Dockerfile (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/.devcontainer/devcontainer.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/.gitignore (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/README.md (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils => adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core}/__init__.py (100%) rename single_tech_samples/{synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter => datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch}/__init__.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/batch/job.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/batch/task.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/config.py (100%) rename single_tech_samples/{synapseanalytics/sample1_loading_dynamic_modules/modules/md5 => datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract}/__init__.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/extract/extractscheduler.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/extract/extracttasks.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/core/extract/taskbuilder.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/extract.py (100%) rename single_tech_samples/{synapseanalytics/sample2_synapseserverless/src/adlsaccess => datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils}/__init__.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/utils/batchclient.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/utils/confighelper.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/utils/enums.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/app/utils/keyvaultclient.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/env.template (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/orchestrator-app/requirements.txt (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/.devcontainer/devcontainer.json (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/Dockerfile (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/README.md (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/app.py (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_can_bus_dbw_slash_can_rx.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_center_camera_slash_camera_info.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_center_camera_slash_image_color_slash_compressed.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_diagnostics.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_ecef_slash_.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_fix.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_imu_slash_data.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_left_camera_slash_camera_info.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_left_camera_slash_image_color_slash_compressed.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_pressure.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_right_camera_slash_camera_info.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_right_camera_slash_image_color_slash_compressed.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_time_reference.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_brake_info_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_brake_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_filtered_accel.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_fuel_level_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_gear_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_fix.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_time.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_vel.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_imu_slash_data_raw.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_joint_states.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_misc_1_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_sonar_cloud.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_steering_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_surround_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_suspension_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_throttle_info_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_throttle_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_tire_pressure_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_vehicle_slash_wheel_speed_report.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/output/_slash_velodyne_packets.csv (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/data/raw/sample-data.bag (100%) rename single_tech_samples/datafactory/{sample3_data_pre_processing_with_azure_batch => adf_data_pre_processing_with_azure_batch}/src/sample-processor/deploy-processor.sh (100%) delete mode 100644 single_tech_samples/streamanalytics/e2e/package-lock.json delete mode 100644 single_tech_samples/streamanalytics/e2e/package.json rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/.devcontainer/devcontainer.json (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/.gitignore (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/JobConfig.json (100%) create mode 100644 single_tech_samples/streamanalytics/streamanalytics_ci_cd/README.md rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/asaproj.json (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/containers.bicep (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/docs/images/ASA-job.PNG (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/docs/images/BLOB-OUT.PNG (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/docs/images/Bicep-doc.PNG (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/docs/images/InkedIoT-Simulator_LI.jpg (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/docs/images/e2e-test.PNG (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/e2e/e2e.ts (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/iothubs.bicep (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/main.bicep (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/samplecicdpipeline.yml (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/streamanalytics-tech-sample.asaql (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/streamingjobs.bicep (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/test/temperature_equal_to_27_degrees.json (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/test/temperature_greater_than_27_degrees.json (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/test/temperature_less_than_27_degrees.json (100%) rename single_tech_samples/streamanalytics/{ => streamanalytics_ci_cd}/test/testConfig.json (100%) delete mode 100755 single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/data_filter-0.0.1-py3-none-any.whl delete mode 100755 single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/md5-0.0.1-py3-none-any.whl delete mode 100644 single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.vscode/launch.json rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/.devcontainer/.envtemplate (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/.devcontainer/Dockerfile (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/.devcontainer/devcontainer.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/.devcontainer/docker-compose.yml (89%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/README.md (96%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/deploy.sh (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/CLS.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/NO_AAD_MEMBER.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/SSMS.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/container.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/datalake_after_field_query_delete.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/datalake_after_folder_delete.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/datalake_after_ingestion.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/datalake_after_running_vacuum.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/datalake_config_json.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/deltalake_folders.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/stored_procedure_details.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/images/views_synapse_studio.jpg (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/infrastructure/main.bicep (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/infrastructure/modules/keyvault.bicep (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/infrastructure/modules/storage.bicep (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/infrastructure/modules/synapse.bicep (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/scripts/common.sh (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/scripts/config/datalake_config_template.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/scripts/deploy_infrastructure.sh (87%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/scripts/deploy_synapse_artifacts.sh (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/scripts/verify_prerequisites.sh (100%) rename single_tech_samples/synapseanalytics/{sample3_integration_testing/tests/integrationtests/tests => synapse_serverless/src/adlsaccess}/__init__.py (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/src/adlsaccess/synadlsaccess.py (98%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/src/requirements.txt (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/src/setup.py (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb (94%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb (97%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/notebooks/Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention.ipynb (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention_No_Wheel.ipynb (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Folder.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Year_Folder.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/datasets/Ds_NYCTaxi_Config.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/datasets/Ds_NYCTaxi_HTTP.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2_Folder.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Config.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_HTTP.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_KeyVault.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_db.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_master.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_0_Main.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_1_Setup.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_CreateServerlessView.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_IngestData.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_Run_Data_Retention.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql (84%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/triggers/Tg_NYCTaxi_0_Main.json (100%) rename single_tech_samples/synapseanalytics/{sample2_synapseserverless => synapse_serverless}/synapseartifacts/workspace/workspace_packages/adlsaccess-1.0-py3-none-any.whl (100%) diff --git a/README.md b/README.md index 3b2eb2565..5f1cd2ca4 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,13 @@ languages: - bicep products: - azure +- microsoft-fabric +- azure-sql-database - azure-data-factory - azure-databricks - azure-stream-analytics -- azure-data-lake-gen2 -- azure-functions -- azure-data-share -description: "Code samples showcasing how to apply DevOps concepts to the Modern Data Warehouse Architecture leveraging different Azure Data Technologies." +- azure-synapse-analytics +description: "Code samples showcasing how to apply DevOps concepts to the modern data warehouse architecture leveraging different Azure data technologies." --- # DataOps for the Modern Data Warehouse @@ -29,33 +29,32 @@ The samples are either focused on a single azure service (**Single Tech Samples* ## Single Technology Samples -- [Azure SQL](single_tech_samples/azuresql/) - - [CI/CD - AzureSQL](single_tech_samples/azuresql/) -- [Data Factory](single_tech_samples/datafactory/) - - [CI/CD - ADF](single_tech_samples/datafactory/sample1_cicd) -- [Azure Synapse Analytics](single_tech_samples/synapseanalytics) +- [Microsoft Fabric](./single_tech_samples/fabric/README.md) + - [Feature engineering on Microsoft Fabric](./single_tech_samples/fabric/feature_engineering_on_fabric/README.md) +- [Azure SQL database](./single_tech_samples/azuresql/README.md) + - [CI/CD - Azure SQL database](./single_tech_samples/azuresql/azuresql_ci_cd/README.md) - [Azure Databricks](single_tech_samples/databricks/) - - [IaC - Basic Azure Databricks deployment](single_tech_samples/databricks/sample1_basic_azure_databricks_environment/) - - [IaC - Enterprise Security and Data Exfiltration Protection Deployment](single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/) - - [IaC - Cluster Provisioning and Secure Data Access](single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/) - - [CI/CD - Databricks](single_tech_samples/databricks/sample4_ci_cd/) -- [Stream Analytics](single_tech_samples/streamanalytics/) -- [Azure Purview](single_tech_samples/purview/) - - [IaC - Azure Purview](single_tech_samples/purview/) -- [Azure Data Share](single_tech_samples/datashare/) + - [IaC - Basic deployment](single_tech_samples/databricks/databricks_ci_cd/README.md) +- [Azure Data Factory](./single_tech_samples/datafactory/README.md) + - [CI/CD - Auto publish](./single_tech_samples/datafactory/adf_cicd_auto_publish/README.md) + - [Data pre-processing using Azure Batch](./single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/README.md) +- [Azure Synapse Analytics](./single_tech_samples/synapseanalytics/README.md) + - [Serverless best practices](./single_tech_samples/synapseanalytics/synapse_serverless/README.md) +- [Azure Stream Analytics](./single_tech_samples/streamanalytics/README.md) + - [CI/CD - Azure Stream Analytics](./single_tech_samples/streamanalytics/streamanalytics_ci_cd/README.md) ## End to End samples -- **Parking Sensor Solution** - This demonstrates batch, end-to-end data pipeline following the MDW architecture, along with a corresponding CI/CD process. +### Parking Sensor Solution + +This demonstrates batch, end-to-end data pipeline following the MDW architecture, along with a corresponding CI/CD process. + ![Architecture](docs/images/CI_CD_process_simplified.png?raw=true "Architecture") - This has two version of the solution: - - [Azure Data Factory and Azure Databricks Version](e2e_samples/parking_sensors/) - - [Azure Synapse Version](e2e_samples/parking_sensors_synapse/) -- [**Temperature Events Solution**](e2e_samples/temperature_events) - This demonstrate a high-scale event-driven data pipeline with a focus on how to implement Observability and Load Testing. -![Architecture](e2e_samples/temperature_events/images/temperature-events-architecture.png?raw=true "Architecture") -- [**Dataset Versioning Solution**](e2e_samples/dataset_versioning) - This demonstrates how to use DataFactory to Orchestrate DataFlow, to do DeltaLoads into DeltaLake On DataLake(DoDDDoD). -- [**MDW Data Governance and PII data detection**](e2e_samples/mdw_governance) - This sample demonstrates how to deploy the Infrastructure of an end-to-end MDW Pipeline using [Azure DevOps pipelines](https://azure.microsoft.com/en-us/products/devops/pipelines/) along with a focus around Data Governance and PII data detection. - - *Technology stack*: Azure DevOps, Azure Data Factory, Azure Databricks, Azure Purview, [Presidio](https://github.com/microsoft/presidio) + +This has two version of the solution: + +- [Azure Data Factory and Azure Databricks Version](e2e_samples/parking_sensors/) +- [Azure Synapse Version](e2e_samples/parking_sensors_synapse/) ## Contributing diff --git a/archive/README.md b/archive/README.md new file mode 100644 index 000000000..e83c17bfe --- /dev/null +++ b/archive/README.md @@ -0,0 +1,27 @@ +# Archive + +This directory contains the archived samples that are no longer maintained. These are kept here for reference purposes. + +## Samples + +Here is a list of the archived samples: + +### End-to-end samples + +- [Deployment Stamps](./../archive/e2e_samples/deployment_stamps/README.md) +- [Dataset versioning](./../archive/e2e_samples/dataset_versioning/README.md) +- [MDW Governance](./../archive/e2e_samples/mdw_governance/README.md) +- [Temperature Events](./../archive/e2e_samples/temperature_events/README.md) + +### Single technology samples + +- [Azure Databricks - Basic IaC](./../archive/single_tech_samples/databricks_basic_azure_databricks_environment/README.md) +- [Azure Databricks - Data exfiltration](./../archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/README.md) +- [Azure Databricks - IaC cluster provisioning](./../archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/README.md) +- [Azure Data Factory - CI/CD](./../archive/single_tech_samples/adf_cicd/README.md) +- [Azure Data Share](./../archive/single_tech_samples/datashare_automated_data_sharing/README.md) +- [Microsoft Purview IaC](./../archive/single_tech_samples/purview_iac/README.md) +- [Github action to set Microsoft Purview permissions](./../archive/single_tech_samples/purview_managing_data_plane_permissions/README.md) +- [Azure Storage lifecycle management](./../archive/single_tech_samples/storage_lifecycle_management/README.md) +- [Metadata driven module loading in Azure Synapse](./../archive/single_tech_samples/synapse_loading_dynamic_modules/README.md) +- [Azure Synapse integration testing](./../archive/single_tech_samples/synapse_integration_testing/README.md) diff --git a/e2e_samples/dataset_versioning/README.md b/archive/e2e_samples/dataset_versioning/README.md similarity index 100% rename from e2e_samples/dataset_versioning/README.md rename to archive/e2e_samples/dataset_versioning/README.md diff --git a/e2e_samples/dataset_versioning/databricks/README.md b/archive/e2e_samples/dataset_versioning/databricks/README.md similarity index 97% rename from e2e_samples/dataset_versioning/databricks/README.md rename to archive/e2e_samples/dataset_versioning/databricks/README.md index b7fd97c03..3d82f7efa 100644 --- a/e2e_samples/dataset_versioning/databricks/README.md +++ b/archive/e2e_samples/dataset_versioning/databricks/README.md @@ -22,7 +22,7 @@ ACLs give you the ability to apply "finer grain" level of access to directories The [official doc](https://docs.microsoft.com/en-us/azure/databricks/security/data-governance#secure-access-to-azure-data-lake-storage) mentioned: -- Will you be accessing your data in a more interactive, ad-hoc way, perhaps developing an ML model or building an operational dashboard? In that case, we recommend that you use Azure Active Directory (Azure AD) credential passthrough. +- Will you be accessing your data in a more interactive, ad-hoc way, perhaps developing an ML model or building an operational dashboard? In that case, we recommend that you use Microsoft Entra ID credential passthrough. - Will you be running automated, scheduled workloads that require one-off access to the containers in your data lake? Then using service principals to access Azure Data Lake Storage is preferred. ## Setup and Deployment diff --git a/e2e_samples/dataset_versioning/databricks/data_versioning.py b/archive/e2e_samples/dataset_versioning/databricks/data_versioning.py similarity index 100% rename from e2e_samples/dataset_versioning/databricks/data_versioning.py rename to archive/e2e_samples/dataset_versioning/databricks/data_versioning.py diff --git a/e2e_samples/dataset_versioning/datafactory/README.md b/archive/e2e_samples/dataset_versioning/datafactory/README.md similarity index 100% rename from e2e_samples/dataset_versioning/datafactory/README.md rename to archive/e2e_samples/dataset_versioning/datafactory/README.md diff --git a/e2e_samples/dataset_versioning/datafactory/arm_template/arm_template.json b/archive/e2e_samples/dataset_versioning/datafactory/arm_template/arm_template.json similarity index 100% rename from e2e_samples/dataset_versioning/datafactory/arm_template/arm_template.json rename to archive/e2e_samples/dataset_versioning/datafactory/arm_template/arm_template.json diff --git a/e2e_samples/dataset_versioning/datafactory/arm_template/factory/adf-loan-dev_arm_template.json b/archive/e2e_samples/dataset_versioning/datafactory/arm_template/factory/adf-loan-dev_arm_template.json similarity index 100% rename from e2e_samples/dataset_versioning/datafactory/arm_template/factory/adf-loan-dev_arm_template.json rename to archive/e2e_samples/dataset_versioning/datafactory/arm_template/factory/adf-loan-dev_arm_template.json diff --git a/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_0.json b/archive/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_0.json similarity index 100% rename from e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_0.json rename to archive/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_0.json diff --git a/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_master.json b/archive/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_master.json similarity index 100% rename from e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_master.json rename to archive/e2e_samples/dataset_versioning/datafactory/arm_template/linkedTemplates/ArmTemplate_master.json diff --git a/e2e_samples/dataset_versioning/docs/adrs/source_data_store.md b/archive/e2e_samples/dataset_versioning/docs/adrs/source_data_store.md similarity index 100% rename from e2e_samples/dataset_versioning/docs/adrs/source_data_store.md rename to archive/e2e_samples/dataset_versioning/docs/adrs/source_data_store.md diff --git a/e2e_samples/dataset_versioning/docs/images/adf_pipeline.JPG b/archive/e2e_samples/dataset_versioning/docs/images/adf_pipeline.JPG similarity index 100% rename from e2e_samples/dataset_versioning/docs/images/adf_pipeline.JPG rename to archive/e2e_samples/dataset_versioning/docs/images/adf_pipeline.JPG diff --git a/e2e_samples/dataset_versioning/docs/images/architecture.PNG b/archive/e2e_samples/dataset_versioning/docs/images/architecture.PNG similarity index 100% rename from e2e_samples/dataset_versioning/docs/images/architecture.PNG rename to archive/e2e_samples/dataset_versioning/docs/images/architecture.PNG diff --git a/e2e_samples/dataset_versioning/docs/images/versioned_data.JPG b/archive/e2e_samples/dataset_versioning/docs/images/versioned_data.JPG similarity index 100% rename from e2e_samples/dataset_versioning/docs/images/versioned_data.JPG rename to archive/e2e_samples/dataset_versioning/docs/images/versioned_data.JPG diff --git a/e2e_samples/dataset_versioning/infra/README.md b/archive/e2e_samples/dataset_versioning/infra/README.md similarity index 100% rename from e2e_samples/dataset_versioning/infra/README.md rename to archive/e2e_samples/dataset_versioning/infra/README.md diff --git a/e2e_samples/dataset_versioning/infra/setup.sh b/archive/e2e_samples/dataset_versioning/infra/setup.sh similarity index 100% rename from e2e_samples/dataset_versioning/infra/setup.sh rename to archive/e2e_samples/dataset_versioning/infra/setup.sh diff --git a/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-build-validation.yml b/archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-build-validation.yml similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-build-validation.yml rename to archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-build-validation.yml diff --git a/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-pipeline.yml b/archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-pipeline.yml similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-pipeline.yml rename to archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-pipeline.yml diff --git a/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-template.yml b/archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-template.yml similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-template.yml rename to archive/e2e_samples/dataset_versioning/infra/terraform/.azdo/iac-template.yml diff --git a/e2e_samples/dataset_versioning/infra/terraform/live/dev/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/live/dev/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/live/dev/output.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/output.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/live/dev/output.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/output.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/live/dev/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/live/dev/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/live/dev/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/output.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/output.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/output.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/output.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_factory/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/output.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/output.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/output.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/output.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/data_lake/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/databricks/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/databricks/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/databricks/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/locals.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/locals.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/locals.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/locals.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/output.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/output.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/output.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/output.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/keyvault/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/service/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/service/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/service/output.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/output.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/service/output.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/output.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/service/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/service/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/service/variables.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/main.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/main.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/main.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/main.tf diff --git a/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/variables.tf b/archive/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/variables.tf similarity index 100% rename from e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/variables.tf rename to archive/e2e_samples/dataset_versioning/infra/terraform/modules/sql_server/variables.tf diff --git a/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/Dockerfile b/archive/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/Dockerfile similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/Dockerfile rename to archive/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/Dockerfile diff --git a/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/devcontainer.json b/archive/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/devcontainer.json similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/devcontainer.json rename to archive/e2e_samples/dataset_versioning/sql/data_generator/.devcontainer/devcontainer.json diff --git a/e2e_samples/dataset_versioning/sql/data_generator/README.md b/archive/e2e_samples/dataset_versioning/sql/data_generator/README.md similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/README.md rename to archive/e2e_samples/dataset_versioning/sql/data_generator/README.md diff --git a/e2e_samples/dataset_versioning/sql/data_generator/keyvault_wrapper.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/keyvault_wrapper.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/keyvault_wrapper.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/keyvault_wrapper.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/main.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/main.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/main.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/main.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/process.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/process.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/process.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/process.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/requirements.txt b/archive/e2e_samples/dataset_versioning/sql/data_generator/requirements.txt similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/requirements.txt rename to archive/e2e_samples/dataset_versioning/sql/data_generator/requirements.txt diff --git a/e2e_samples/dataset_versioning/sql/data_generator/sql_wrapper.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/sql_wrapper.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/sql_wrapper.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/sql_wrapper.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/tests/__init__.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/tests/__init__.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/tests/__init__.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/tests/__init__.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/tests/test_main.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_main.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/tests/test_main.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_main.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/tests/test_process.py b/archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_process.py similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/tests/test_process.py rename to archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_process.py diff --git a/e2e_samples/dataset_versioning/sql/data_generator/tests/test_sample.csv b/archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_sample.csv similarity index 100% rename from e2e_samples/dataset_versioning/sql/data_generator/tests/test_sample.csv rename to archive/e2e_samples/dataset_versioning/sql/data_generator/tests/test_sample.csv diff --git a/e2e_samples/dataset_versioning/sql/ddl/README.md b/archive/e2e_samples/dataset_versioning/sql/ddl/README.md similarity index 100% rename from e2e_samples/dataset_versioning/sql/ddl/README.md rename to archive/e2e_samples/dataset_versioning/sql/ddl/README.md diff --git a/e2e_samples/dataset_versioning/sql/ddl/watermark.sql b/archive/e2e_samples/dataset_versioning/sql/ddl/watermark.sql similarity index 100% rename from e2e_samples/dataset_versioning/sql/ddl/watermark.sql rename to archive/e2e_samples/dataset_versioning/sql/ddl/watermark.sql diff --git a/e2e_samples/deployment_stamps/README.md b/archive/e2e_samples/deployment_stamps/README.md similarity index 88% rename from e2e_samples/deployment_stamps/README.md rename to archive/e2e_samples/deployment_stamps/README.md index bafad0a8c..4002c3faf 100644 --- a/e2e_samples/deployment_stamps/README.md +++ b/archive/e2e_samples/deployment_stamps/README.md @@ -10,15 +10,14 @@ This sample demonstrates how to scale-out a multi-tenant telemetry processing so - [How to use the sample](#how-to-use-the-sample) - [Prerequisites](#prerequisites) - [Setup and Deployment](#setup-and-deployment) - - [Azure AD for Authentication](#azure-ad-for-authentication) + - [Microsoft Entra ID for Authentication](#microsoft-entra-id-for-authentication) - [Azure DevOps to Run the Pipeline](#azure-devops-to-run-the-pipeline) - [Create Sample Data](#create-sample-data) - [Send Telemetries](#send-telemetries) - [Access through API](#access-through-api) -- [Debug API and Function App Code Locally](#debug-api-and-function-app-code-locally -) - - [For API APP](#for-api-app) - - [For Function APP](#for-function-app) +- [Debug API and Function App Code Locally](#debug-api-and-function-app-code-locally) + - [For API App](#for-api-app) + - [For Function App](#for-function-app) ## Solution Overview @@ -55,8 +54,8 @@ In the above architecture, Stamp1 serves three Tenants A, B and C. Devices which When an end-user of any of the three Tenants, (i.e., User1, who belongs to Tenant B), sends a request to the API of Stamp1 to get latest telemetry data, the API will: -- first interact with Azure AD to check whether User1 belongs to Tenant B and whether the user has access to the data; - > in this sample, Azure AD App registration, App roles, Users and Groups, Enterprise App are used to manage the multi-tenant environment. For more details of how to setup the authentication environment, please check [Authentication and Authorization](docs/AUTH.md). +- first interact with Microsoft Entra ID to check whether User1 belongs to Tenant B and whether the user has access to the data; + > in this sample, Microsoft Entra App registration, App roles, Users and Groups, Enterprise App are used to manage the multi-tenant environment. For more details of how to setup the authentication environment, please check [Authentication and Authorization](docs/AUTH.md). - then query tenant details information from CosmosDB to check whether the specified device id belongs to Tenant B; - once the access right has been confirmed, the latest telemetry data of the specified device id saved in Table storage will be returned to User1. @@ -68,13 +67,13 @@ The same follow applies to Stamp2 and Stamp3 too. In this current version of sam 1. [Azure DevOps account](https://azure.microsoft.com/en-us/products/devops/) 2. [Azure Account](https://azure.microsoft.com/en-us/free/) -*Permissions needed*: ability to create and deploy to an azure resource group, a service principal, and grant the collaborator role to the service principal over the resource group; ability to manage Azure AD to create App registration, Users, Groups and Enterprise App Registration. +*Permissions needed*: ability to create and deploy to an azure resource group, a service principal, and grant the collaborator role to the service principal over the resource group; ability to create App registration, Users, Groups and Enterprise App Registration in Microsoft Entra ID. ### Setup and Deployment -#### Azure AD for Authentication +#### Microsoft Entra ID for Authentication -Before creating each of the stamp, follow [Authentication and Authorization](docs/AUTH.md) to create a center Azure AD Tenant first. +Before creating each of the stamp, follow [Authentication and Authorization](docs/AUTH.md) to create a center Microsoft Entra Tenant first. The center Tenant will be used by the API app to check authentication and authorization. @@ -82,7 +81,7 @@ The center Tenant will be used by the API app to check authentication and author - With the center tenant setup, the sample will already be able to work as a stamp serving a single tenant (like the "stamp2" in the Architecture). In this case, Tenant D and the center Tenant are the same Tenant. Test user 2 should be added to the center Tenant (which is also Tenant D). - Multi-Tenants Stamps - - For creating a multi-tenants stamp (like "stamp1" and "stamp3"), Azure AD Tenants besides the center Tenant should also be created and the test users under them should be added to the center Tenant as guest users ([Azure AD - Add guest users](https://docs.microsoft.com/en-us/azure/active-directory/external-identities/b2b-quickstart-add-guest-users-portal)). + - For creating a multi-tenants stamp (like "stamp1" and "stamp3"), Microsoft Entra Tenants besides the center Tenant should also be created and the test users under them should be added to the center Tenant as guest users ([Microsoft Entra ID - Add guest users](https://learn.microsoft.com/en-us/entra/external-id/b2b-quickstart-add-guest-users-portal)). - For example, if you want to do a tryout of "stamp1" in the Architecture, create a center Tenant first; the center Tenant can be used as any of the three Tenants A, B and C; then create the other two Tenants and add their test users to the center Tenant as guest users. @@ -170,7 +169,7 @@ Update following values in the `appsettings.json` with resources in the created - Cosmos DB connection string - Storage Account connection string -- Azure AD tenant and client ID +- Microsoft Entra tenant and client ID Change directory to **.\api\WebApi\\** and run command `dotnet run`. diff --git a/e2e_samples/deployment_stamps/api/.gitignore b/archive/e2e_samples/deployment_stamps/api/.gitignore similarity index 100% rename from e2e_samples/deployment_stamps/api/.gitignore rename to archive/e2e_samples/deployment_stamps/api/.gitignore diff --git a/e2e_samples/deployment_stamps/api/WebApi.sln b/archive/e2e_samples/deployment_stamps/api/WebApi.sln similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi.sln rename to archive/e2e_samples/deployment_stamps/api/WebApi.sln diff --git a/e2e_samples/deployment_stamps/api/WebApi/Controllers/ExceptionController.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Controllers/ExceptionController.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Controllers/ExceptionController.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Controllers/ExceptionController.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Controllers/TelemetriesController.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Controllers/TelemetriesController.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Controllers/TelemetriesController.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Controllers/TelemetriesController.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/AuthorizeByTenantIdAttribute.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/AuthorizeByTenantIdAttribute.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/AuthorizeByTenantIdAttribute.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/AuthorizeByTenantIdAttribute.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/ValidateDeviceAttribute.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/ValidateDeviceAttribute.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/ValidateDeviceAttribute.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/CustomAttributes/ValidateDeviceAttribute.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Filters/HttpRequestExceptionFilter.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Filters/HttpRequestExceptionFilter.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Filters/HttpRequestExceptionFilter.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Filters/HttpRequestExceptionFilter.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Filters/ValidateDeviceFilter.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Filters/ValidateDeviceFilter.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Filters/ValidateDeviceFilter.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Filters/ValidateDeviceFilter.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/CosmosContext.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/CosmosContext.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/CosmosContext.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/CosmosContext.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/CustomAttributes/GuidFormatAttributes.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/CustomAttributes/GuidFormatAttributes.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/CustomAttributes/GuidFormatAttributes.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/CustomAttributes/GuidFormatAttributes.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/Device.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/Device.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/Device.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/Device.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/DeviceInfo.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/DeviceInfo.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/DeviceInfo.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/DeviceInfo.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/Telemetry.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/Telemetry.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/Telemetry.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/Telemetry.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Models/TelemetryEntity.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Models/TelemetryEntity.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Models/TelemetryEntity.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Models/TelemetryEntity.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/PathHandlers/TenantIdHandler.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/PathHandlers/TenantIdHandler.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/PathHandlers/TenantIdHandler.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/PathHandlers/TenantIdHandler.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Program.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Program.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Program.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Program.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Properties/launchSettings.json b/archive/e2e_samples/deployment_stamps/api/WebApi/Properties/launchSettings.json similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Properties/launchSettings.json rename to archive/e2e_samples/deployment_stamps/api/WebApi/Properties/launchSettings.json diff --git a/e2e_samples/deployment_stamps/api/WebApi/Repositories/CosmosRepository.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/CosmosRepository.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Repositories/CosmosRepository.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/CosmosRepository.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Repositories/IRepository.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/IRepository.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Repositories/IRepository.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/IRepository.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Repositories/RepositoryConstructor.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/RepositoryConstructor.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Repositories/RepositoryConstructor.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/RepositoryConstructor.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Repositories/TableTelemetryRepository.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/TableTelemetryRepository.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Repositories/TableTelemetryRepository.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Repositories/TableTelemetryRepository.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/Startup.cs b/archive/e2e_samples/deployment_stamps/api/WebApi/Startup.cs similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/Startup.cs rename to archive/e2e_samples/deployment_stamps/api/WebApi/Startup.cs diff --git a/e2e_samples/deployment_stamps/api/WebApi/WebApi.csproj b/archive/e2e_samples/deployment_stamps/api/WebApi/WebApi.csproj similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/WebApi.csproj rename to archive/e2e_samples/deployment_stamps/api/WebApi/WebApi.csproj diff --git a/e2e_samples/deployment_stamps/api/WebApi/appsettings.json b/archive/e2e_samples/deployment_stamps/api/WebApi/appsettings.json similarity index 100% rename from e2e_samples/deployment_stamps/api/WebApi/appsettings.json rename to archive/e2e_samples/deployment_stamps/api/WebApi/appsettings.json diff --git a/e2e_samples/deployment_stamps/docs/.images/architecture-without-routing.JPG b/archive/e2e_samples/deployment_stamps/docs/.images/architecture-without-routing.JPG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/architecture-without-routing.JPG rename to archive/e2e_samples/deployment_stamps/docs/.images/architecture-without-routing.JPG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token1.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token1.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token1.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token1.PNG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token2.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token2.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token2.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token2.PNG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token3.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token3.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token3.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token3.PNG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token4.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token4.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token4.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token4.PNG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token5.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token5.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token5.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token5.PNG diff --git a/e2e_samples/deployment_stamps/docs/.images/postman-token6.PNG b/archive/e2e_samples/deployment_stamps/docs/.images/postman-token6.PNG similarity index 100% rename from e2e_samples/deployment_stamps/docs/.images/postman-token6.PNG rename to archive/e2e_samples/deployment_stamps/docs/.images/postman-token6.PNG diff --git a/e2e_samples/deployment_stamps/docs/AUTH.md b/archive/e2e_samples/deployment_stamps/docs/AUTH.md similarity index 78% rename from e2e_samples/deployment_stamps/docs/AUTH.md rename to archive/e2e_samples/deployment_stamps/docs/AUTH.md index 616c5011d..e2ef1a145 100644 --- a/e2e_samples/deployment_stamps/docs/AUTH.md +++ b/archive/e2e_samples/deployment_stamps/docs/AUTH.md @@ -1,8 +1,8 @@ # Authentication and Authorization -This sample uses Azure AD as identity provider. You need to: +This sample uses Microsoft Entra ID as identity provider. You need to: -- Provision Azure AD (or use existing one) +- Provision Microsoft Entra tenant (or use existing one) - Add users and groups - Register an application - Setup authentication @@ -11,9 +11,9 @@ This sample uses Azure AD as identity provider. You need to: - Setup API permission - Setup Users and groups in Enterprise Application -## Provision Azure AD +## Provision Microsoft Entra tenant -If you don't have any Azure AD yet or need to create new one for testing, follow [Create a new tenant in Azure AD](https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/active-directory-access-create-new-tenant) to provision one. +If you don't have any Microsoft Entra tenant yet or need to create new one for testing, follow [Create a new tenant in Microsoft Entra ID](https://learn.microsoft.com/en-us/entra/fundamentals/create-new-tenant) to provision one. ## Add users and groups @@ -21,7 +21,7 @@ If you don't have any Azure AD yet or need to create new one for testing, follow To test the application, you need at least one user. You can use your own account or create new one. -To create a new user, follow [Add or delete users using Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/add-users-azure-active-directory). +To create a new user, follow [Add or delete users using Microsoft Entra ID](https://learn.microsoft.com/en-us/entra/fundamentals/add-users). ### Groups @@ -32,13 +32,13 @@ To test the application, you need two groups. You can name them as you want. -To create a new Group, follow [Create a basic group and add members using Azure Active Directory](https://docs.microsoft.com/en-us/azure/active-directory/fundamentals/active-directory-groups-create-azure-portal#create-a-basic-group-and-add-members). +To create a new Group, follow [Create a basic group and add members using Microsoft Entra ID](https://learn.microsoft.com/en-us/entra/fundamentals/how-to-manage-groups#create-a-basic-group-and-add-members). ## Register an application Follow the steps below to register new application. -1. Go to "App registrations" menu in Azure AD portal. +1. Go to "App registrations" menu in Microsoft Entra admin center. 1. Click "New registration". @@ -91,7 +91,7 @@ The application permission are used for integration test account. Scope for thes Once you register an application, you can map app role and groups. -1. Go to Azure AD portal and select "Enterprise Applications". +1. Go to Microsoft Entra admin center and select "Enterprise Applications". 1. Select created application from the list. 1. Select "Users and groups" menu. 1. Click "Add user/group". @@ -103,7 +103,7 @@ Once you register an application, you can map app role and groups. Once you setup group/app role mapping, you can now add users into groups. -1. Go to Azure Portal and select groups. +1. Go to Microsoft Entra admin center and select groups. 1. Select admin group and assign any users. 1. Also assign registered application to the group so that an integration test can use the application id as user. (You can create separate application for this purpose if you want.) 1. Repeat the step for user group. diff --git a/e2e_samples/deployment_stamps/docs/POSTMAN.md b/archive/e2e_samples/deployment_stamps/docs/POSTMAN.md similarity index 100% rename from e2e_samples/deployment_stamps/docs/POSTMAN.md rename to archive/e2e_samples/deployment_stamps/docs/POSTMAN.md diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.gitignore b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.gitignore similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/.gitignore rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.gitignore diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.local.settings.json b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.local.settings.json similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/.local.settings.json rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/.local.settings.json diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/CustomAttributes/GuidFormatAttributes.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/CustomAttributes/GuidFormatAttributes.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/CustomAttributes/GuidFormatAttributes.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/CustomAttributes/GuidFormatAttributes.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/TableStorageConfig.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/TableStorageConfig.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/TableStorageConfig.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/TableStorageConfig.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/Telemetry.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/Telemetry.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/Telemetry.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Models/Telemetry.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Program.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Program.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Program.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Program.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/ITableClientService.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/ITableClientService.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/ITableClientService.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/ITableClientService.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/TableClientService.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/TableClientService.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/TableClientService.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/Services/TableClientService.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/SplitAndSaveFunc.cs b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/SplitAndSaveFunc.cs similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/SplitAndSaveFunc.cs rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/SplitAndSaveFunc.cs diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/TelemetryProcessor.csproj b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/TelemetryProcessor.csproj similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/TelemetryProcessor.csproj rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/TelemetryProcessor.csproj diff --git a/e2e_samples/deployment_stamps/functions/TelemetryProcessor/host.json b/archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/host.json similarity index 100% rename from e2e_samples/deployment_stamps/functions/TelemetryProcessor/host.json rename to archive/e2e_samples/deployment_stamps/functions/TelemetryProcessor/host.json diff --git a/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.json b/archive/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.json similarity index 100% rename from e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.json rename to archive/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.json diff --git a/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.parameters.json b/archive/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.parameters.json similarity index 100% rename from e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.parameters.json rename to archive/e2e_samples/deployment_stamps/infra/stamp/arm-templates/azuredeploy.parameters.json diff --git a/e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml b/archive/e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml similarity index 96% rename from e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml rename to archive/e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml index d68a894c0..960a7ab0f 100644 --- a/e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml +++ b/archive/e2e_samples/deployment_stamps/pipelines/create-one-stamp.yml @@ -20,7 +20,7 @@ parameters: displayName: Tenant Id (id of the center tenant) type: string - name: client_id - displayName: Client Id (client/application id of the Azure AD app registration to handle authentication) + displayName: Client Id (client/application id of the Microsoft Entra ID app registration to handle authentication) type: string - name: stamp_id displayName: Stamp Id (tag to filter resources) diff --git a/e2e_samples/mdw_governance/README.md b/archive/e2e_samples/mdw_governance/README.md similarity index 98% rename from e2e_samples/mdw_governance/README.md rename to archive/e2e_samples/mdw_governance/README.md index f8cb99bdf..5c7211bf5 100644 --- a/e2e_samples/mdw_governance/README.md +++ b/archive/e2e_samples/mdw_governance/README.md @@ -103,7 +103,7 @@ Each environment has an identical set of resources - **resourcePrefix** - this prefix will be appended to all resource names to make them unique (notice: lower-case letters only, no special characters allowed - **location** - location where resources should be deployed - **locationFormatted** - full name of location where resources should be deployed - - **purviewAdmins** - an [objectID](https://docs.microsoft.com/en-us/azure/marketplace/find-tenant-object-id) of the user/user group to be assigned admin rights to Purview (e.g. your Azure AD objectID). To find the object id of the current logged in user in `az cli`, run `az ad signed-in-user show --output json | jq -r '.objectId'` + - **purviewAdmins** - an [objectID](https://docs.microsoft.com/en-us/azure/marketplace/find-tenant-object-id) of the user/user group to be assigned admin rights to Purview (e.g. your Microsoft Entra object ID). To find the object id of the current logged in user in `az cli`, run `az ad signed-in-user show --output json | jq -r '.objectId'` - **azureResourceManagerConnection** - name of the service connection (by default this is derived from resource group name e.g. "SC-My-Resource-Group") 9. Create a new pipeline from existing yml in Azure DevOps by selecting the repository and importing the `create-infrastructure.yml` YAML file (see [this post](https://stackoverflow.com/a/59067271) to learn how). 10. Run the `create-infrastructure.yml` pipeline. diff --git a/e2e_samples/mdw_governance/adf/_scripts/deploymentadf.ps1 b/archive/e2e_samples/mdw_governance/adf/_scripts/deploymentadf.ps1 similarity index 100% rename from e2e_samples/mdw_governance/adf/_scripts/deploymentadf.ps1 rename to archive/e2e_samples/mdw_governance/adf/_scripts/deploymentadf.ps1 diff --git a/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Anonymized_CSV.json b/archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Anonymized_CSV.json similarity index 100% rename from e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Anonymized_CSV.json rename to archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Anonymized_CSV.json diff --git a/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Bronze_CSV.json b/archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Bronze_CSV.json similarity index 100% rename from e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Bronze_CSV.json rename to archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Bronze_CSV.json diff --git a/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Source_CSV.json b/archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Source_CSV.json similarity index 100% rename from e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Source_CSV.json rename to archive/e2e_samples/mdw_governance/adf/dataset/ParkingSensors_Source_CSV.json diff --git a/e2e_samples/mdw_governance/adf/pipeline/IngestToBronze.json b/archive/e2e_samples/mdw_governance/adf/pipeline/IngestToBronze.json similarity index 100% rename from e2e_samples/mdw_governance/adf/pipeline/IngestToBronze.json rename to archive/e2e_samples/mdw_governance/adf/pipeline/IngestToBronze.json diff --git a/e2e_samples/mdw_governance/arm-templates/O365_connector.json b/archive/e2e_samples/mdw_governance/arm-templates/O365_connector.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/O365_connector.json rename to archive/e2e_samples/mdw_governance/arm-templates/O365_connector.json diff --git a/e2e_samples/mdw_governance/arm-templates/O365_connector.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/O365_connector.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/O365_connector.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/O365_connector.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/app_insights.json b/archive/e2e_samples/mdw_governance/arm-templates/app_insights.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/app_insights.json rename to archive/e2e_samples/mdw_governance/arm-templates/app_insights.json diff --git a/e2e_samples/mdw_governance/arm-templates/app_insights.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/app_insights.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/app_insights.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/app_insights.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.json b/archive/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.json rename to archive/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.json diff --git a/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/azure_function_datalakelogs.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/data_factory.json b/archive/e2e_samples/mdw_governance/arm-templates/data_factory.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/data_factory.json rename to archive/e2e_samples/mdw_governance/arm-templates/data_factory.json diff --git a/e2e_samples/mdw_governance/arm-templates/data_factory.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/data_factory.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/data_factory.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/data_factory.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/data_lake.json b/archive/e2e_samples/mdw_governance/arm-templates/data_lake.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/data_lake.json rename to archive/e2e_samples/mdw_governance/arm-templates/data_lake.json diff --git a/e2e_samples/mdw_governance/arm-templates/data_lake.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/data_lake.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/data_lake.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/data_lake.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/databricks.json b/archive/e2e_samples/mdw_governance/arm-templates/databricks.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/databricks.json rename to archive/e2e_samples/mdw_governance/arm-templates/databricks.json diff --git a/e2e_samples/mdw_governance/arm-templates/databricks.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/databricks.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/databricks.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/databricks.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/email_logic_app.json b/archive/e2e_samples/mdw_governance/arm-templates/email_logic_app.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/email_logic_app.json rename to archive/e2e_samples/mdw_governance/arm-templates/email_logic_app.json diff --git a/e2e_samples/mdw_governance/arm-templates/email_logic_app.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/email_logic_app.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/email_logic_app.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/email_logic_app.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/key_vault.json b/archive/e2e_samples/mdw_governance/arm-templates/key_vault.json similarity index 95% rename from e2e_samples/mdw_governance/arm-templates/key_vault.json rename to archive/e2e_samples/mdw_governance/arm-templates/key_vault.json index 0abbee47f..396735164 100644 --- a/e2e_samples/mdw_governance/arm-templates/key_vault.json +++ b/archive/e2e_samples/mdw_governance/arm-templates/key_vault.json @@ -36,7 +36,7 @@ "type": "string", "defaultValue": "[subscription().tenantId]", "metadata": { - "description": "Specifies the Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." + "description": "Specifies the Microsoft Entra tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." } }, "logAnalyticsName": { diff --git a/e2e_samples/mdw_governance/arm-templates/key_vault.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/key_vault.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/key_vault.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/key_vault.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/log_analytics.json b/archive/e2e_samples/mdw_governance/arm-templates/log_analytics.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/log_analytics.json rename to archive/e2e_samples/mdw_governance/arm-templates/log_analytics.json diff --git a/e2e_samples/mdw_governance/arm-templates/log_analytics.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/log_analytics.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/log_analytics.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/log_analytics.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/private_endpoint.json b/archive/e2e_samples/mdw_governance/arm-templates/private_endpoint.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/private_endpoint.json rename to archive/e2e_samples/mdw_governance/arm-templates/private_endpoint.json diff --git a/e2e_samples/mdw_governance/arm-templates/private_endpoint.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/private_endpoint.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/private_endpoint.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/private_endpoint.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/purview.json b/archive/e2e_samples/mdw_governance/arm-templates/purview.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/purview.json rename to archive/e2e_samples/mdw_governance/arm-templates/purview.json diff --git a/e2e_samples/mdw_governance/arm-templates/purview.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/purview.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/purview.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/purview.parameters.json diff --git a/e2e_samples/mdw_governance/arm-templates/vnet.json b/archive/e2e_samples/mdw_governance/arm-templates/vnet.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/vnet.json rename to archive/e2e_samples/mdw_governance/arm-templates/vnet.json diff --git a/e2e_samples/mdw_governance/arm-templates/vnet.parameters.json b/archive/e2e_samples/mdw_governance/arm-templates/vnet.parameters.json similarity index 100% rename from e2e_samples/mdw_governance/arm-templates/vnet.parameters.json rename to archive/e2e_samples/mdw_governance/arm-templates/vnet.parameters.json diff --git a/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv b/archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv similarity index 100% rename from e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv rename to archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv diff --git a/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json b/archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json similarity index 100% rename from e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json rename to archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json diff --git a/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv b/archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv similarity index 100% rename from e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv rename to archive/e2e_samples/mdw_governance/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv diff --git a/e2e_samples/mdw_governance/data/raw_data/README.md b/archive/e2e_samples/mdw_governance/data/raw_data/README.md similarity index 100% rename from e2e_samples/mdw_governance/data/raw_data/README.md rename to archive/e2e_samples/mdw_governance/data/raw_data/README.md diff --git a/e2e_samples/mdw_governance/data/seed/dim_date.csv b/archive/e2e_samples/mdw_governance/data/seed/dim_date.csv similarity index 100% rename from e2e_samples/mdw_governance/data/seed/dim_date.csv rename to archive/e2e_samples/mdw_governance/data/seed/dim_date.csv diff --git a/e2e_samples/mdw_governance/data/seed/dim_time.csv b/archive/e2e_samples/mdw_governance/data/seed/dim_time.csv similarity index 100% rename from e2e_samples/mdw_governance/data/seed/dim_time.csv rename to archive/e2e_samples/mdw_governance/data/seed/dim_time.csv diff --git a/e2e_samples/mdw_governance/databricks/config/cluster.config.json b/archive/e2e_samples/mdw_governance/databricks/config/cluster.config.json similarity index 100% rename from e2e_samples/mdw_governance/databricks/config/cluster.config.json rename to archive/e2e_samples/mdw_governance/databricks/config/cluster.config.json diff --git a/e2e_samples/mdw_governance/databricks/config/run.setup.config.json b/archive/e2e_samples/mdw_governance/databricks/config/run.setup.config.json similarity index 100% rename from e2e_samples/mdw_governance/databricks/config/run.setup.config.json rename to archive/e2e_samples/mdw_governance/databricks/config/run.setup.config.json diff --git a/e2e_samples/mdw_governance/databricks/notebooks/00_setup.py b/archive/e2e_samples/mdw_governance/databricks/notebooks/00_setup.py similarity index 100% rename from e2e_samples/mdw_governance/databricks/notebooks/00_setup.py rename to archive/e2e_samples/mdw_governance/databricks/notebooks/00_setup.py diff --git a/e2e_samples/mdw_governance/databricks/notebooks/01_transform_presidio.py b/archive/e2e_samples/mdw_governance/databricks/notebooks/01_transform_presidio.py similarity index 100% rename from e2e_samples/mdw_governance/databricks/notebooks/01_transform_presidio.py rename to archive/e2e_samples/mdw_governance/databricks/notebooks/01_transform_presidio.py diff --git a/e2e_samples/mdw_governance/databricks/setup/startup.sh b/archive/e2e_samples/mdw_governance/databricks/setup/startup.sh similarity index 100% rename from e2e_samples/mdw_governance/databricks/setup/startup.sh rename to archive/e2e_samples/mdw_governance/databricks/setup/startup.sh diff --git a/e2e_samples/mdw_governance/docs/images/architecture.png b/archive/e2e_samples/mdw_governance/docs/images/architecture.png similarity index 100% rename from e2e_samples/mdw_governance/docs/images/architecture.png rename to archive/e2e_samples/mdw_governance/docs/images/architecture.png diff --git a/e2e_samples/mdw_governance/docs/pipelines-and-scripts.md b/archive/e2e_samples/mdw_governance/docs/pipelines-and-scripts.md similarity index 100% rename from e2e_samples/mdw_governance/docs/pipelines-and-scripts.md rename to archive/e2e_samples/mdw_governance/docs/pipelines-and-scripts.md diff --git a/e2e_samples/mdw_governance/pipelines/create-infrastructure.yml b/archive/e2e_samples/mdw_governance/pipelines/create-infrastructure.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/create-infrastructure.yml rename to archive/e2e_samples/mdw_governance/pipelines/create-infrastructure.yml diff --git a/e2e_samples/mdw_governance/pipelines/jobs/create-data-lake-log-sender-job.yml b/archive/e2e_samples/mdw_governance/pipelines/jobs/create-data-lake-log-sender-job.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/jobs/create-data-lake-log-sender-job.yml rename to archive/e2e_samples/mdw_governance/pipelines/jobs/create-data-lake-log-sender-job.yml diff --git a/e2e_samples/mdw_governance/pipelines/jobs/create-email-sender-job.yml b/archive/e2e_samples/mdw_governance/pipelines/jobs/create-email-sender-job.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/jobs/create-email-sender-job.yml rename to archive/e2e_samples/mdw_governance/pipelines/jobs/create-email-sender-job.yml diff --git a/e2e_samples/mdw_governance/pipelines/jobs/create-infrastructure-job.yml b/archive/e2e_samples/mdw_governance/pipelines/jobs/create-infrastructure-job.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/jobs/create-infrastructure-job.yml rename to archive/e2e_samples/mdw_governance/pipelines/jobs/create-infrastructure-job.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/O365_connector.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/O365_connector.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/O365_connector.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/O365_connector.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/app-insights.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/app-insights.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/app-insights.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/app-insights.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/azure-function-datalakelogs.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/azure-function-datalakelogs.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/azure-function-datalakelogs.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/azure-function-datalakelogs.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/data-factory.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/data-factory.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/data-factory.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/data-factory.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/data-lake.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/data-lake.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/data-lake.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/data-lake.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/databricks.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/databricks.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/databricks.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/databricks.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/df-email-logic-app.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/df-email-logic-app.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/df-email-logic-app.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/df-email-logic-app.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/key-vault.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/key-vault.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/key-vault.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/key-vault.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/log-analytics.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/log-analytics.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/log-analytics.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/log-analytics.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/purview.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/purview.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/purview.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/purview.yml diff --git a/e2e_samples/mdw_governance/pipelines/templates/vnet.yml b/archive/e2e_samples/mdw_governance/pipelines/templates/vnet.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/templates/vnet.yml rename to archive/e2e_samples/mdw_governance/pipelines/templates/vnet.yml diff --git a/e2e_samples/mdw_governance/pipelines/variables/dev-environment.yml b/archive/e2e_samples/mdw_governance/pipelines/variables/dev-environment.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/variables/dev-environment.yml rename to archive/e2e_samples/mdw_governance/pipelines/variables/dev-environment.yml diff --git a/e2e_samples/mdw_governance/pipelines/variables/prod-environment.yml b/archive/e2e_samples/mdw_governance/pipelines/variables/prod-environment.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/variables/prod-environment.yml rename to archive/e2e_samples/mdw_governance/pipelines/variables/prod-environment.yml diff --git a/e2e_samples/mdw_governance/pipelines/variables/test-environment.yml b/archive/e2e_samples/mdw_governance/pipelines/variables/test-environment.yml similarity index 100% rename from e2e_samples/mdw_governance/pipelines/variables/test-environment.yml rename to archive/e2e_samples/mdw_governance/pipelines/variables/test-environment.yml diff --git a/e2e_samples/mdw_governance/scripts/agent/Set-AgentTools.ps1 b/archive/e2e_samples/mdw_governance/scripts/agent/Set-AgentTools.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/agent/Set-AgentTools.ps1 rename to archive/e2e_samples/mdw_governance/scripts/agent/Set-AgentTools.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/ADF-Pre-And-Post-Deploy.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/ADF-Pre-And-Post-Deploy.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/ADF-Pre-And-Post-Deploy.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/ADF-Pre-And-Post-Deploy.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Databricks-Post-Deploy.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Databricks-Post-Deploy.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Databricks-Post-Deploy.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Databricks-Post-Deploy.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-ADFLinkedService.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-ADFLinkedService.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-ADFLinkedService.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-ADFLinkedService.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-EnvironmentVariables.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-EnvironmentVariables.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-EnvironmentVariables.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-EnvironmentVariables.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-PurviewADFConnection.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewADFConnection.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-PurviewADFConnection.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewADFConnection.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-PurviewADLSource.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewADLSource.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-PurviewADLSource.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewADLSource.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-PurviewDataScan.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewDataScan.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-PurviewDataScan.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-PurviewDataScan.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/New-StorageContainerFolders.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/New-StorageContainerFolders.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/New-StorageContainerFolders.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/New-StorageContainerFolders.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Set-ADL-RBAC.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Set-ADL-RBAC.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Set-ADL-RBAC.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Set-ADL-RBAC.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Set-AdlLoggingProperties.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Set-AdlLoggingProperties.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Set-AdlLoggingProperties.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Set-AdlLoggingProperties.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Set-AdlRoleAssignmentForLogSenderFunction.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Set-AdlRoleAssignmentForLogSenderFunction.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Set-AdlRoleAssignmentForLogSenderFunction.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Set-AdlRoleAssignmentForLogSenderFunction.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Set-AuthToken.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Set-AuthToken.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Set-AuthToken.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Set-AuthToken.ps1 diff --git a/e2e_samples/mdw_governance/scripts/environment/Set-SPNOwnerToPurview.ps1 b/archive/e2e_samples/mdw_governance/scripts/environment/Set-SPNOwnerToPurview.ps1 similarity index 100% rename from e2e_samples/mdw_governance/scripts/environment/Set-SPNOwnerToPurview.ps1 rename to archive/e2e_samples/mdw_governance/scripts/environment/Set-SPNOwnerToPurview.ps1 diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.funcignore b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.funcignore similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.funcignore rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.funcignore diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.gitignore b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.gitignore similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.gitignore rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/.gitignore diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/function.json b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/function.json similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/function.json rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/function.json diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/run.ps1 b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/run.ps1 similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/run.ps1 rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/DataLakeLogsToLogAnalyticsFunction/run.ps1 diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/host.json b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/host.json similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/host.json rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/host.json diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/profile.ps1 b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/profile.ps1 similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/profile.ps1 rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/profile.ps1 diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/proxies.json b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/proxies.json similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/proxies.json rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/proxies.json diff --git a/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/requirements.psd1 b/archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/requirements.psd1 similarity index 100% rename from e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/requirements.psd1 rename to archive/e2e_samples/mdw_governance/src/DataLakeLogsToLogAnalyticsFunction/requirements.psd1 diff --git a/e2e_samples/temperature_events/README.md b/archive/e2e_samples/temperature_events/README.md similarity index 99% rename from e2e_samples/temperature_events/README.md rename to archive/e2e_samples/temperature_events/README.md index 47afda5d2..556fedc5b 100644 --- a/e2e_samples/temperature_events/README.md +++ b/archive/e2e_samples/temperature_events/README.md @@ -88,7 +88,7 @@ There are 3 major steps to running the sample. Follow each sub-page in order: - Accounts - [Github account](https://github.com/) [Optional] - - [Azure Account](https://azure.microsoft.com/en-au/free/) + - [Azure Account](https://azure.microsoft.com/en-us/free/) - *Permissions needed*: ability to create and deploy to an azure [resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview), a [service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/app-objects-and-service-principals), and grant the [collaborator role](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) to the service principal over the resource group. - [Azure DevOps Project](https://azure.microsoft.com/en-us/products/devops/) - *Permissions needed*: ability to create [service connections](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml), [pipelines](https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/pipelines-get-started?view=azure-devops&tabs=yaml) and [variable groups](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/variable-groups?view=azure-devops&tabs=yaml). diff --git a/e2e_samples/temperature_events/devops/azure-pipelines-ci-artifacts.yml b/archive/e2e_samples/temperature_events/devops/azure-pipelines-ci-artifacts.yml similarity index 100% rename from e2e_samples/temperature_events/devops/azure-pipelines-ci-artifacts.yml rename to archive/e2e_samples/temperature_events/devops/azure-pipelines-ci-artifacts.yml diff --git a/e2e_samples/temperature_events/functions/.config/dotnet-tools.json b/archive/e2e_samples/temperature_events/functions/.config/dotnet-tools.json similarity index 100% rename from e2e_samples/temperature_events/functions/.config/dotnet-tools.json rename to archive/e2e_samples/temperature_events/functions/.config/dotnet-tools.json diff --git a/e2e_samples/temperature_events/functions/.editorconfig b/archive/e2e_samples/temperature_events/functions/.editorconfig similarity index 100% rename from e2e_samples/temperature_events/functions/.editorconfig rename to archive/e2e_samples/temperature_events/functions/.editorconfig diff --git a/e2e_samples/temperature_events/functions/README.md b/archive/e2e_samples/temperature_events/functions/README.md similarity index 100% rename from e2e_samples/temperature_events/functions/README.md rename to archive/e2e_samples/temperature_events/functions/README.md diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/DeviceIdFilterTest.cs b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/DeviceIdFilterTest.cs similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/DeviceIdFilterTest.cs rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/DeviceIdFilterTest.cs diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureEventsProj.Test.csproj b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureEventsProj.Test.csproj similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureEventsProj.Test.csproj rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureEventsProj.Test.csproj diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureFilterTest.cs b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureFilterTest.cs similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureFilterTest.cs rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj.Test/TemperatureFilterTest.cs diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/.gitignore b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/.gitignore similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/.gitignore rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/.gitignore diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/DeviceIdFilter.cs b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/DeviceIdFilter.cs similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/DeviceIdFilter.cs rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/DeviceIdFilter.cs diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/Models/DeviceEvent.cs b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/Models/DeviceEvent.cs similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/Models/DeviceEvent.cs rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/Models/DeviceEvent.cs diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureEventsProj.csproj b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureEventsProj.csproj similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureEventsProj.csproj rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureEventsProj.csproj diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureFilter.cs b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureFilter.cs similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureFilter.cs rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/TemperatureFilter.cs diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/host.json b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/host.json similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/host.json rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/host.json diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsProj/local.settings.template.json b/archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/local.settings.template.json similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsProj/local.settings.template.json rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsProj/local.settings.template.json diff --git a/e2e_samples/temperature_events/functions/TemperatureEventsSln.sln b/archive/e2e_samples/temperature_events/functions/TemperatureEventsSln.sln similarity index 100% rename from e2e_samples/temperature_events/functions/TemperatureEventsSln.sln rename to archive/e2e_samples/temperature_events/functions/TemperatureEventsSln.sln diff --git a/e2e_samples/temperature_events/functions/host.json b/archive/e2e_samples/temperature_events/functions/host.json similarity index 100% rename from e2e_samples/temperature_events/functions/host.json rename to archive/e2e_samples/temperature_events/functions/host.json diff --git a/e2e_samples/temperature_events/images/application_map.png b/archive/e2e_samples/temperature_events/images/application_map.png similarity index 100% rename from e2e_samples/temperature_events/images/application_map.png rename to archive/e2e_samples/temperature_events/images/application_map.png diff --git a/e2e_samples/temperature_events/images/azure_pipeline_setup.png b/archive/e2e_samples/temperature_events/images/azure_pipeline_setup.png similarity index 100% rename from e2e_samples/temperature_events/images/azure_pipeline_setup.png rename to archive/e2e_samples/temperature_events/images/azure_pipeline_setup.png diff --git a/e2e_samples/temperature_events/images/azure_pipeline_var_group.png b/archive/e2e_samples/temperature_events/images/azure_pipeline_var_group.png similarity index 100% rename from e2e_samples/temperature_events/images/azure_pipeline_var_group.png rename to archive/e2e_samples/temperature_events/images/azure_pipeline_var_group.png diff --git a/e2e_samples/temperature_events/images/correlated_logs.png b/archive/e2e_samples/temperature_events/images/correlated_logs.png similarity index 100% rename from e2e_samples/temperature_events/images/correlated_logs.png rename to archive/e2e_samples/temperature_events/images/correlated_logs.png diff --git a/e2e_samples/temperature_events/images/e2e_transaction_detail_parallel.png b/archive/e2e_samples/temperature_events/images/e2e_transaction_detail_parallel.png similarity index 100% rename from e2e_samples/temperature_events/images/e2e_transaction_detail_parallel.png rename to archive/e2e_samples/temperature_events/images/e2e_transaction_detail_parallel.png diff --git a/e2e_samples/temperature_events/images/e2e_transaction_detail_sequential.png b/archive/e2e_samples/temperature_events/images/e2e_transaction_detail_sequential.png similarity index 100% rename from e2e_samples/temperature_events/images/e2e_transaction_detail_sequential.png rename to archive/e2e_samples/temperature_events/images/e2e_transaction_detail_sequential.png diff --git a/e2e_samples/temperature_events/images/function-deviceidfilter.png b/archive/e2e_samples/temperature_events/images/function-deviceidfilter.png similarity index 100% rename from e2e_samples/temperature_events/images/function-deviceidfilter.png rename to archive/e2e_samples/temperature_events/images/function-deviceidfilter.png diff --git a/e2e_samples/temperature_events/images/function-temperaturefilter.png b/archive/e2e_samples/temperature_events/images/function-temperaturefilter.png similarity index 100% rename from e2e_samples/temperature_events/images/function-temperaturefilter.png rename to archive/e2e_samples/temperature_events/images/function-temperaturefilter.png diff --git a/e2e_samples/temperature_events/images/function_instances_from_logs.png b/archive/e2e_samples/temperature_events/images/function_instances_from_logs.png similarity index 100% rename from e2e_samples/temperature_events/images/function_instances_from_logs.png rename to archive/e2e_samples/temperature_events/images/function_instances_from_logs.png diff --git a/e2e_samples/temperature_events/images/function_instances_live_metrics.png b/archive/e2e_samples/temperature_events/images/function_instances_live_metrics.png similarity index 100% rename from e2e_samples/temperature_events/images/function_instances_live_metrics.png rename to archive/e2e_samples/temperature_events/images/function_instances_live_metrics.png diff --git a/e2e_samples/temperature_events/images/loadtesting_git_import.png b/archive/e2e_samples/temperature_events/images/loadtesting_git_import.png similarity index 100% rename from e2e_samples/temperature_events/images/loadtesting_git_import.png rename to archive/e2e_samples/temperature_events/images/loadtesting_git_import.png diff --git a/e2e_samples/temperature_events/images/loadtesting_git_import_url.png b/archive/e2e_samples/temperature_events/images/loadtesting_git_import_url.png similarity index 100% rename from e2e_samples/temperature_events/images/loadtesting_git_import_url.png rename to archive/e2e_samples/temperature_events/images/loadtesting_git_import_url.png diff --git a/e2e_samples/temperature_events/images/observability_eventhubmetrics.png b/archive/e2e_samples/temperature_events/images/observability_eventhubmetrics.png similarity index 100% rename from e2e_samples/temperature_events/images/observability_eventhubmetrics.png rename to archive/e2e_samples/temperature_events/images/observability_eventhubmetrics.png diff --git a/e2e_samples/temperature_events/images/observability_portaldashboard.png b/archive/e2e_samples/temperature_events/images/observability_portaldashboard.png similarity index 100% rename from e2e_samples/temperature_events/images/observability_portaldashboard.png rename to archive/e2e_samples/temperature_events/images/observability_portaldashboard.png diff --git a/e2e_samples/temperature_events/images/temperature-events-architecture.png b/archive/e2e_samples/temperature_events/images/temperature-events-architecture.png similarity index 100% rename from e2e_samples/temperature_events/images/temperature-events-architecture.png rename to archive/e2e_samples/temperature_events/images/temperature-events-architecture.png diff --git a/e2e_samples/temperature_events/images/var_group_secrets.png b/archive/e2e_samples/temperature_events/images/var_group_secrets.png similarity index 100% rename from e2e_samples/temperature_events/images/var_group_secrets.png rename to archive/e2e_samples/temperature_events/images/var_group_secrets.png diff --git a/e2e_samples/temperature_events/infra/README.md b/archive/e2e_samples/temperature_events/infra/README.md similarity index 100% rename from e2e_samples/temperature_events/infra/README.md rename to archive/e2e_samples/temperature_events/infra/README.md diff --git a/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline-test.yml b/archive/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline-test.yml similarity index 100% rename from e2e_samples/temperature_events/infra/infra-ado-ci-pipeline-test.yml rename to archive/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline-test.yml diff --git a/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline.yml b/archive/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline.yml similarity index 100% rename from e2e_samples/temperature_events/infra/infra-ado-ci-pipeline.yml rename to archive/e2e_samples/temperature_events/infra/infra-ado-ci-pipeline.yml diff --git a/e2e_samples/temperature_events/infra/infra-ado-pipeline-template.yml b/archive/e2e_samples/temperature_events/infra/infra-ado-pipeline-template.yml similarity index 100% rename from e2e_samples/temperature_events/infra/infra-ado-pipeline-template.yml rename to archive/e2e_samples/temperature_events/infra/infra-ado-pipeline-template.yml diff --git a/e2e_samples/temperature_events/infra/setup.sh b/archive/e2e_samples/temperature_events/infra/setup.sh similarity index 100% rename from e2e_samples/temperature_events/infra/setup.sh rename to archive/e2e_samples/temperature_events/infra/setup.sh diff --git a/e2e_samples/temperature_events/infra/terraform/live/dev/main.tf b/archive/e2e_samples/temperature_events/infra/terraform/live/dev/main.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/live/dev/main.tf rename to archive/e2e_samples/temperature_events/infra/terraform/live/dev/main.tf diff --git a/e2e_samples/temperature_events/infra/terraform/live/dev/variables.tf b/archive/e2e_samples/temperature_events/infra/terraform/live/dev/variables.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/live/dev/variables.tf rename to archive/e2e_samples/temperature_events/infra/terraform/live/dev/variables.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/main.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/main.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/eventhubs/main.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/main.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/outputs.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/outputs.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/eventhubs/outputs.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/outputs.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/variables.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/variables.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/eventhubs/variables.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/eventhubs/variables.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/functions/locals.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/functions/locals.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/functions/locals.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/functions/locals.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/functions/main.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/functions/main.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/functions/main.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/functions/main.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/functions/outputs.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/functions/outputs.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/functions/outputs.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/functions/outputs.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/functions/variables.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/functions/variables.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/functions/variables.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/functions/variables.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/services/locals.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/services/locals.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/services/locals.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/services/locals.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/services/main.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/services/main.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/services/main.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/services/main.tf diff --git a/e2e_samples/temperature_events/infra/terraform/modules/services/variables.tf b/archive/e2e_samples/temperature_events/infra/terraform/modules/services/variables.tf similarity index 100% rename from e2e_samples/temperature_events/infra/terraform/modules/services/variables.tf rename to archive/e2e_samples/temperature_events/infra/terraform/modules/services/variables.tf diff --git a/e2e_samples/temperature_events/loadtesting/IoTSimulator.ps1 b/archive/e2e_samples/temperature_events/loadtesting/IoTSimulator.ps1 similarity index 100% rename from e2e_samples/temperature_events/loadtesting/IoTSimulator.ps1 rename to archive/e2e_samples/temperature_events/loadtesting/IoTSimulator.ps1 diff --git a/e2e_samples/temperature_events/loadtesting/LoadTestCheckResult.ps1 b/archive/e2e_samples/temperature_events/loadtesting/LoadTestCheckResult.ps1 similarity index 100% rename from e2e_samples/temperature_events/loadtesting/LoadTestCheckResult.ps1 rename to archive/e2e_samples/temperature_events/loadtesting/LoadTestCheckResult.ps1 diff --git a/e2e_samples/temperature_events/loadtesting/README.md b/archive/e2e_samples/temperature_events/loadtesting/README.md similarity index 100% rename from e2e_samples/temperature_events/loadtesting/README.md rename to archive/e2e_samples/temperature_events/loadtesting/README.md diff --git a/e2e_samples/temperature_events/loadtesting/loadtest-pipeline.yml b/archive/e2e_samples/temperature_events/loadtesting/loadtest-pipeline.yml similarity index 100% rename from e2e_samples/temperature_events/loadtesting/loadtest-pipeline.yml rename to archive/e2e_samples/temperature_events/loadtesting/loadtest-pipeline.yml diff --git a/single_tech_samples/datafactory/sample1_cicd/README.md b/archive/single_tech_samples/adf_cicd/README.md similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/README.md rename to archive/single_tech_samples/adf_cicd/README.md diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/_scripts/deploymentadf.ps1 b/archive/single_tech_samples/adf_cicd/adf/_scripts/deploymentadf.ps1 similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/_scripts/deploymentadf.ps1 rename to archive/single_tech_samples/adf_cicd/adf/_scripts/deploymentadf.ps1 diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/dataset/ParkingSensors_Bronze_CSV.json b/archive/single_tech_samples/adf_cicd/adf/dataset/ParkingSensors_Bronze_CSV.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/dataset/ParkingSensors_Bronze_CSV.json rename to archive/single_tech_samples/adf_cicd/adf/dataset/ParkingSensors_Bronze_CSV.json diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/dataset/ParkingSensors_Source_CSV.json b/archive/single_tech_samples/adf_cicd/adf/dataset/ParkingSensors_Source_CSV.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/dataset/ParkingSensors_Source_CSV.json rename to archive/single_tech_samples/adf_cicd/adf/dataset/ParkingSensors_Source_CSV.json diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/linkedService/DataLakeStorage.json b/archive/single_tech_samples/adf_cicd/adf/linkedService/DataLakeStorage.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/linkedService/DataLakeStorage.json rename to archive/single_tech_samples/adf_cicd/adf/linkedService/DataLakeStorage.json diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/linkedService/KeyVault.json b/archive/single_tech_samples/adf_cicd/adf/linkedService/KeyVault.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/linkedService/KeyVault.json rename to archive/single_tech_samples/adf_cicd/adf/linkedService/KeyVault.json diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/linkedService/SourceDataStorage.json b/archive/single_tech_samples/adf_cicd/adf/linkedService/SourceDataStorage.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/linkedService/SourceDataStorage.json rename to archive/single_tech_samples/adf_cicd/adf/linkedService/SourceDataStorage.json diff --git a/single_tech_samples/datafactory/sample1_cicd/adf/pipeline/IngestToBronze.json b/archive/single_tech_samples/adf_cicd/adf/pipeline/IngestToBronze.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/adf/pipeline/IngestToBronze.json rename to archive/single_tech_samples/adf_cicd/adf/pipeline/IngestToBronze.json diff --git a/single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv b/archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv rename to archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.csv diff --git a/single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json b/archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json rename to archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors.json diff --git a/single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv b/archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv rename to archive/single_tech_samples/adf_cicd/data/raw_data/On-street_Parking_Bay_Sensors/On-street_Parking_Bay_Sensors_baylist.csv diff --git a/single_tech_samples/datafactory/sample1_cicd/data/raw_data/README.md b/archive/single_tech_samples/adf_cicd/data/raw_data/README.md similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/raw_data/README.md rename to archive/single_tech_samples/adf_cicd/data/raw_data/README.md diff --git a/single_tech_samples/datafactory/sample1_cicd/data/seed/dim_date.csv b/archive/single_tech_samples/adf_cicd/data/seed/dim_date.csv similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/seed/dim_date.csv rename to archive/single_tech_samples/adf_cicd/data/seed/dim_date.csv diff --git a/single_tech_samples/datafactory/sample1_cicd/data/seed/dim_time.csv b/archive/single_tech_samples/adf_cicd/data/seed/dim_time.csv similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/data/seed/dim_time.csv rename to archive/single_tech_samples/adf_cicd/data/seed/dim_time.csv diff --git a/single_tech_samples/datafactory/sample1_cicd/deploy.sh b/archive/single_tech_samples/adf_cicd/deploy.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/deploy.sh rename to archive/single_tech_samples/adf_cicd/deploy.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/devops/azure-pipelines-cd-release.yml b/archive/single_tech_samples/adf_cicd/devops/azure-pipelines-cd-release.yml similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/devops/azure-pipelines-cd-release.yml rename to archive/single_tech_samples/adf_cicd/devops/azure-pipelines-cd-release.yml diff --git a/single_tech_samples/datafactory/sample1_cicd/devops/azure-pipelines-ci-artifacts.yml b/archive/single_tech_samples/adf_cicd/devops/azure-pipelines-ci-artifacts.yml similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/devops/azure-pipelines-ci-artifacts.yml rename to archive/single_tech_samples/adf_cicd/devops/azure-pipelines-ci-artifacts.yml diff --git a/single_tech_samples/datafactory/sample1_cicd/devops/templates/jobs/deploy-adf-job.yml b/archive/single_tech_samples/adf_cicd/devops/templates/jobs/deploy-adf-job.yml similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/devops/templates/jobs/deploy-adf-job.yml rename to archive/single_tech_samples/adf_cicd/devops/templates/jobs/deploy-adf-job.yml diff --git a/single_tech_samples/datafactory/sample1_cicd/devops/templates/jobs/integration-test-adf-job.yml b/archive/single_tech_samples/adf_cicd/devops/templates/jobs/integration-test-adf-job.yml similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/devops/templates/jobs/integration-test-adf-job.yml rename to archive/single_tech_samples/adf_cicd/devops/templates/jobs/integration-test-adf-job.yml diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/.gitkeep b/archive/single_tech_samples/adf_cicd/docs/images/.gitkeep similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/.gitkeep rename to archive/single_tech_samples/adf_cicd/docs/images/.gitkeep diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/ADFRun.png b/archive/single_tech_samples/adf_cicd/docs/images/ADFRun.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/ADFRun.png rename to archive/single_tech_samples/adf_cicd/docs/images/ADFRun.png diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/CICD-logical.PNG b/archive/single_tech_samples/adf_cicd/docs/images/CICD-logical.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/CICD-logical.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/CICD-logical.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/CICD.PNG b/archive/single_tech_samples/adf_cicd/docs/images/CICD.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/CICD.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/CICD.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/CICDv2.PNG b/archive/single_tech_samples/adf_cicd/docs/images/CICDv2.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/CICDv2.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/CICDv2.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/PublishADF.PNG b/archive/single_tech_samples/adf_cicd/docs/images/PublishADF.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/PublishADF.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/PublishADF.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/ReleasePipeline.png b/archive/single_tech_samples/adf_cicd/docs/images/ReleasePipeline.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/ReleasePipeline.png rename to archive/single_tech_samples/adf_cicd/docs/images/ReleasePipeline.png diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/ReleasePipelinev3.PNG b/archive/single_tech_samples/adf_cicd/docs/images/ReleasePipelinev3.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/ReleasePipelinev3.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/ReleasePipelinev3.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/architecture.PNG b/archive/single_tech_samples/adf_cicd/docs/images/architecture.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/architecture.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/architecture.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/create-pull.png b/archive/single_tech_samples/adf_cicd/docs/images/create-pull.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/create-pull.png rename to archive/single_tech_samples/adf_cicd/docs/images/create-pull.png diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/create-pull2.png b/archive/single_tech_samples/adf_cicd/docs/images/create-pull2.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/create-pull2.png rename to archive/single_tech_samples/adf_cicd/docs/images/create-pull2.png diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/integrationTestResultv2.PNG b/archive/single_tech_samples/adf_cicd/docs/images/integrationTestResultv2.PNG similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/integrationTestResultv2.PNG rename to archive/single_tech_samples/adf_cicd/docs/images/integrationTestResultv2.PNG diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/new_branch.png b/archive/single_tech_samples/adf_cicd/docs/images/new_branch.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/new_branch.png rename to archive/single_tech_samples/adf_cicd/docs/images/new_branch.png diff --git a/single_tech_samples/datafactory/sample1_cicd/docs/images/publish.png b/archive/single_tech_samples/adf_cicd/docs/images/publish.png similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/docs/images/publish.png rename to archive/single_tech_samples/adf_cicd/docs/images/publish.png diff --git a/single_tech_samples/datafactory/sample1_cicd/infrastructure/.gitkeep b/archive/single_tech_samples/adf_cicd/infrastructure/.gitkeep similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/infrastructure/.gitkeep rename to archive/single_tech_samples/adf_cicd/infrastructure/.gitkeep diff --git a/single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.json b/archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.json similarity index 99% rename from single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.json rename to archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.json index 1cfe00eb6..ad6c5bfb8 100644 --- a/single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.json +++ b/archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.json @@ -29,7 +29,7 @@ "keyvault_owner_object_id": { "type": "String", "metadata": { - "description": "Active Directory ObjectId to be granted full rights to KV" + "description": "Microsoft Entra Object ID to be granted full rights to KV" } }, "datalake_storage_account_name": { diff --git a/single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.dev.json b/archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.dev.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.dev.json rename to archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.dev.json diff --git a/single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.prod.json b/archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.prod.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.prod.json rename to archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.prod.json diff --git a/single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.stg.json b/archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.stg.json similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/infrastructure/azuredeploy.parameters.stg.json rename to archive/single_tech_samples/adf_cicd/infrastructure/azuredeploy.parameters.stg.json diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/clean_up.sh b/archive/single_tech_samples/adf_cicd/scripts/clean_up.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/clean_up.sh rename to archive/single_tech_samples/adf_cicd/scripts/clean_up.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/common.sh b/archive/single_tech_samples/adf_cicd/scripts/common.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/common.sh rename to archive/single_tech_samples/adf_cicd/scripts/common.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_pipelines.sh b/archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_pipelines.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_pipelines.sh rename to archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_pipelines.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_service_connections_azure.sh b/archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_service_connections_azure.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_service_connections_azure.sh rename to archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_service_connections_azure.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_service_connections_github.sh b/archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_service_connections_github.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_service_connections_github.sh rename to archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_service_connections_github.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_variables.sh b/archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_variables.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/deploy_azdo_variables.sh rename to archive/single_tech_samples/adf_cicd/scripts/deploy_azdo_variables.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/deploy_infrastructure.sh b/archive/single_tech_samples/adf_cicd/scripts/deploy_infrastructure.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/deploy_infrastructure.sh rename to archive/single_tech_samples/adf_cicd/scripts/deploy_infrastructure.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/init_environment.sh b/archive/single_tech_samples/adf_cicd/scripts/init_environment.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/init_environment.sh rename to archive/single_tech_samples/adf_cicd/scripts/init_environment.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/scripts/verify_prerequisites.sh b/archive/single_tech_samples/adf_cicd/scripts/verify_prerequisites.sh similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/scripts/verify_prerequisites.sh rename to archive/single_tech_samples/adf_cicd/scripts/verify_prerequisites.sh diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/requirements.txt b/archive/single_tech_samples/adf_cicd/tests/integrationtests/requirements.txt similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/requirements.txt rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/requirements.txt diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/README.md b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/README.md similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/README.md rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/README.md diff --git a/single_tech_samples/databricks/sample4_ci_cd/common/__init__.py b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/common/__init__.py rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/__init__.py diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/conftest.py b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/conftest.py similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/conftest.py rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/conftest.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/common/tests/__init__.py b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/dataconnectors/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/common/tests/__init__.py rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/dataconnectors/__init__.py diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/dataconnectors/blob_storage.py b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/dataconnectors/blob_storage.py similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/dataconnectors/blob_storage.py rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/dataconnectors/blob_storage.py diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/test_pipeline_ingest_to_bronze.py b/archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/test_pipeline_ingest_to_bronze.py similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/test_pipeline_ingest_to_bronze.py rename to archive/single_tech_samples/adf_cicd/tests/integrationtests/tests/test_pipeline_ingest_to_bronze.py diff --git a/single_tech_samples/databricks/.devcontainer/Dockerfile b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/databricks/.devcontainer/Dockerfile rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/Dockerfile diff --git a/single_tech_samples/databricks/.devcontainer/devcontainer.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/databricks/.devcontainer/devcontainer.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/devcontainer.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/.devcontainer/settings.vscode.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/settings.vscode.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.devcontainer/settings.vscode.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/.devcontainer/settings.vscode.json diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/README.md b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/README.md similarity index 86% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/README.md rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/README.md index 6f0ec6b05..36f10f2bb 100644 --- a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/README.md +++ b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/README.md @@ -40,14 +40,14 @@ Details about [how to use this sample](#3-how-to-use-this-sample) can be found i The below diagram illustrates the deployment process flow followed in this sample: -![alt text](../Common_Assets/Images/IAC_Architecture.png "Logo Title Text 1") +![alt text](./images/IAC_Architecture.png "Logo Title Text 1") #### 1.2.1. Patterns Following are the cloud design patterns being used by this sample: - [External Configuration Store pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/external-configuration-store): Configuration for the deployment is persisted externally as a parameter file separate from the deployment script. -- [Federated Identity pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/federated-identity): Azure active directory is used as the federated identity store to enable seamless integration with enterprise identity providers. +- [Federated Identity pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/federated-identity): Microsoft Entra ID is used as the federated identity store to enable seamless integration with enterprise identity providers. - [Valet Key pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/valet-key): Azure key vault is used to manage the secrets and access toked used by the services. - [Compensating Transaction pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/compensating-transaction#): The script will roll back partially configured resources if the deployment is incomplete. @@ -85,7 +85,7 @@ The following are the prerequisites for deploying this sample : - *Installation instructions* can be found [here](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) 1. For Windows users, 1. Option 1: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) - 2. Option 2: Use the devcontainer published [here](../.devcontainer) as a host for the bash shell. + 2. Option 2: Use the devcontainer published [here](./.devcontainer) as a host for the bash shell. For more information about Devcontainers, see [here](https://code.visualstudio.com/docs/remote/containers). ### 2.2. Setup and deployment @@ -94,7 +94,7 @@ The following are the prerequisites for deploying this sample : Below listed are the steps to deploy this sample : -1. Fork and clone this repository. Navigate to (CD) `single_tech_samples/databricks/sample1_basic_azure_databricks_environment/`. +1. Fork and clone this repository. Navigate to (CD) `single_tech_samples/databricks/databricks_basic_azure_databricks_environment/`. 1. The sample depends on the following environment variables to be set before the deployment script is run: @@ -111,7 +111,7 @@ Below listed are the steps to deploy this sample : > Note: `DEPLOYMENT_PREFIX` for this deployment was set as `lumustest` - ![alt text](../Common_Assets/Images/IAC_Script_Deploy.png "Logo Title Text 1") + ![alt text](./images/IAC_Script_Deploy.png "Logo Title Text 1") ### 2.3. Deployed Resources @@ -119,15 +119,15 @@ The following resources will be deployed as a part of this sample once the scrip 1.Azure Databricks workspace. -![alt text](../Common_Assets/Images/IAC_Adb.png "Logo Title Text 1") +![alt text](./images/IAC_Adb.png "Logo Title Text 1") 2.Azure Storage with hierarchical namespace enabled. -![alt text](../Common_Assets/Images/IAC_Storage.png "Logo Title Text 1") +![alt text](./images/IAC_Storage.png "Logo Title Text 1") 2.Azure Key vault with all the secrets configured. -![alt text](../Common_Assets/Images/IAC_Keyvault.png "Logo Title Text 1") +![alt text](./images/IAC_Keyvault.png "Logo Title Text 1") ### 2.4. Deployment validation @@ -139,7 +139,7 @@ The following steps can be performed to validate the correct deployment of this 2. Access the control plane for the storage account and key vault through the Azure portal. 3. View the secrets configured in the Azure Key vault 4. View deployment logs in the Azure resource group - ![alt text](../Common_Assets/Images/IAC_Deployment_Logs.png "Logo Title Text 1") + ![alt text](./images/IAC_Deployment_Logs.png "Logo Title Text 1") ### 2.5. Clean-up @@ -147,14 +147,14 @@ Please follow the below steps to clean up your environment : The clean-up script can be executed to clean up the resources provisioned in this sample. Following are the steps to execute the script: -1. Navigate to (CD) `single_tech_samples/databricks/sample1_basic_azure_databricks_environment/`. +1. Navigate to (CD) `single_tech_samples/databricks/databricks_basic_azure_databricks_environment/`. 2. Run '/destroy.sh' The following screenshot displays the log for a successful clean-up run: - ![alt text](../Common_Assets/Images/IAC_Script_Teardown.png "Logo Title Text 1") + ![alt text](./images/IAC_Script_Teardown.png "Logo Title Text 1") ## 3. Next Step -[Deploying Enterprise-grade Azure Databricks environment using Infrastructure as Code aligned with Anti-Data-Exfiltration Reference architecture](../sample2_enterprise_azure_databricks_environment/README.md) +[Deploying enterprise-grade Azure Databricks environment using IaC aligned with anti-data-exfiltration reference architecture](./../databricks_enterprise_azure_databricks_environment/README.md) diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/databricks/workspace.parameters.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/databricks/workspace.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/databricks/workspace.parameters.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/databricks/workspace.parameters.json diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/databricks/workspace.template.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/databricks/workspace.template.json similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/databricks/workspace.template.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/databricks/workspace.template.json diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/deploy.sh b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/deploy.sh similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/deploy.sh rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/deploy.sh diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/destroy.sh b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/destroy.sh similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/destroy.sh rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/destroy.sh diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Adb.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Adb.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Adb.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Adb.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Architecture.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Architecture.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Architecture.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Architecture.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Deployment_Logs.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Deployment_Logs.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Deployment_Logs.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Deployment_Logs.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Keyvault.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Keyvault.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Keyvault.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Keyvault.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Script_Deploy.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Script_Deploy.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Script_Deploy.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Script_Deploy.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Script_Teardown.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Script_Teardown.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Script_Teardown.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Script_Teardown.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/IAC_Storage.png b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Storage.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/IAC_Storage.png rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/images/IAC_Storage.png diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/keyvault/keyvault.parameters.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/keyvault/keyvault.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/keyvault/keyvault.parameters.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/keyvault/keyvault.parameters.json diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/keyvault/keyvault.template.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/keyvault/keyvault.template.json similarity index 88% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/keyvault/keyvault.template.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/keyvault/keyvault.template.json index e37464a06..31e45e024 100644 --- a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/keyvault/keyvault.template.json +++ b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/keyvault/keyvault.template.json @@ -41,13 +41,13 @@ "type": "string", "defaultValue": "[subscription().tenantId]", "metadata": { - "description": "Specifies the Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." + "description": "Specifies the Microsoft Entra tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." } }, "objectId": { "type": "string", "metadata": { - "description": "Specifies the object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies. Get it by using Get-AzADUser or Get-AzADServicePrincipal cmdlets." + "description": "Specifies the object ID of a user, service principal or security group in the Microsoft Entra ID tenant for the vault. The object ID must be unique for the list of access policies. Get it by using Get-AzADUser or Get-AzADServicePrincipal cmdlets." } }, "keyVaultSkuTier": { diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/storageaccount/storageaccount.parameters.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/storageaccount/storageaccount.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/storageaccount/storageaccount.parameters.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/storageaccount/storageaccount.parameters.json diff --git a/single_tech_samples/databricks/sample1_basic_azure_databricks_environment/storageaccount/storageaccount.template.json b/archive/single_tech_samples/databricks_basic_azure_databricks_environment/storageaccount/storageaccount.template.json similarity index 100% rename from single_tech_samples/databricks/sample1_basic_azure_databricks_environment/storageaccount/storageaccount.template.json rename to archive/single_tech_samples/databricks_basic_azure_databricks_environment/storageaccount/storageaccount.template.json diff --git a/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/Dockerfile b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/Dockerfile new file mode 100644 index 000000000..043390f06 --- /dev/null +++ b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/Dockerfile @@ -0,0 +1,32 @@ +ARG VARIANT="buster" +FROM mcr.microsoft.com/vscode/devcontainers/base:0-${VARIANT} + +# Install Additional Packages +RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ + && apt-get upgrade \ + && apt-get -y install --no-install-recommends \ + git \ + jq \ + make \ + nodejs \ + npm \ + python3 \ + python3-pip \ + xz-utils + +# Install shfmt +RUN curl -SsL "https://github.com/mvdan/sh/releases/download/v3.2.4/shfmt_v3.2.4_linux_amd64" -o "shfmt" \ + && mv shfmt /usr/local/bin \ + && chown vscode /usr/local/bin/shfmt \ + && chmod a+x /usr/local/bin/shfmt + +# Install Azure CLI +RUN curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash + +# Install Databricks CLI +RUN pip3 install setuptools \ + && pip3 install wheel \ + && pip3 install databricks-cli + +# Install markdown-link-check +RUN npm install -g markdown-link-check diff --git a/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/devcontainer.json b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/devcontainer.json new file mode 100644 index 000000000..e806c59d4 --- /dev/null +++ b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/devcontainer.json @@ -0,0 +1,37 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.163.1/containers/debian +{ + "name": "single-tech databricks sample", + "build": { + "dockerfile": "Dockerfile", + // Update 'VARIANT' to pick an Debian version: buster, stretch + "args": { + "VARIANT": "buster" + } + }, + // Set *default* container specific settings.json values on container create. + "settings": { + "terminal.integrated.shell.linux": "/bin/bash", + "shellformat.path": "/usr/local/bin/shfmt", + "shellformat.flag": "-ci -kp" + }, + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "foxundermoon.shell-format", + "ms-azuretools.vscode-docker", + "msazurermtools.azurerm-vscode-tools", + "streetsidesoftware.code-spell-checker", + "timonwong.shellcheck", + "yzhang.markdown-all-in-one", + "davidanson.vscode-markdownlint" + ], + "postCreateCommand": "az extension add --name databricks --yes --output none && az extension add --name azure-firewall --yes --output none", + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + // Uncomment to use the Docker CLI from inside the container. See https://aka.ms/vscode-remote/samples/docker-from-docker. + // "mounts": [ "source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind" ], + // Uncomment when using a ptrace-based debugger like C++, Go, and Rust + // "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ], + // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + "remoteUser": "vscode" +} \ No newline at end of file diff --git a/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/settings.vscode.json b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/settings.vscode.json new file mode 100644 index 000000000..8ad19d5bb --- /dev/null +++ b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.devcontainer/settings.vscode.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "/usr/local/bin/python" +} \ No newline at end of file diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/.gitignore b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.gitignore similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/.gitignore rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/.gitignore diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/README.md b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/README.md similarity index 98% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/README.md rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/README.md index 6a1be71fc..15a9fc0ec 100644 --- a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/README.md +++ b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/README.md @@ -40,7 +40,7 @@ for a few extra setup steps. - *Installation instructions* can be found [here](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) 1. For Windows users, 1. Option 1: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) - 2. Option 2: Use the dev container published [here](../.devcontainer) as a host for the bash shell. + 2. Option 2: Use the dev container published [here](./.devcontainer) as a host for the bash shell. 1. [Databricks CLI](https://docs.microsoft.com/en-us/azure/databricks/dev-tools/cli/) ### 1.2. Setup and deployment diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/access-data-directly-via-account-key.ipy b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/access-data-directly-via-account-key.ipy similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/access-data-directly-via-account-key.ipy rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/access-data-directly-via-account-key.ipy diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/access-data-mount-via-ad-passthrough.ipy b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/access-data-mount-via-ad-passthrough.ipy similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/access-data-mount-via-ad-passthrough.ipy rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/access-data-mount-via-ad-passthrough.ipy diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/cluster-config.default.json b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/cluster-config.default.json similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/cluster-config.default.json rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/cluster-config.default.json diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/cluster-config.high-concurrency.json b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/cluster-config.high-concurrency.json similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/cluster-config.high-concurrency.json rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/cluster-config.high-concurrency.json diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/deploy.sh b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/deploy.sh similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/deploy.sh rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/deploy.sh diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/sample-data.us-population.json b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/sample-data.us-population.json similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/sample-data.us-population.json rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/sample-data.us-population.json diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/configure-databricks-cli.sh b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/configure-databricks-cli.sh similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/configure-databricks-cli.sh rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/configure-databricks-cli.sh diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/deploy-default-and-hc-clusters.sh b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/deploy-default-and-hc-clusters.sh similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/deploy-default-and-hc-clusters.sh rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/deploy-default-and-hc-clusters.sh diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/import-data-access-notebooks.sh b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/import-data-access-notebooks.sh similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/import-data-access-notebooks.sh rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/import-data-access-notebooks.sh diff --git a/single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/upload-sample-data.sh b/archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/upload-sample-data.sh similarity index 100% rename from single_tech_samples/databricks/sample3_cluster_provisioning_and_data_access/scripts/upload-sample-data.sh rename to archive/single_tech_samples/databricks_cluster_provisioning_and_data_access/scripts/upload-sample-data.sh diff --git a/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/Dockerfile b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/Dockerfile new file mode 100644 index 000000000..043390f06 --- /dev/null +++ b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/Dockerfile @@ -0,0 +1,32 @@ +ARG VARIANT="buster" +FROM mcr.microsoft.com/vscode/devcontainers/base:0-${VARIANT} + +# Install Additional Packages +RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ + && apt-get upgrade \ + && apt-get -y install --no-install-recommends \ + git \ + jq \ + make \ + nodejs \ + npm \ + python3 \ + python3-pip \ + xz-utils + +# Install shfmt +RUN curl -SsL "https://github.com/mvdan/sh/releases/download/v3.2.4/shfmt_v3.2.4_linux_amd64" -o "shfmt" \ + && mv shfmt /usr/local/bin \ + && chown vscode /usr/local/bin/shfmt \ + && chmod a+x /usr/local/bin/shfmt + +# Install Azure CLI +RUN curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash + +# Install Databricks CLI +RUN pip3 install setuptools \ + && pip3 install wheel \ + && pip3 install databricks-cli + +# Install markdown-link-check +RUN npm install -g markdown-link-check diff --git a/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/devcontainer.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/devcontainer.json new file mode 100644 index 000000000..e806c59d4 --- /dev/null +++ b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/devcontainer.json @@ -0,0 +1,37 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.163.1/containers/debian +{ + "name": "single-tech databricks sample", + "build": { + "dockerfile": "Dockerfile", + // Update 'VARIANT' to pick an Debian version: buster, stretch + "args": { + "VARIANT": "buster" + } + }, + // Set *default* container specific settings.json values on container create. + "settings": { + "terminal.integrated.shell.linux": "/bin/bash", + "shellformat.path": "/usr/local/bin/shfmt", + "shellformat.flag": "-ci -kp" + }, + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "foxundermoon.shell-format", + "ms-azuretools.vscode-docker", + "msazurermtools.azurerm-vscode-tools", + "streetsidesoftware.code-spell-checker", + "timonwong.shellcheck", + "yzhang.markdown-all-in-one", + "davidanson.vscode-markdownlint" + ], + "postCreateCommand": "az extension add --name databricks --yes --output none && az extension add --name azure-firewall --yes --output none", + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + // Uncomment to use the Docker CLI from inside the container. See https://aka.ms/vscode-remote/samples/docker-from-docker. + // "mounts": [ "source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind" ], + // Uncomment when using a ptrace-based debugger like C++, Go, and Rust + // "runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ], + // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + "remoteUser": "vscode" +} \ No newline at end of file diff --git a/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/settings.vscode.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/settings.vscode.json new file mode 100644 index 000000000..8ad19d5bb --- /dev/null +++ b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/.devcontainer/settings.vscode.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "/usr/local/bin/python" +} \ No newline at end of file diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/README.md b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/README.md similarity index 84% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/README.md rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/README.md index a5ad8b50d..5591cc072 100644 --- a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/README.md +++ b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/README.md @@ -21,7 +21,7 @@ ## 1. Solution Overview -In [sample 1](../sample1_basic_azure_databricks_environment), we focused on deploying a basic Azure Databrick Environment with relevant services like Azure Storage Account and Azure Keyvault provisioned. However, an Enterprise-grade deployment of Databricks demands securing the environment to meet the organizational guardrails around cybersecurity and data protection. +In [sample 1](./../databricks_basic_azure_databricks_environment/), we focused on deploying a basic Azure Databrick Environment with relevant services like Azure Storage Account and Azure Keyvault provisioned. However, an Enterprise-grade deployment of Databricks demands securing the environment to meet the organizational guardrails around cybersecurity and data protection. In this sample we focus on hardening the security around the Azure Databricks environment by implementing the following: @@ -55,18 +55,18 @@ Details about [how to use this sample](#3-how-to-use-this-sample) can be found i The architecture of the solution is aligned with the security baselines for [Azure Databricks](https://docs.microsoft.com/en-us/azure/databricks/security/). The following diagram captures the high-level design. -![alt text](../Common_Assets/Images/ADE_Architecture.png "Logo Title Text 1") +![alt text](./images/ADE_Architecture.png "Logo Title Text 1") In this sample, a shell script is used to orchestrate the deployment. The following diagram illustrates the deployment process flow. -![alt text](../Common_Assets/Images/ADE_Deployment.png "Logo Title Text 1") +![alt text](./images/ADE_Deployment.png "Logo Title Text 1") #### 1.2.1. Patterns Following are the cloud design patterns being used by this sample: - [External Configuration Store pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/external-configuration-store): Configuration for the deployment is persisted externally as a parameter file separate from the deployment script. -- [Federated Identity pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/federated-identity): Azure active directory is used as the federated identity store to enable seamless integration with enterprise identity providers. +- [Federated Identity pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/federated-identity): Microsoft Entra ID is used as the federated identity store to enable seamless integration with enterprise identity providers. - [Valet Key pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/valet-key): Azure key vault is used to manage the secrets and access toked used by the services. - [Gatekeeper pattern](https://docs.microsoft.com/en-us/azure/architecture/patterns/gatekeeper): The Azure firewall acts as a gatekeeper for all external traffic flowing in. @@ -99,7 +99,7 @@ This sample implementation focuses on securing the Azure Databricks Environment 3. Automate the execution of the deployment script and restrict the privileges to service accounts. -4. Integrate with the secure identity provider (Azure Active Directory). +4. Integrate with the secure identity provider (Microsoft Entra ID). ### 2.2. Other considerations @@ -162,7 +162,7 @@ The following are the prerequisites for deploying this sample : - *Installation instructions* can be found [here](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) 1. For Windows users, 1. Option 1: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) - 2. Option 2: Use the dev container published [here](../.devcontainer) as a host for the bash shell. + 2. Option 2: Use the dev container published [here](./.devcontainer) as a host for the bash shell. ### 3.2. Setup and deployment @@ -170,7 +170,7 @@ The following are the prerequisites for deploying this sample : Below listed are the steps to deploy this sample : -1. Fork and clone this repository. Navigate to (CD) `single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/`. +1. Fork and clone this repository. Navigate to (CD) `single_tech_samples/databricks/databricks_enterprise_azure_databricks_environment/`. 1. The sample depends on the following environment variables to be set before the deployment script is run: @@ -188,7 +188,7 @@ Below listed are the steps to deploy this sample : > Note: `DEPLOYMENT_PREFIX` for this deployment was set as `lumussample2` - ![alt text](../Common_Assets/Images/ADE_Script_Deploy.png "Logo Title Text 1") + ![alt text](./images/ADE_Script_Deploy.png "Logo Title Text 1") ### 3.3. Deployed Resources @@ -196,53 +196,53 @@ The following resources will be deployed as a part of this sample once the scrip 1.Azure Databricks workspace. -![alt text](../Common_Assets/Images/ADE_Adb.png "Logo Title Text 1") +![alt text](./images/ADE_Adb.png "Logo Title Text 1") 2.Azure Storage with hierarchical namespace enabled. -![alt text](../Common_Assets/Images/ADE_Storage.png "Logo Title Text 1") +![alt text](./images/ADE_Storage.png "Logo Title Text 1") 3.Azure Key vault with all the secrets configured. -![alt text](../Common_Assets/Images/ADE_Keyvault.png "Logo Title Text 1") +![alt text](./images/ADE_Keyvault.png "Logo Title Text 1") 4.Azure Virtual Networks with Vnet peering between the hub and spoke Vnets **Hub Vnet** -![alt text](../Common_Assets/Images/ADE_Hub.png "Logo Title Text 1") +![alt text](./images/ADE_Hub.png "Logo Title Text 1") **Spoke Vnet** -![alt text](../Common_Assets/Images/ADE_Spoke.png "Logo Title Text 1") +![alt text](./images/ADE_Spoke.png "Logo Title Text 1") 5.Azure Firewall with rules configured **Network Rules** -![alt text](../Common_Assets/Images/ADE_Firewall.png "Logo Title Text 1") +![alt text](./images/ADE_Firewall.png "Logo Title Text 1") **Application Rules** -![alt text](../Common_Assets/Images/ADE_Firewall_AR.png "Logo Title Text 1") +![alt text](./images/ADE_Firewall_AR.png "Logo Title Text 1") 6.Azure public IP address associated with the firewall -![alt text](../Common_Assets/Images/ADE_IP.png "Logo Title Text 1") +![alt text](./images/ADE_IP.png "Logo Title Text 1") 7.Azure Routing table with routes configured **Subnets** -![alt text](../Common_Assets/Images/ADE_Subnet.png "Logo Title Text 1") +![alt text](./images/ADE_Subnet.png "Logo Title Text 1") **Routes** -![alt text](../Common_Assets/Images/ADE_Route.png "Logo Title Text 1") +![alt text](./images/ADE_Route.png "Logo Title Text 1") 8.Azure Network Security Group -![alt text](../Common_Assets/Images/ADE_NSG.png "Logo Title Text 1") +![alt text](./images/ADE_NSG.png "Logo Title Text 1") 8.Azure Private Link > **NOTE:** Configuring Private links require provisioning of Network Interface cards and Private DNS zones. The following screenshot illustrates the resources configured for two private links. One for the Storage and Another for Key vault. > -![alt text](../Common_Assets/Images/ADE_PL.png "Logo Title Text 1") +![alt text](./images/ADE_PL.png "Logo Title Text 1") ### 3.4. Deployment validation @@ -254,23 +254,23 @@ The following steps can be performed to validate the correct deployment of this 2. Access the control plane for the storage account and key vault through the Azure portal. 3. View the secrets configured in the Azure Key vault. 4. View deployment logs in the Azure resource group - ![alt text](../Common_Assets/Images/ADE_Deployment_Logs.png "Logo Title Text 1"). + ![alt text](./images/ADE_Deployment_Logs.png "Logo Title Text 1"). 5. Key vault and storage is not accessible outside Azure Databricks workspace. 6. Changing the firewall rules to deny traffic from the control plane will prevent the Azure Databricks cluster from functioning. - ![alt text](../Common_Assets/Images/ADE_Firewall_Deny.png "Logo Title Text 1"). + ![alt text](./images/ADE_Firewall_Deny.png "Logo Title Text 1"). ### 3.5. Clean-up The clean-up script can be executed to clean up the resources provisioned in this sample. Following are the steps to execute the script: -1. Navigate to (CD) `single_tech_samples/databricks/sample1_basic_azure_databricks_environment/`. +1. Navigate to (CD) `single_tech_samples/databricks/databricks_enterprise_azure_databricks_environment/`. 2. Run '/destroy.sh' The following screenshot displays the log for a successful clean-up run: - ![alt text](../Common_Assets/Images/ADE_Script_Teardown.png "Logo Title Text 1") + ![alt text](./images/ADE_Script_Teardown.png "Logo Title Text 1") ## 4. Next Step -[Cluster provisioning and enabling data access on a pre-provisioned Azure Databricks Workspace](../sample3_cluster_provisioning_and_data_access/README.md) +- [Cluster provisioning and enabling data access on a pre-provisioned Azure Databricks Workspace](./../databricks_cluster_provisioning_and_data_access/README.md) diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/databricks/workspace.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/databricks/workspace.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/databricks/workspace.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/databricks/workspace.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/databricks/workspace.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/databricks/workspace.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/databricks/workspace.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/databricks/workspace.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/deploy.sh b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/deploy.sh similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/deploy.sh rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/deploy.sh diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/destroy.sh b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/destroy.sh similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/destroy.sh rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/destroy.sh diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/example-dotenv b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/example-dotenv similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/example-dotenv rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/example-dotenv diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/firewall/firewall.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/firewall/firewall.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/firewall/firewall.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/firewall/firewall.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/firewall/firewall.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/firewall/firewall.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/firewall/firewall.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/firewall/firewall.template.json diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADB_Notebooks.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADB_Notebooks.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADB_Notebooks.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADB_Notebooks.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Adb.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Adb.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Adb.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Adb.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Architecture.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Architecture.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Architecture.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Architecture.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Deployment.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Deployment.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Deployment.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Deployment.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Deployment_Logs.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Deployment_Logs.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Deployment_Logs.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Deployment_Logs.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall_AR.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall_AR.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall_AR.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall_AR.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall_Deny.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall_Deny.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Firewall_Deny.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Firewall_Deny.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Hub.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Hub.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Hub.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Hub.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_IP.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_IP.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_IP.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_IP.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Keyvault.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Keyvault.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Keyvault.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Keyvault.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_NSG.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_NSG.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_NSG.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_NSG.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_PL.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_PL.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_PL.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_PL.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Route.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Route.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Route.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Route.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Script_Deploy.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Script_Deploy.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Script_Deploy.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Script_Deploy.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Script_Teardown.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Script_Teardown.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Script_Teardown.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Script_Teardown.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Spoke.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Spoke.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Spoke.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Spoke.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Storage.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Storage.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Storage.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Storage.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADE_Subnet.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Subnet.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADE_Subnet.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADE_Subnet.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Code.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Code.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Code.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Code.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Create.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Create.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Create.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Create.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Repo.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Repo.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Repo.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Repo.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Repo_Select.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Repo_Select.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Repo_Select.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Repo_Select.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Type.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Type.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Type.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Type.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Variables.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Variables.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Pipeline_Variables.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Pipeline_Variables.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Result.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Result.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Result.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Result.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Run.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Run.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Run.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Run.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_RunChart.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_RunChart.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_RunChart.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_RunChart.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Runlog.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Runlog.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Runlog.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Runlog.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/ADO_Variables.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Variables.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/ADO_Variables.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/ADO_Variables.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/Azure_Databricks_Icon.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Azure_Databricks_Icon.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/Azure_Databricks_Icon.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Azure_Databricks_Icon.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/Lumos_logo.png b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Lumos_logo.png similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/Lumos_logo.png rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Lumos_logo.png diff --git a/single_tech_samples/databricks/Common_Assets/Images/MIT.svg b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/MIT.svg similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/MIT.svg rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/MIT.svg diff --git a/single_tech_samples/databricks/Common_Assets/Images/Open_Source.svg b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Open_Source.svg similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/Open_Source.svg rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Open_Source.svg diff --git a/single_tech_samples/databricks/Common_Assets/Images/Status-Active.svg b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Status-Active.svg similarity index 100% rename from single_tech_samples/databricks/Common_Assets/Images/Status-Active.svg rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/images/Status-Active.svg diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/keyvault.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/keyvault.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/keyvault.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/keyvault.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/keyvault.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/keyvault.template.json similarity index 88% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/keyvault.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/keyvault.template.json index c88794571..1150d172f 100644 --- a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/keyvault.template.json +++ b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/keyvault.template.json @@ -41,13 +41,13 @@ "type": "string", "defaultValue": "[subscription().tenantId]", "metadata": { - "description": "Specifies the Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." + "description": "Specifies the Microsoft Entra tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet." } }, "objectId": { "type": "string", "metadata": { - "description": "Specifies the object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies. Get it by using Get-AzADUser or Get-AzADServicePrincipal cmdlets." + "description": "Specifies the object ID of a user, service principal or security group in the Microsoft Entra ID tenant for the vault. The object ID must be unique for the list of access policies. Get it by using Get-AzADUser or Get-AzADServicePrincipal cmdlets." } }, "keyVaultSkuTier": { diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/privateendpoint.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/privateendpoint.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/privateendpoint.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/privateendpoint.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/privateendpoint.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/privateendpoint.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/keyvault/privateendpoint.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/keyvault/privateendpoint.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/routetable/routetable.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/routetable/routetable.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/routetable/routetable.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/routetable/routetable.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/routetable/routetable.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/routetable/routetable.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/routetable/routetable.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/routetable/routetable.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/securitygroup/securitygroup.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/securitygroup/securitygroup.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/securitygroup/securitygroup.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/securitygroup/securitygroup.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/securitygroup/securitygroup.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/securitygroup/securitygroup.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/securitygroup/securitygroup.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/securitygroup/securitygroup.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/privateendpoint.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/privateendpoint.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/privateendpoint.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/privateendpoint.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/privateendpoint.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/privateendpoint.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/privateendpoint.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/privateendpoint.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/storageaccount.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/storageaccount.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/storageaccount.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/storageaccount.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/storageaccount.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/storageaccount.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/storageaccount/storageaccount.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/storageaccount/storageaccount.template.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/vnet/vnet.parameters.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/vnet/vnet.parameters.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/vnet/vnet.parameters.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/vnet/vnet.parameters.json diff --git a/single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/vnet/vnet.template.json b/archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/vnet/vnet.template.json similarity index 100% rename from single_tech_samples/databricks/sample2_enterprise_azure_databricks_environment/vnet/vnet.template.json rename to archive/single_tech_samples/databricks_enterprise_azure_databricks_environment/vnet/vnet.template.json diff --git a/single_tech_samples/datashare/.devcontainer/devcontainer.json b/archive/single_tech_samples/datashare_automated_data_sharing/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/datashare/.devcontainer/devcontainer.json rename to archive/single_tech_samples/datashare_automated_data_sharing/.devcontainer/devcontainer.json diff --git a/single_tech_samples/datashare/.gitignore b/archive/single_tech_samples/datashare_automated_data_sharing/.gitignore similarity index 100% rename from single_tech_samples/datashare/.gitignore rename to archive/single_tech_samples/datashare_automated_data_sharing/.gitignore diff --git a/single_tech_samples/datashare/Readme.md b/archive/single_tech_samples/datashare_automated_data_sharing/README.md similarity index 91% rename from single_tech_samples/datashare/Readme.md rename to archive/single_tech_samples/datashare_automated_data_sharing/README.md index 226d19e52..7530c7bb0 100644 --- a/single_tech_samples/datashare/Readme.md +++ b/archive/single_tech_samples/datashare_automated_data_sharing/README.md @@ -8,31 +8,33 @@ This code illustrates how to perform a fully automated data sharing process betw ## Contents -- [Working with the sample](#working-with-the-sample) - - [source.py](#sourcepy) - - [dest.py](#destpy) - - [Azure Function](#azure-function) - - [Dev Container](#dev-container) - - [Prerequisites](#prerequisites) - - [Bash](#bash) - - [Powershell](#powershell) - - [Creating the service principal](#creating-the-service-principal) - - [Role Assignments](#role-assignments) -- [Running the sample](#running-the-sample) - - [Sharing data](#sharing-data) - - [Source script configuration](#source-script-configuration) - - [Source script authentication](#source-script-authentication) - - [Running the source script](#running-the-source-script) - - [Receiving data](#receiving-data) - - [Destination script configuration](#destination-script-configuration) - - [Destination script authentication](#destination-script-authentication) - - [Running the destination script](#running-the-destination-script) - - [Triggering the scan](#triggering-the-scan) - - [Using the Azure Function](#using-the-azure-function) - - [Azure Function requirements](#azure-function-requirements) - - [F5 experience](#f5-experience) - - [Azure function authentication](#azure-function-authentication) -- [Removing the sample assets](#removing-the-sample-assets) +- [Data Share Automation](#data-share-automation) + - [Contents](#contents) + - [Working with the sample](#working-with-the-sample) + - [source.py](#sourcepy) + - [dest.py](#destpy) + - [Azure Function](#azure-function) + - [Dev Container](#dev-container) + - [Prerequisites](#prerequisites) + - [Bash](#bash) + - [Powershell](#powershell) + - [Creating the service principal](#creating-the-service-principal) + - [Role Assignments](#role-assignments) + - [Running the sample](#running-the-sample) + - [Sharing data](#sharing-data) + - [Source script configuration](#source-script-configuration) + - [Source script authentication](#source-script-authentication) + - [Running the source script](#running-the-source-script) + - [Receiving data](#receiving-data) + - [Destination script configuration](#destination-script-configuration) + - [Destination script authentication](#destination-script-authentication) + - [Running the destination script](#running-the-destination-script) + - [Triggering the scan](#triggering-the-scan) + - [Using the Azure Function](#using-the-azure-function) + - [Azure Function requirements](#azure-function-requirements) + - [F5 experience](#f5-experience) + - [Azure function authentication](#azure-function-authentication) + - [Removing the sample assets](#removing-the-sample-assets) ## Working with the sample @@ -43,7 +45,7 @@ This sample includes two Python scripts and an azure function: - Creates a share in a data share account - Sets up a dataset from a ADLSGen2 storage account file system - Creates a synchronization schedule for the share -- Sends out an invitation to a service principal on a specific Azure AD tenant +- Sends out an invitation to a service principal on a specific Microsoft Entra tenant ### dest.py @@ -102,7 +104,7 @@ az account set -s ### Creating the service principal -To automate the acceptance of the invitation, a service principal must be created in the **destination** Azure AD tenant. +To automate the acceptance of the invitation, a service principal must be created in the **destination** Microsoft Entra tenant. ```bash az ad sp create-for-rbac --name "" diff --git a/single_tech_samples/datashare/azure_function/.gitignore b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/.gitignore similarity index 100% rename from single_tech_samples/datashare/azure_function/.gitignore rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/.gitignore diff --git a/single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/__init__.py b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/__init__.py similarity index 100% rename from single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/__init__.py rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/__init__.py diff --git a/single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/configuration.py b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/configuration.py similarity index 100% rename from single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/configuration.py rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/configuration.py diff --git a/single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/data_share_helper.py b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/data_share_helper.py similarity index 100% rename from single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/data_share_helper.py rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/data_share_helper.py diff --git a/single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/function.json b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/function.json similarity index 100% rename from single_tech_samples/datashare/azure_function/AcceptDataShareInvitations/function.json rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/AcceptDataShareInvitations/function.json diff --git a/single_tech_samples/datashare/azure_function/host.json b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/host.json similarity index 100% rename from single_tech_samples/datashare/azure_function/host.json rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/host.json diff --git a/single_tech_samples/datashare/azure_function/local.settings.template.json b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/local.settings.template.json similarity index 100% rename from single_tech_samples/datashare/azure_function/local.settings.template.json rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/local.settings.template.json diff --git a/single_tech_samples/datashare/azure_function/requirements.txt b/archive/single_tech_samples/datashare_automated_data_sharing/azure_function/requirements.txt similarity index 100% rename from single_tech_samples/datashare/azure_function/requirements.txt rename to archive/single_tech_samples/datashare_automated_data_sharing/azure_function/requirements.txt diff --git a/single_tech_samples/datashare/infra/bash_setup_infra.sh b/archive/single_tech_samples/datashare_automated_data_sharing/infra/bash_setup_infra.sh similarity index 100% rename from single_tech_samples/datashare/infra/bash_setup_infra.sh rename to archive/single_tech_samples/datashare_automated_data_sharing/infra/bash_setup_infra.sh diff --git a/single_tech_samples/datashare/infra/bash_setup_sp_permissions.sh b/archive/single_tech_samples/datashare_automated_data_sharing/infra/bash_setup_sp_permissions.sh similarity index 100% rename from single_tech_samples/datashare/infra/bash_setup_sp_permissions.sh rename to archive/single_tech_samples/datashare_automated_data_sharing/infra/bash_setup_sp_permissions.sh diff --git a/single_tech_samples/datashare/infra/ps_setup_infra.ps1 b/archive/single_tech_samples/datashare_automated_data_sharing/infra/ps_setup_infra.ps1 similarity index 100% rename from single_tech_samples/datashare/infra/ps_setup_infra.ps1 rename to archive/single_tech_samples/datashare_automated_data_sharing/infra/ps_setup_infra.ps1 diff --git a/single_tech_samples/datashare/infra/ps_setup_sp_permissions.ps1 b/archive/single_tech_samples/datashare_automated_data_sharing/infra/ps_setup_sp_permissions.ps1 similarity index 100% rename from single_tech_samples/datashare/infra/ps_setup_sp_permissions.ps1 rename to archive/single_tech_samples/datashare_automated_data_sharing/infra/ps_setup_sp_permissions.ps1 diff --git a/single_tech_samples/datashare/media/add-data-share-permissions.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/add-data-share-permissions.png similarity index 100% rename from single_tech_samples/datashare/media/add-data-share-permissions.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/add-data-share-permissions.png diff --git a/single_tech_samples/datashare/media/dataset.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/dataset.png similarity index 100% rename from single_tech_samples/datashare/media/dataset.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/dataset.png diff --git a/single_tech_samples/datashare/media/invitation.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/invitation.png similarity index 100% rename from single_tech_samples/datashare/media/invitation.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/invitation.png diff --git a/single_tech_samples/datashare/media/mapping.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/mapping.png similarity index 100% rename from single_tech_samples/datashare/media/mapping.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/mapping.png diff --git a/single_tech_samples/datashare/media/schedule.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/schedule.png similarity index 100% rename from single_tech_samples/datashare/media/schedule.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/schedule.png diff --git a/single_tech_samples/datashare/media/share_created.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/share_created.png similarity index 100% rename from single_tech_samples/datashare/media/share_created.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/share_created.png diff --git a/single_tech_samples/datashare/media/snapshot.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/snapshot.png similarity index 100% rename from single_tech_samples/datashare/media/snapshot.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/snapshot.png diff --git a/single_tech_samples/datashare/media/subscription_created.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/subscription_created.png similarity index 100% rename from single_tech_samples/datashare/media/subscription_created.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/subscription_created.png diff --git a/single_tech_samples/datashare/media/trigger.png b/archive/single_tech_samples/datashare_automated_data_sharing/media/trigger.png similarity index 100% rename from single_tech_samples/datashare/media/trigger.png rename to archive/single_tech_samples/datashare_automated_data_sharing/media/trigger.png diff --git a/single_tech_samples/datashare/python/dest.py b/archive/single_tech_samples/datashare_automated_data_sharing/python/dest.py similarity index 100% rename from single_tech_samples/datashare/python/dest.py rename to archive/single_tech_samples/datashare_automated_data_sharing/python/dest.py diff --git a/single_tech_samples/datashare/python/requirements.txt b/archive/single_tech_samples/datashare_automated_data_sharing/python/requirements.txt similarity index 100% rename from single_tech_samples/datashare/python/requirements.txt rename to archive/single_tech_samples/datashare_automated_data_sharing/python/requirements.txt diff --git a/single_tech_samples/datashare/python/source.py b/archive/single_tech_samples/datashare_automated_data_sharing/python/source.py similarity index 100% rename from single_tech_samples/datashare/python/source.py rename to archive/single_tech_samples/datashare_automated_data_sharing/python/source.py diff --git a/single_tech_samples/purview/README.md b/archive/single_tech_samples/purview_iac/README.md similarity index 100% rename from single_tech_samples/purview/README.md rename to archive/single_tech_samples/purview_iac/README.md diff --git a/single_tech_samples/purview/adf/_scripts/deploymentadf.ps1 b/archive/single_tech_samples/purview_iac/adf/_scripts/deploymentadf.ps1 similarity index 100% rename from single_tech_samples/purview/adf/_scripts/deploymentadf.ps1 rename to archive/single_tech_samples/purview_iac/adf/_scripts/deploymentadf.ps1 diff --git a/single_tech_samples/purview/adf/dataset/CustomerBronzeData.json b/archive/single_tech_samples/purview_iac/adf/dataset/CustomerBronzeData.json similarity index 100% rename from single_tech_samples/purview/adf/dataset/CustomerBronzeData.json rename to archive/single_tech_samples/purview_iac/adf/dataset/CustomerBronzeData.json diff --git a/single_tech_samples/purview/adf/dataset/CustomerDataDrop.json b/archive/single_tech_samples/purview_iac/adf/dataset/CustomerDataDrop.json similarity index 100% rename from single_tech_samples/purview/adf/dataset/CustomerDataDrop.json rename to archive/single_tech_samples/purview_iac/adf/dataset/CustomerDataDrop.json diff --git a/single_tech_samples/purview/adf/linkedService/DataLakeStorage.json b/archive/single_tech_samples/purview_iac/adf/linkedService/DataLakeStorage.json similarity index 100% rename from single_tech_samples/purview/adf/linkedService/DataLakeStorage.json rename to archive/single_tech_samples/purview_iac/adf/linkedService/DataLakeStorage.json diff --git a/single_tech_samples/purview/adf/linkedService/KeyVault.json b/archive/single_tech_samples/purview_iac/adf/linkedService/KeyVault.json similarity index 100% rename from single_tech_samples/purview/adf/linkedService/KeyVault.json rename to archive/single_tech_samples/purview_iac/adf/linkedService/KeyVault.json diff --git a/single_tech_samples/purview/adf/pipeline/IngestCustomerData.json b/archive/single_tech_samples/purview_iac/adf/pipeline/IngestCustomerData.json similarity index 100% rename from single_tech_samples/purview/adf/pipeline/IngestCustomerData.json rename to archive/single_tech_samples/purview_iac/adf/pipeline/IngestCustomerData.json diff --git a/single_tech_samples/purview/data/Customers.csv b/archive/single_tech_samples/purview_iac/data/Customers.csv similarity index 100% rename from single_tech_samples/purview/data/Customers.csv rename to archive/single_tech_samples/purview_iac/data/Customers.csv diff --git a/single_tech_samples/purview/deploy.sh b/archive/single_tech_samples/purview_iac/deploy.sh similarity index 100% rename from single_tech_samples/purview/deploy.sh rename to archive/single_tech_samples/purview_iac/deploy.sh diff --git a/single_tech_samples/purview/docs/images/architecture.png b/archive/single_tech_samples/purview_iac/docs/images/architecture.png similarity index 100% rename from single_tech_samples/purview/docs/images/architecture.png rename to archive/single_tech_samples/purview_iac/docs/images/architecture.png diff --git a/single_tech_samples/purview/infrastructure/azuredeploy.json b/archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.json similarity index 99% rename from single_tech_samples/purview/infrastructure/azuredeploy.json rename to archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.json index fc9700a41..486489f95 100644 --- a/single_tech_samples/purview/infrastructure/azuredeploy.json +++ b/archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.json @@ -29,7 +29,7 @@ "keyvault_owner_object_id": { "type": "String", "metadata": { - "description": "Active Directory ObjectId to be granted full rights to KV" + "description": "Microsoft Entra Object ID to be granted full rights to KV" } }, "datalake_storage_account_name": { diff --git a/single_tech_samples/purview/infrastructure/azuredeploy.parameters.dev.json b/archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.dev.json similarity index 100% rename from single_tech_samples/purview/infrastructure/azuredeploy.parameters.dev.json rename to archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.dev.json diff --git a/single_tech_samples/purview/infrastructure/azuredeploy.parameters.prod.json b/archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.prod.json similarity index 100% rename from single_tech_samples/purview/infrastructure/azuredeploy.parameters.prod.json rename to archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.prod.json diff --git a/single_tech_samples/purview/infrastructure/azuredeploy.parameters.stg.json b/archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.stg.json similarity index 100% rename from single_tech_samples/purview/infrastructure/azuredeploy.parameters.stg.json rename to archive/single_tech_samples/purview_iac/infrastructure/azuredeploy.parameters.stg.json diff --git a/single_tech_samples/purview/scripts/--name b/archive/single_tech_samples/purview_iac/scripts/--name similarity index 100% rename from single_tech_samples/purview/scripts/--name rename to archive/single_tech_samples/purview_iac/scripts/--name diff --git a/single_tech_samples/purview/scripts/--resource-group b/archive/single_tech_samples/purview_iac/scripts/--resource-group similarity index 100% rename from single_tech_samples/purview/scripts/--resource-group rename to archive/single_tech_samples/purview_iac/scripts/--resource-group diff --git a/single_tech_samples/purview/scripts/--resource-type b/archive/single_tech_samples/purview_iac/scripts/--resource-type similarity index 100% rename from single_tech_samples/purview/scripts/--resource-type rename to archive/single_tech_samples/purview_iac/scripts/--resource-type diff --git a/single_tech_samples/purview/scripts/clean_up.sh b/archive/single_tech_samples/purview_iac/scripts/clean_up.sh similarity index 100% rename from single_tech_samples/purview/scripts/clean_up.sh rename to archive/single_tech_samples/purview_iac/scripts/clean_up.sh diff --git a/single_tech_samples/purview/scripts/common.sh b/archive/single_tech_samples/purview_iac/scripts/common.sh similarity index 100% rename from single_tech_samples/purview/scripts/common.sh rename to archive/single_tech_samples/purview_iac/scripts/common.sh diff --git a/single_tech_samples/purview/scripts/delete_purview_data.sh b/archive/single_tech_samples/purview_iac/scripts/delete_purview_data.sh similarity index 100% rename from single_tech_samples/purview/scripts/delete_purview_data.sh rename to archive/single_tech_samples/purview_iac/scripts/delete_purview_data.sh diff --git a/single_tech_samples/purview/scripts/deploy_infrastructure.sh b/archive/single_tech_samples/purview_iac/scripts/deploy_infrastructure.sh similarity index 100% rename from single_tech_samples/purview/scripts/deploy_infrastructure.sh rename to archive/single_tech_samples/purview_iac/scripts/deploy_infrastructure.sh diff --git a/single_tech_samples/purview/scripts/deploy_purview_linkedservices.sh b/archive/single_tech_samples/purview_iac/scripts/deploy_purview_linkedservices.sh similarity index 100% rename from single_tech_samples/purview/scripts/deploy_purview_linkedservices.sh rename to archive/single_tech_samples/purview_iac/scripts/deploy_purview_linkedservices.sh diff --git a/single_tech_samples/purview/scripts/deploy_purview_spn.sh b/archive/single_tech_samples/purview_iac/scripts/deploy_purview_spn.sh similarity index 100% rename from single_tech_samples/purview/scripts/deploy_purview_spn.sh rename to archive/single_tech_samples/purview_iac/scripts/deploy_purview_spn.sh diff --git a/single_tech_samples/purview/scripts/get_purview_access_token.sh b/archive/single_tech_samples/purview_iac/scripts/get_purview_access_token.sh similarity index 100% rename from single_tech_samples/purview/scripts/get_purview_access_token.sh rename to archive/single_tech_samples/purview_iac/scripts/get_purview_access_token.sh diff --git a/single_tech_samples/purview/scripts/init_environment.sh b/archive/single_tech_samples/purview_iac/scripts/init_environment.sh similarity index 100% rename from single_tech_samples/purview/scripts/init_environment.sh rename to archive/single_tech_samples/purview_iac/scripts/init_environment.sh diff --git a/single_tech_samples/purview/scripts/search_advanced.sh b/archive/single_tech_samples/purview_iac/scripts/search_advanced.sh similarity index 100% rename from single_tech_samples/purview/scripts/search_advanced.sh rename to archive/single_tech_samples/purview_iac/scripts/search_advanced.sh diff --git a/single_tech_samples/purview/scripts/verify_prerequisites.sh b/archive/single_tech_samples/purview_iac/scripts/verify_prerequisites.sh similarity index 100% rename from single_tech_samples/purview/scripts/verify_prerequisites.sh rename to archive/single_tech_samples/purview_iac/scripts/verify_prerequisites.sh diff --git a/single_tech_samples/purview/sample2_data_plane_permissions_release_mng/README.md b/archive/single_tech_samples/purview_managing_data_plane_permissions/README.md similarity index 100% rename from single_tech_samples/purview/sample2_data_plane_permissions_release_mng/README.md rename to archive/single_tech_samples/purview_managing_data_plane_permissions/README.md diff --git a/single_tech_samples/purview/sample2_data_plane_permissions_release_mng/action.yml b/archive/single_tech_samples/purview_managing_data_plane_permissions/action.yml similarity index 100% rename from single_tech_samples/purview/sample2_data_plane_permissions_release_mng/action.yml rename to archive/single_tech_samples/purview_managing_data_plane_permissions/action.yml diff --git a/single_tech_samples/purview/sample2_data_plane_permissions_release_mng/entrypoint.sh b/archive/single_tech_samples/purview_managing_data_plane_permissions/entrypoint.sh similarity index 100% rename from single_tech_samples/purview/sample2_data_plane_permissions_release_mng/entrypoint.sh rename to archive/single_tech_samples/purview_managing_data_plane_permissions/entrypoint.sh diff --git a/single_tech_samples/purview/sample2_data_plane_permissions_release_mng/functions-lib-to-set-purview-permissions.sh b/archive/single_tech_samples/purview_managing_data_plane_permissions/functions-lib-to-set-purview-permissions.sh similarity index 100% rename from single_tech_samples/purview/sample2_data_plane_permissions_release_mng/functions-lib-to-set-purview-permissions.sh rename to archive/single_tech_samples/purview_managing_data_plane_permissions/functions-lib-to-set-purview-permissions.sh diff --git a/single_tech_samples/storage/README.md b/archive/single_tech_samples/storage_lifecycle_management/README.md similarity index 100% rename from single_tech_samples/storage/README.md rename to archive/single_tech_samples/storage_lifecycle_management/README.md diff --git a/single_tech_samples/storage/sample1_data_lifecycle/README.md b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/README.md similarity index 97% rename from single_tech_samples/storage/sample1_data_lifecycle/README.md rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/README.md index a86d6bd29..7df53a54a 100644 --- a/single_tech_samples/storage/sample1_data_lifecycle/README.md +++ b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/README.md @@ -147,16 +147,16 @@ After you run the above commands successfully, you should be able to see the fol - Azure Storage Accounts. -![alt text](../common_assets/images/storage_accounts.png "Logo Title Text 1") +![alt text](./images/storage_accounts.png "Logo Title Text 1") It can be observed that the storage accounts’ names have embedded random letters, which makes them unique. This is achieved by using the [azurecaf](https://registry.terraform.io/providers/aztfmod/azurecaf/latest/docs/resources/azurecaf_name) feature. - Azure Storage Containers. -![alt text](../common_assets/images/storage_containers.png "Logo Title Text 1") +![alt text](./images/storage_containers.png "Logo Title Text 1") - Azure data lifecycle rules. -![alt text](../common_assets/images/data_lifecycle_rules.png "Logo Title Text 1") +![alt text](./images/data_lifecycle_rules.png "Logo Title Text 1") ### 2.5. Clean-up diff --git a/single_tech_samples/storage/common_assets/images/data_lifecycle_rules.png b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/data_lifecycle_rules.png similarity index 100% rename from single_tech_samples/storage/common_assets/images/data_lifecycle_rules.png rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/data_lifecycle_rules.png diff --git a/single_tech_samples/storage/common_assets/images/storage_accounts.png b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/storage_accounts.png similarity index 100% rename from single_tech_samples/storage/common_assets/images/storage_accounts.png rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/storage_accounts.png diff --git a/single_tech_samples/storage/common_assets/images/storage_containers.png b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/storage_containers.png similarity index 100% rename from single_tech_samples/storage/common_assets/images/storage_containers.png rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/images/storage_containers.png diff --git a/single_tech_samples/storage/sample1_data_lifecycle/terraform/main.tf b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/main.tf similarity index 100% rename from single_tech_samples/storage/sample1_data_lifecycle/terraform/main.tf rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/main.tf diff --git a/single_tech_samples/storage/sample1_data_lifecycle/terraform/terraform.auto.tfvars b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/terraform.auto.tfvars similarity index 100% rename from single_tech_samples/storage/sample1_data_lifecycle/terraform/terraform.auto.tfvars rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/terraform.auto.tfvars diff --git a/single_tech_samples/storage/sample1_data_lifecycle/terraform/variables.tf b/archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/variables.tf similarity index 100% rename from single_tech_samples/storage/sample1_data_lifecycle/terraform/variables.tf rename to archive/single_tech_samples/storage_lifecycle_management/sample1_data_lifecycle/terraform/variables.tf diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/.envtemplate b/archive/single_tech_samples/synapse_integration_testing/.devcontainer/.envtemplate similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/.envtemplate rename to archive/single_tech_samples/synapse_integration_testing/.devcontainer/.envtemplate diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/Dockerfile b/archive/single_tech_samples/synapse_integration_testing/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/Dockerfile rename to archive/single_tech_samples/synapse_integration_testing/.devcontainer/Dockerfile diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/devcontainer.json b/archive/single_tech_samples/synapse_integration_testing/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/devcontainer.json rename to archive/single_tech_samples/synapse_integration_testing/.devcontainer/devcontainer.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/docker-compose.yml b/archive/single_tech_samples/synapse_integration_testing/.devcontainer/docker-compose.yml similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/.devcontainer/docker-compose.yml rename to archive/single_tech_samples/synapse_integration_testing/.devcontainer/docker-compose.yml diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/README.md b/archive/single_tech_samples/synapse_integration_testing/README.md similarity index 97% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/README.md rename to archive/single_tech_samples/synapse_integration_testing/README.md index 659a20d56..ac0e6e74e 100644 --- a/single_tech_samples/synapseanalytics/sample3_integration_testing/README.md +++ b/archive/single_tech_samples/synapse_integration_testing/README.md @@ -79,7 +79,7 @@ It makes use of the following azure services: - Open the project folder in VS Code. - Rename the file `.envtemplate` under ".devcontainer" folder to `devcontainer.env` and update the values as mentioned below. - Open the project in the Dev Container (see details [here](docs/devcontainer.md)). - - **Alternatively**. You can export the environment variables in the bash terminal after opening the Dev Container or if not using a Dev Contaienr. For example: `export DEPLOYMENT_ID="xxxxx"`. + - **Alternatively**. You can export the environment variables in the bash terminal after opening the Dev Container or if not using a Dev Container. For example: `export DEPLOYMENT_ID="xxxxx"`. -Set the following environment variables: - **AZURE_LOCATION** - Azure location to deploy resources. *Default*: default azure location. @@ -133,7 +133,7 @@ It makes use of the following azure services: - Select "Trigger > Trigger Now". - Enter the name of a file in the storage account in the `datalake` container (upload this file before starting the trigger). - To monitor the run, go to "Monitor > Pipeline runs". - ![Pipeline Run](docs/images/SynapseRun.png?raw=true "Pipeline Run]") + ![Pipeline Run](./docs/images/SynapseRun.png?raw=true "Pipeline Run]") - If a redeployment is required of the Trigger and it has been activated, it will need to be manually deactivated before redeployment will be successful. Congratulations!! 🥳 You have successfully deployed the solution. diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/deploy.sh b/archive/single_tech_samples/synapse_integration_testing/deploy.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/deploy.sh rename to archive/single_tech_samples/synapse_integration_testing/deploy.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/docs/devcontainer.md b/archive/single_tech_samples/synapse_integration_testing/docs/devcontainer.md similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/docs/devcontainer.md rename to archive/single_tech_samples/synapse_integration_testing/docs/devcontainer.md diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/SynapseRun.png b/archive/single_tech_samples/synapse_integration_testing/docs/images/SynapseRun.png similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/SynapseRun.png rename to archive/single_tech_samples/synapse_integration_testing/docs/images/SynapseRun.png diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/devcontainer_build_error.png b/archive/single_tech_samples/synapse_integration_testing/docs/images/devcontainer_build_error.png similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/devcontainer_build_error.png rename to archive/single_tech_samples/synapse_integration_testing/docs/images/devcontainer_build_error.png diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/parking_sensors_dev_container_start.gif b/archive/single_tech_samples/synapse_integration_testing/docs/images/parking_sensors_dev_container_start.gif similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/docs/images/parking_sensors_dev_container_start.gif rename to archive/single_tech_samples/synapse_integration_testing/docs/images/parking_sensors_dev_container_start.gif diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/main.bicep b/archive/single_tech_samples/synapse_integration_testing/infrastructure/main.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/main.bicep rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/main.bicep diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/main.parameters.dev.json b/archive/single_tech_samples/synapse_integration_testing/infrastructure/main.parameters.dev.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/main.parameters.dev.json rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/main.parameters.dev.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/keyvault.bicep b/archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/keyvault.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/keyvault.bicep rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/keyvault.bicep diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/storage.bicep b/archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/storage.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/storage.bicep rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/storage.bicep diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/synapse.bicep b/archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/synapse.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/synapse.bicep rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/synapse.bicep diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/synapse_sql_pool.bicep b/archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/synapse_sql_pool.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/infrastructure/modules/synapse_sql_pool.bicep rename to archive/single_tech_samples/synapse_integration_testing/infrastructure/modules/synapse_sql_pool.bicep diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/clean_up.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/clean_up.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/clean_up.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/clean_up.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/common.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/common.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/common.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/common.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/deploy_infrastructure.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/deploy_infrastructure.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/deploy_infrastructure.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/deploy_infrastructure.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/deploy_synapse_artifacts.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/deploy_synapse_artifacts.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/deploy_synapse_artifacts.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/deploy_synapse_artifacts.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/init_environment.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/init_environment.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/init_environment.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/init_environment.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/verify_prerequisites.sh b/archive/single_tech_samples/synapse_integration_testing/scripts/verify_prerequisites.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/scripts/verify_prerequisites.sh rename to archive/single_tech_samples/synapse_integration_testing/scripts/verify_prerequisites.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/notebook/ETL_sample.ipynb b/archive/single_tech_samples/synapse_integration_testing/synapse/notebook/ETL_sample.ipynb similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/notebook/ETL_sample.ipynb rename to archive/single_tech_samples/synapse_integration_testing/synapse/notebook/ETL_sample.ipynb diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/dataset/Ds_SqlDW_Table_template.json b/archive/single_tech_samples/synapse_integration_testing/synapse/templates/dataset/Ds_SqlDW_Table_template.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/dataset/Ds_SqlDW_Table_template.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/templates/dataset/Ds_SqlDW_Table_template.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/linkedService/Ls_KeyVault_01_template.json b/archive/single_tech_samples/synapse_integration_testing/synapse/templates/linkedService/Ls_KeyVault_01_template.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/linkedService/Ls_KeyVault_01_template.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/templates/linkedService/Ls_KeyVault_01_template.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/pipeline/P_Sample3_template.json b/archive/single_tech_samples/synapse_integration_testing/synapse/templates/pipeline/P_Sample3_template.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/pipeline/P_Sample3_template.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/templates/pipeline/P_Sample3_template.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/trigger/T_Stor_template.json b/archive/single_tech_samples/synapse_integration_testing/synapse/templates/trigger/T_Stor_template.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/templates/trigger/T_Stor_template.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/templates/trigger/T_Stor_template.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataflow/Df_SaveToSQL.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataflow/Df_SaveToSQL.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataflow/Df_SaveToSQL.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataflow/Df_SaveToSQL.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Data.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Data.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Data.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Data.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Interim.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Interim.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Interim.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_AdlsGen2_Interim.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_Egress_Parquet.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_Egress_Parquet.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_Egress_Parquet.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_Egress_Parquet.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_Ingest_CSV.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_Ingest_CSV.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/dataset/Ds_Ingest_CSV.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/dataset/Ds_Ingest_CSV.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/linkedService/Ls_AdlsGen2_01.json b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/linkedService/Ls_AdlsGen2_01.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/linkedService/Ls_AdlsGen2_01.json rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/linkedService/Ls_AdlsGen2_01.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/pipeline/README.md b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/pipeline/README.md similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/pipeline/README.md rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/pipeline/README.md diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/trigger/README.md b/archive/single_tech_samples/synapse_integration_testing/synapse/workspace/trigger/README.md similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/synapse/workspace/trigger/README.md rename to archive/single_tech_samples/synapse_integration_testing/synapse/workspace/trigger/README.md diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/Dockerfile b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/Dockerfile rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/Dockerfile diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/devcontainer.json b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/devcontainer.json rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/devcontainer.json diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/docker-compose.yml b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/docker-compose.yml similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.devcontainer/docker-compose.yml rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.devcontainer/docker-compose.yml diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.envtemplate b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.envtemplate similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/.envtemplate rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/.envtemplate diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/README.md b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/README.md similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/README.md rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/README.md diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/data/dim_date.csv b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/data/dim_date.csv similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/data/dim_date.csv rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/data/dim_date.csv diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/adls.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/adls.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/adls.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/adls.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/local_file.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/local_file.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/local_file.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/local_file.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/sql.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/sql.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/dataconnectors/sql.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/dataconnectors/sql.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/files/processed_parquet_file.parquet b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/files/processed_parquet_file.parquet similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/files/processed_parquet_file.parquet rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/files/processed_parquet_file.parquet diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/requirements.txt b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/requirements.txt similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/requirements.txt rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/requirements.txt diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/setup.cfg b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/setup.cfg similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/setup.cfg rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/setup.cfg diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/__init__.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/__init__.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/__init__.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/conftest.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/conftest.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/conftest.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/conftest.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/test_synapse_pipeline_sample3.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/test_synapse_pipeline_sample3.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/test_synapse_pipeline_sample3.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/tests/test_synapse_pipeline_sample3.py diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/utils/pipelineutils.py b/archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/utils/pipelineutils.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/utils/pipelineutils.py rename to archive/single_tech_samples/synapse_integration_testing/tests/integrationtests/utils/pipelineutils.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.devcontainer/Dockerfile b/archive/single_tech_samples/synapse_loading_dynamic_modules/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.devcontainer/Dockerfile rename to archive/single_tech_samples/synapse_loading_dynamic_modules/.devcontainer/Dockerfile diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.devcontainer/devcontainer.json b/archive/single_tech_samples/synapse_loading_dynamic_modules/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.devcontainer/devcontainer.json rename to archive/single_tech_samples/synapse_loading_dynamic_modules/.devcontainer/devcontainer.json diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.gitignore b/archive/single_tech_samples/synapse_loading_dynamic_modules/.gitignore similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/.gitignore rename to archive/single_tech_samples/synapse_loading_dynamic_modules/.gitignore diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/OrchestratorNotebook.ipynb b/archive/single_tech_samples/synapse_loading_dynamic_modules/OrchestratorNotebook.ipynb similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/OrchestratorNotebook.ipynb rename to archive/single_tech_samples/synapse_loading_dynamic_modules/OrchestratorNotebook.ipynb diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/README.md b/archive/single_tech_samples/synapse_loading_dynamic_modules/README.md similarity index 92% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/README.md rename to archive/single_tech_samples/synapse_loading_dynamic_modules/README.md index cbd5588c3..0d7df4204 100644 --- a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/README.md +++ b/archive/single_tech_samples/synapse_loading_dynamic_modules/README.md @@ -54,7 +54,7 @@ Details about [how to run the pipeline](#24-deployment-validation-and-execution) ### 1.3. Architecture The below diagram illustrates the design and the flow of the system: -![alt text](../Common_Assets/Images/Architecture_design.png "Design Diagram") +![alt text](./images/Architecture_design.png "Design Diagram") ### 1.4. Technologies used @@ -108,7 +108,7 @@ Below listed are the steps to deploy this sample : The script will create the Synapse analytics workspace, Azure storage, Synapse pipelines & Synapse notebook. This script will also upload the sample file to blob storage and wheel packages to the Azure synapse. - ![alt text](../Common_Assets/Images/IAC_Script_Deploy.png "Logo Title Text 1") + ![alt text](./images/IAC_Script_Deploy.png "Logo Title Text 1") ### 2.3. Deployed Resources @@ -116,15 +116,15 @@ The following resources will be deployed as a part of this sample once the scrip 1.Azure Synapse Analytics workspace. -![alt text](../Common_Assets/Images/IAC_Synapse.png "Logo Title Text 1") +![alt text](./images/IAC_Synapse.png "Logo Title Text 1") 2.Azure Storage with sample file. -![alt text](../Common_Assets/Images/IAC_Storage.png "Logo Title Text 1") +![alt text](./images/IAC_Storage.png "Logo Title Text 1") 2.Azure Synapse spark pool with wheel packages. -![alt text](../Common_Assets/Images/IAC_package.png "Logo Title Text 1") +![alt text](./images/IAC_package.png "Logo Title Text 1") ### 2.4. Deployment validation and Execution @@ -140,13 +140,13 @@ The following steps can be performed to validate the correct deployment and exec 1. Launch the Azure synapse workspace & open the synapse pipelines. 2. Select on `DataProcessPipeline` and click on edit configurations for `IterateFiles`(ForEach) activity. - ![alt text](../Common_Assets/Images/spark-pool1.png "Synapse pipeline") + ![alt text](./images/spark-pool1.png "Synapse pipeline") 3. Select `InvokeOrchestratorNotebook` activity and then click on `Setttings` tab and set the Spark pool to `SparkPool1` - ![alt text](../Common_Assets/Images/spark-pool2.png "Synapse spark pool") + ![alt text](./images/spark-pool2.png "Synapse spark pool") 4. Click on debug or trigger to run the pipeline. >Note: As part of deployment, 2 modules have already been uploaded to Azure synapse. - ![alt text](../Common_Assets/Images/pipeline_run.png "Logo Title Text 1") + ![alt text](./images/pipeline_run.png "Logo Title Text 1") - `storageAccountName` is Azure storage account name - `containerName` is Azure blob storage container name @@ -159,14 +159,14 @@ The following steps can be performed to validate the correct deployment and exec - `database`: Input for the spark database ; defaults to `default` value 1. Fill in the parameters as required (or keeping the default values) and run the pipeline. Once the pipeline is successful, you'll see the data in the spark table as defined in the `targetTable` parameter - ![alt text](../Common_Assets/Images/Spark_table_full.png "spark table") + ![alt text](./images/Spark_table_full.png "spark table") 1. Now let's run the same pipeline with another module, keeping everything same except the module name, module coinfiguration and target tables. -![alt text](../Common_Assets/Images/pipeline_run_asia.png "Pipeline run") +![alt text](./images/pipeline_run_asia.png "Pipeline run") 1. Run the pipeline again with the moduleName as `data_filter` & this module will filter the data based on the filter criteria provided in the moduleConfig parameter, which in our case is "Asia" on `region` column. 1. Once pipeline finished, you'll see a new spark table named `country_list_asia` created successfully. -![alt text](../Common_Assets/Images/spark_table_asia.png "Spark Table") +![alt text](./images/spark_table_asia.png "Spark Table") With this you can have generic pipelines which can load transformation modules dynamically based on configurations to process your data. diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/csv_dataset.json b/archive/single_tech_samples/synapse_loading_dynamic_modules/csv_dataset.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/csv_dataset.json rename to archive/single_tech_samples/synapse_loading_dynamic_modules/csv_dataset.json diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/data/country_list.csv b/archive/single_tech_samples/synapse_loading_dynamic_modules/data/country_list.csv similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/data/country_list.csv rename to archive/single_tech_samples/synapse_loading_dynamic_modules/data/country_list.csv diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/Architecture_design.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/Architecture_design.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/Architecture_design.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/Architecture_design.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Script_Deploy.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Script_Deploy.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Script_Deploy.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Script_Deploy.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Storage.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Storage.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Storage.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Storage.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Synapse.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Synapse.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_Synapse.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_Synapse.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_package.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_package.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/IAC_package.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/IAC_package.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/Spark_table_full.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/Spark_table_full.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/Spark_table_full.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/Spark_table_full.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/pipeline_run.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/pipeline_run.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/pipeline_run.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/pipeline_run.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/pipeline_run_asia.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/pipeline_run_asia.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/pipeline_run_asia.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/pipeline_run_asia.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/spark-pool1.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark-pool1.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/spark-pool1.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark-pool1.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/spark-pool2.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark-pool2.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/spark-pool2.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark-pool2.png diff --git a/single_tech_samples/synapseanalytics/Common_Assets/Images/spark_table_asia.png b/archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark_table_asia.png similarity index 100% rename from single_tech_samples/synapseanalytics/Common_Assets/Images/spark_table_asia.png rename to archive/single_tech_samples/synapse_loading_dynamic_modules/images/spark_table_asia.png diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/linked_service.json b/archive/single_tech_samples/synapse_loading_dynamic_modules/linked_service.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/linked_service.json rename to archive/single_tech_samples/synapse_loading_dynamic_modules/linked_service.json diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/README.MD b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/README.MD similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/README.MD rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/README.MD diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/__init__.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/__init__.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/__init__.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/data_filter.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/data_filter.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/data_filter.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/data_filter.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/setup.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/setup.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/setup.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/data_filter/setup.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/README.MD b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/README.MD similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/README.MD rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/README.MD diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/integration/__init__.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/integration/__init__.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/__init__.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/md5.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/md5.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/md5.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/md5.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/setup.py b/archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/setup.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/setup.py rename to archive/single_tech_samples/synapse_loading_dynamic_modules/modules/md5/setup.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/pipeline.json b/archive/single_tech_samples/synapse_loading_dynamic_modules/pipeline.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/pipeline.json rename to archive/single_tech_samples/synapse_loading_dynamic_modules/pipeline.json diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/setup/deploy.sh b/archive/single_tech_samples/synapse_loading_dynamic_modules/setup/deploy.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/setup/deploy.sh rename to archive/single_tech_samples/synapse_loading_dynamic_modules/setup/deploy.sh diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/setup/destroy.sh b/archive/single_tech_samples/synapse_loading_dynamic_modules/setup/destroy.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/setup/destroy.sh rename to archive/single_tech_samples/synapse_loading_dynamic_modules/setup/destroy.sh diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 8b285ddb1..000000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,46 +0,0 @@ -# Nutter pipeline for SparkSQL Tests - -trigger: - branches: - include: - - single-tech/* - -pool: - vmImage: 'ubuntu-latest' - -steps: -- task: UsePythonVersion@0 - inputs: - versionSpec: '3.5' - -- task: configuredatabricks@0 - displayName: 'Configure Databricks CLI' - inputs: - url: $(databricks_host) - token: $(databricks_token) - -- task: deploynotebooks@0 - displayName: 'Publish notebooks to test workspace' - inputs: - notebooksFolderPath: $(notebook_folder_path) - workspaceFolder: $(workspace_folder) - -- script: | - pip install nutter - displayName: 'Install Nutter' - -- script: | - nutter run $SEARCHFOLDER $CLUSTER --recursive --junit_report - displayName: 'Execute Nutter' - env: - SEARCHFOLDER: $(test_search_folder) - CLUSTER: $(clusterID) - DATABRICKS_HOST: $(databricks_host) - DATABRICKS_TOKEN: $(databricks_token) - -- task: PublishTestResults@2 - inputs: - testResultsFormat: 'JUnit' - testResultsFiles: '**/test-*.xml' - testRunTitle: 'Publish Nutter results' - condition: succeededOrFailed() \ No newline at end of file diff --git a/docs/parking_sensors_troubleshooting.md b/docs/parking_sensors_troubleshooting.md index e2de63a58..3b1ec0ea5 100644 --- a/docs/parking_sensors_troubleshooting.md +++ b/docs/parking_sensors_troubleshooting.md @@ -1,14 +1,14 @@ # Troubleshooting - Parking Sensors -## AAD Token expiration +## Microsoft Entra Access Token expiration **Problem**: -AAD token expires prior to deployment completing. +Microsoft Entra access token expires prior to deployment completing. **Solution**: -This error can occur in very rare cases when the deployment takes too long that the AAD token expires. You can try rerunning the `deploy.sh` script. +This error can occur in very rare cases when the deployment takes too long that the Microsoft Entra access token expires. You can try rerunning the `deploy.sh` script. If error persists, you can try deploying one environment at a time. Do this by by navigating `deploy.sh` and changing the following highlighted line (below) from `dev stg prod` to only `dev` first, then running the deployment script. Do the same for `stg` and `prod`. @@ -38,11 +38,11 @@ This error seems to only happen when: 1. Running from the devcontainer. 2. Base OS is Mac. -3. Target AAD tenant has [Conditional Access Policy](https://docs.microsoft.com/en-us/azure/active-directory/conditional-access/overview) turned on. +3. Target Microsoft Entra tenant has [Conditional Access Policy](https://learn.microsoft.com/en-us/entra/identity/conditional-access/overview) turned on. **Solution**: -Assuming that your target AAD tenant Conditional Access Policy supports the base machine OS you are running the deployment process from, you have two potential workarounds: +Assuming that your target Microsoft Entra tenant Conditional Access Policy supports the base machine OS you are running the deployment process from, you have two potential workarounds: - Avoid using the devcontainer. Deploy from base OS. - Generating the databricks_aad_token first prior to running the deployment script, then hard-coding this to the variable `databricks_aad_token` in the `scripts/deploy_infrastructure.sh` script. diff --git a/e2e_samples/parking_sensors/scripts/configure_databricks.sh b/e2e_samples/parking_sensors/scripts/configure_databricks.sh index 6a8f80229..422e88d28 100755 --- a/e2e_samples/parking_sensors/scripts/configure_databricks.sh +++ b/e2e_samples/parking_sensors/scripts/configure_databricks.sh @@ -24,7 +24,7 @@ set -o nounset # REQUIRED VARIABLES: # # DATABRICKS_HOST -# DATABRICKS_TOKEN - this needs to be a Azure AD user token (not PAT token or Azure AD application token that belongs to a service principal) +# DATABRICKS_TOKEN - this needs to be a Microsoft Entra ID user token (not PAT token or Microsoft Entra ID application token that belongs to a service principal) # KEYVAULT_RESOURCE_ID # KEYVAULT_DNS_NAME diff --git a/e2e_samples/parking_sensors/scripts/deploy_infrastructure.sh b/e2e_samples/parking_sensors/scripts/deploy_infrastructure.sh index 16b97fb7b..63e170dcd 100755 --- a/e2e_samples/parking_sensors/scripts/deploy_infrastructure.sh +++ b/e2e_samples/parking_sensors/scripts/deploy_infrastructure.sh @@ -205,7 +205,7 @@ databricks_host=https://$(echo "$arm_output" | jq -r '.properties.outputs.databr databricks_workspace_resource_id=$(echo "$arm_output" | jq -r '.properties.outputs.databricks_id.value') databricks_aad_token=$(az account get-access-token --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d --output json | jq -r .accessToken) # Databricks app global id -# Use AAD token to generate PAT token +# Use Microsoft Entra access token to generate PAT token databricks_token=$(DATABRICKS_TOKEN=$databricks_aad_token \ DATABRICKS_HOST=$databricks_host \ bash -c "databricks tokens create --comment 'deployment'" | jq -r .token_value) @@ -216,7 +216,7 @@ az keyvault secret set --vault-name "$kv_name" --name "databricksToken" --value az keyvault secret set --vault-name "$kv_name" --name "databricksWorkspaceResourceId" --value "$databricks_workspace_resource_id" # Configure databricks (KeyVault-backed Secret scope, mount to storage via SP, databricks tables, cluster) -# NOTE: must use AAD token, not PAT token +# NOTE: must use Microsoft Entra access token, not PAT token DATABRICKS_TOKEN=$databricks_aad_token \ DATABRICKS_HOST=$databricks_host \ KEYVAULT_DNS_NAME=$kv_dns_name \ diff --git a/single_tech_samples/azuresql/README.md b/single_tech_samples/azuresql/README.md index d8d5b27ed..cd65469df 100644 --- a/single_tech_samples/azuresql/README.md +++ b/single_tech_samples/azuresql/README.md @@ -1,193 +1,7 @@ # Azure SQL Database -[Azure SQL Database](https://azure.microsoft.com/en-us/products/azure-sql/database/) is a relational database commonly used in the MDW architecture, typically in the serving layer. The following samples demonstrates how you might build CI/CD pipelines to deploy changes to -Azure SQL Database. +[Azure SQL Database](https://learn.microsoft.com/en-us/azure/azure-sql/database/sql-database-paas-overview?view=azuresql) is a fully managed platform as a service (PaaS) database engine that handles most of the database management functions such as upgrading, patching, backups, and monitoring without user involvement. -## Contents +## Samples -1. [Key Concepts](./README.md#key-concepts) - 1. [Build and Release](./README.md#build-and-release) - 1. [Azure DevOps Pipelines](./README.md#azure-devops-pipelines) - 1. [Validate Pull Request](./README.md#azure-devops-pipelines) - 2. [Build Pipeline](./README.md#azure-devops-pipelines) - 3. [Simple Multi-stage Pipeline](./README.md#azure-devops-pipelines) - 4. [Multi-stage Pipeline with pre-deployment test](./README.md#azure-devops-pipelines) - 2. [Github Actions Pipelines (coming soon)](./README.md#github-actions-pipelines) - 2. [Testing](./README.md#testing) - 3. [Observability and Monitoring](./README.md#observability-and-monitoring) -2. [How to use the samples](./README.md#how-to-use-the-samples) - 1. [Prerequisites](./README.md#prerequisites) - 2. [Setup and Deployment](./README.md#setup-and-deployment) - 3. [Deployed resources](./README.md#deployed-resources) - 4. [Running the samples](./README.md#running-the-samples) - 1. [Releasing a change through the simple multi-stage pipeline](./README.md#releasing-a-change-through-the-simple-multi-stage-pipeline) - 5. [Cleanup](./README.md#cleanup) - ---------------------- - -## Key concepts - -### Build and Release (CI/CD) - -#### Azure DevOps Pipelines - -The following are some sample [Azure DevOps](https://docs.microsoft.com/en-us/azure/devops/?view=azure-devops) pipelines. To deploy these samples, see [How to use the samples](./README.md#how-to-use-the-samples). - -1. **Validate Pull Request** [[azure-pipelines-01-validate-pr](pipelines/azure-pipelines-01-validate-pr.yml)] - - This pipeline builds the [DACPAC](https://docs.microsoft.com/en-us/sql/relational-databases/data-tier-applications/data-tier-applications?view=sql-server-ver15) and runs tests (if any). This is triggered only on PRs and is used to validate them before merging into `main`. This pipeline does not produce any artifacts. - -2. **Build Pipeline** [[azure-pipelines-02-build](pipelines/azure-pipelines-02-build.yml)] - - This pipeline builds the DACPAC and publishes it as a [Build Artifact](https://docs.microsoft.com/en-us/azure/devops/pipelines/artifacts/build-artifacts?view=azure-devops&tabs=yaml). Its purpose is to produce the Build Artifact that may be consumed by a[Release Pipeline (classic)](https://docs.microsoft.com/en-us/azure/devops/pipelines/release/?view=azure-devops). - -3. **Simple Multi-Stage Pipeline** [[azure-pipelines-03-simple-multi-stage](pipelines/azure-pipelines-03-simple-multi-stage.yml)] - - This pipeline demonstrates a simple [multi-stage pipeline](https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/multi-stage-pipelines-experience?view=azure-devops). - - It has two stages: - 1. Build - builds the DACPAC and creates a [Pipeline Artifact](https://docs.microsoft.com/en-us/azure/devops/pipelines/artifacts/pipeline-artifacts?view=azure-devops&tabs=yaml). - 2. Deploy - deploys the DACPAC to a target AzureSQL instance. - - Required Pipeline Variables: - - **AZURESQL_SERVER_NAME** - Name of the AzureSQL server (ei. myserver.database.windows.net) - - **AZURESQL_DB_NAME** - Name of the AzureSQL Database - - **AZURESQL_SERVER_USERNAME** - Username of AzureSQL login - - **AZURESQL_SERVER_PASSWORD** - Password of AzureSQL login - -4. **Multi-Stage Pipeline with pre-deployment test** [[azure-pipelines-04-multi-stage-predeploy-test](pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml)] - - This pipeline expands on the simple multi-stage pipeline by introducing a middle pipeline stage which deploys the DACPAC first to a freshly restored copy of the production database prior to deployment to production. It has the ff. stages: - 1. Build - 2. Deploy to Test - 1. Restore Prod Db to Test Db. - 2. Deploy DACPAC to Test Db. - 3. Teardown Test Db. - 3. Deploy to Prod - - This mimics, to a certain extent, a production release, as it is applying the expected changes to a copy of the production database. It also allows for potentially running additional tests run in this environment, along with capturing common schema change errors such as adding a non-nullable column without a default value. - - Important considerations: - - Depending on the size and pricing tier of your Production AzureSQL database, a restore might take several minutes to several hours. Consider batching changes and running this pipeline on a schedule (such as nightly) instead on every commit to `main`. - - For simplicity purposes, the Test database is deployed in the same logical server as Production, however, in reality these should be completely separate servers. - -### Testing - -- [Create a Test Project for SQL Server Database Unit Testing](https://docs.microsoft.com/en-us/sql/ssdt/how-to-create-a-test-project-for-sql-server-database-unit-testing?view=sql-server-ver15) - -### Observability / Monitoring - -- [AzureSQL Database monitoring and tuning](https://docs.microsoft.com/en-us/azure/sql-database/sql-database-monitoring-tuning-index) - -## How to use the samples - -### Prerequisites - -1. [Github account](https://github.com/) -2. [Azure Account](https://azure.microsoft.com/en-us/free/) - - *Permissions needed*: ability to create and deploy to an azure [resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview), a [service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/app-objects-and-service-principals), and grant the [collaborator role](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) to the service principal over the resource group. -3. [Azure DevOps Account](https://azure.microsoft.com/en-us/products/devops/) - - *Permissions needed*: ability to create [service connections](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml) and [pipelines](https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/pipelines-get-started?view=azure-devops&tabs=yaml). - -#### Software Prerequisites - -1. For Windows users, [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) -2. [Azure CLI 2.0.49+](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest) -3. [Azure DevOps CLI](https://marketplace.visualstudio.com/items?itemName=ms-vsts.cli) -4. [jq](https://stedolan.github.io/jq/) -5. For editing AzureSQL objects, [Visual Studio 2019](https://visualstudio.microsoft.com/vs/). For earlier version of Visual Studio, you may need to install [SQL Server Data Tools](https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15) separately. - -### Setup and deployment - -To setup the samples, run the following: - -1. Ensure that: - - You are logged in to the Azure CLI. To login, run `az login`. - - Azure CLI is targeting the Azure Subscription you want to deploy the resources to. - - To set target Azure Subscription, run `az account set -s ` - - Azure CLI is targeting the Azure DevOps organization and project you want to deploy the pipelines to. - - To set target Azure DevOps project, run `az devops configure --defaults organization=https://dev.azure.com/MY_ORG/ project=MY_PROJECT` -2. Fork* and clone this repository. `cd` in to `single_tech_samples/azuresql`. -3. Set the following environment variables: - 1. **GITHUB_REPO_URL** - URL of your forked github repo - 2. **GITHUB_PAT_TOKEN** - a Github PAT token. Generate them [here](https://github.com/settings/tokens). This requires "repo" scope. - Optionally, set the following environment variables - 1. **DEPLOYMENT_ID** - string appended to all resource names. *Default*: random five character string. - 2. **BRANCH_NAME**** - git branch with Azure DevOps pipelines definitions to deploy. *Default*: main. - 3. **RESOURCE_GROUP_NAME** - target resource group to deploy to - 4. **RESOURCE_GROUP_LOCATION** - location of target resource group - 5. **AZURESQL_SERVER_PASSWORD** - Password of the admin account for your AzureSQL server instance. Default: mdw-dataops-SqlP@ss-${DEPLOYMENT_ID} - 1. Username is set to *sqlAdmin*. -4. Run `./deploy.sh`.*** - -#### Additional notes - -**Your forked repo will serve as the main repository which triggers all pipelines -- allowing you complete control over the sample solution as compared to using the main Azure-Samples repository directly. All pipeline definitions are also pulled from this fork*. - -***The pipelines are deployed to use the `main` branch by default. This can be inconvenient when working on the pipelines in a different branch. You can set the BRANCH_NAME environment variable to override this behaviour. This makes it easier to test changes to your pipeline file. Be sure to push the changes in your yaml file to your repo before running the deployment script. Note that it does not change branch triggers.* - -****Note that in case of any errors midway through the script, in order to rerun the deployment, you may need to perform some cleanup of any deployed resources. See [Cleanup](./README.md#Cleanup -) below.* - -### Deployed resources - -Once you've setup the sample, you should have the following deployed: - -1. Azure resource group with a AzureSQL server and database called `salesdb`. - ![azuresql_azure_resources](./docs/images/azuresql_azure_resources.PNG) - -2. A service principal with collaborator rights over the deployed resource group. - -3. Two Azure DevOps service connections found under `Project Settings > Service Connections`: - 1. **mdw-dataops-azure** - An AzureRM service connection configured with the Service Principal. This is used to deploy to the AzureSQL database. - 2. **github-mdw-dataops** - A Github service connection used to pull from the forked repository. It uses the Github PAT token to authenticate. - - ![azuresql_devops_service_connections](./docs/images/azuresql_service_connections.PNG) - -4. Three Azure DevOps pipelines found under `Pipelines > Builds`. See [Key concepts/Azure DevOps Pipelines](./README.md#Azure-DevOps-Pipelines) below for explanation of each: - 1. azuresql-validate-pr - 2. azuresql-build - 3. azuresql-simple-multi-stage - - ![azuresql_devops_pipelines](./docs/images/azuresql_pipelines.PNG). - Each of the pipelines should have run (or is currently running) at least once. - -### Running the samples - -#### Releasing a change through the simple multi-stage pipeline - -The following shows how to deploy changes to the AzureSQL database using the CI/CD pipelines. - -1. In local clone of your forked repo, create a local branch of `main` and call it `dev/sample_change`. Checkout this branch. - - ![azuresql_git_checkout](./docs/images/azuresql_gitbranchcheckout.PNG) - -2. Open the Visual Studio solution `src/ddo_samples_azuresql.sln`. - -3. Add a new CompanyAddress column to the `SaleLT.Customer` table, as seen below. - - ![azuresql_add_column](./docs/images/azuresql_addcolumn.PNG) - -4. Commit and push the change to the remote branch in Github. - - ![azuresql_add_column](./docs/images/azuresql_gitcommitpush.PNG) - -5. Raise a Pull Request to merge `dev/sample_change` to `main`. This should trigger the the `azuresql-validate-pr` pipeline. - - ![azuresql_pr_validation](./docs/images/azuresql_prvalidation.PNG) - -6. Typically, a code review would take place. After this, merge changes to `main` by completing the Pull Request. This should trigger the `azuresql-build` and `azuresql-simple-multi-stage`. - - ![azuresql_pr_validation](./docs/images/azuresql_builds.PNG) - -7. In Azure DevOps, navigate to the `azuresql-simple-muli-stage` pipeline run. The second stage of this pipeline will deploy the changes to the AzureSQL Database. - - ![azuresql_release](./docs/images/azuresql_release.PNG) - -8. Connect to the AzureSQL Database. Notice that the new column has been deployed. - - ![azuresql_viewchanges](./docs/images/azuresql_viewchanges.PNG) - -Congratulations! You've deployed changes via CI/CD process. - -### Cleanup - -1. [Delete the Azure resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-portal#delete-resources). -2. Delete Azure DevOps Pipelines. - 1. To delete via Web Portal, navigate to `Pipelines > Builds`. Delete the pipeline, click on the triple dots, and select delete. - 2. To delete via CLI, run `az pipelines list` to list ids. Then `az pipelines delete --id PIPELINE_ID`. -3. Delete Azure DevOps service connections. - 1. To delete via Web Portal, navigate to `Project Settings > Service Connections`. Select the connection, click on the triple dots, and select delete. - 2. To delete via CLI, run `az devops service-endpoint list` to list ids. Then `az devops service-endpoint delete --id SERVICE_ENDPOINT_ID`. +- [CI/CD - Azure SQL database](./azuresql_ci_cd/README.md) - This sample demonstrates how to implement a CI/CD process for Azure SQL database using Azure DevOps. diff --git a/single_tech_samples/azuresql/azuresql_ci_cd/README.md b/single_tech_samples/azuresql/azuresql_ci_cd/README.md new file mode 100644 index 000000000..d8d5b27ed --- /dev/null +++ b/single_tech_samples/azuresql/azuresql_ci_cd/README.md @@ -0,0 +1,193 @@ +# Azure SQL Database + +[Azure SQL Database](https://azure.microsoft.com/en-us/products/azure-sql/database/) is a relational database commonly used in the MDW architecture, typically in the serving layer. The following samples demonstrates how you might build CI/CD pipelines to deploy changes to +Azure SQL Database. + +## Contents + +1. [Key Concepts](./README.md#key-concepts) + 1. [Build and Release](./README.md#build-and-release) + 1. [Azure DevOps Pipelines](./README.md#azure-devops-pipelines) + 1. [Validate Pull Request](./README.md#azure-devops-pipelines) + 2. [Build Pipeline](./README.md#azure-devops-pipelines) + 3. [Simple Multi-stage Pipeline](./README.md#azure-devops-pipelines) + 4. [Multi-stage Pipeline with pre-deployment test](./README.md#azure-devops-pipelines) + 2. [Github Actions Pipelines (coming soon)](./README.md#github-actions-pipelines) + 2. [Testing](./README.md#testing) + 3. [Observability and Monitoring](./README.md#observability-and-monitoring) +2. [How to use the samples](./README.md#how-to-use-the-samples) + 1. [Prerequisites](./README.md#prerequisites) + 2. [Setup and Deployment](./README.md#setup-and-deployment) + 3. [Deployed resources](./README.md#deployed-resources) + 4. [Running the samples](./README.md#running-the-samples) + 1. [Releasing a change through the simple multi-stage pipeline](./README.md#releasing-a-change-through-the-simple-multi-stage-pipeline) + 5. [Cleanup](./README.md#cleanup) + +--------------------- + +## Key concepts + +### Build and Release (CI/CD) + +#### Azure DevOps Pipelines + +The following are some sample [Azure DevOps](https://docs.microsoft.com/en-us/azure/devops/?view=azure-devops) pipelines. To deploy these samples, see [How to use the samples](./README.md#how-to-use-the-samples). + +1. **Validate Pull Request** [[azure-pipelines-01-validate-pr](pipelines/azure-pipelines-01-validate-pr.yml)] + - This pipeline builds the [DACPAC](https://docs.microsoft.com/en-us/sql/relational-databases/data-tier-applications/data-tier-applications?view=sql-server-ver15) and runs tests (if any). This is triggered only on PRs and is used to validate them before merging into `main`. This pipeline does not produce any artifacts. + +2. **Build Pipeline** [[azure-pipelines-02-build](pipelines/azure-pipelines-02-build.yml)] + - This pipeline builds the DACPAC and publishes it as a [Build Artifact](https://docs.microsoft.com/en-us/azure/devops/pipelines/artifacts/build-artifacts?view=azure-devops&tabs=yaml). Its purpose is to produce the Build Artifact that may be consumed by a[Release Pipeline (classic)](https://docs.microsoft.com/en-us/azure/devops/pipelines/release/?view=azure-devops). + +3. **Simple Multi-Stage Pipeline** [[azure-pipelines-03-simple-multi-stage](pipelines/azure-pipelines-03-simple-multi-stage.yml)] + - This pipeline demonstrates a simple [multi-stage pipeline](https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/multi-stage-pipelines-experience?view=azure-devops). + - It has two stages: + 1. Build - builds the DACPAC and creates a [Pipeline Artifact](https://docs.microsoft.com/en-us/azure/devops/pipelines/artifacts/pipeline-artifacts?view=azure-devops&tabs=yaml). + 2. Deploy - deploys the DACPAC to a target AzureSQL instance. + - Required Pipeline Variables: + - **AZURESQL_SERVER_NAME** - Name of the AzureSQL server (ei. myserver.database.windows.net) + - **AZURESQL_DB_NAME** - Name of the AzureSQL Database + - **AZURESQL_SERVER_USERNAME** - Username of AzureSQL login + - **AZURESQL_SERVER_PASSWORD** - Password of AzureSQL login + +4. **Multi-Stage Pipeline with pre-deployment test** [[azure-pipelines-04-multi-stage-predeploy-test](pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml)] + - This pipeline expands on the simple multi-stage pipeline by introducing a middle pipeline stage which deploys the DACPAC first to a freshly restored copy of the production database prior to deployment to production. It has the ff. stages: + 1. Build + 2. Deploy to Test + 1. Restore Prod Db to Test Db. + 2. Deploy DACPAC to Test Db. + 3. Teardown Test Db. + 3. Deploy to Prod + - This mimics, to a certain extent, a production release, as it is applying the expected changes to a copy of the production database. It also allows for potentially running additional tests run in this environment, along with capturing common schema change errors such as adding a non-nullable column without a default value. + - Important considerations: + - Depending on the size and pricing tier of your Production AzureSQL database, a restore might take several minutes to several hours. Consider batching changes and running this pipeline on a schedule (such as nightly) instead on every commit to `main`. + - For simplicity purposes, the Test database is deployed in the same logical server as Production, however, in reality these should be completely separate servers. + +### Testing + +- [Create a Test Project for SQL Server Database Unit Testing](https://docs.microsoft.com/en-us/sql/ssdt/how-to-create-a-test-project-for-sql-server-database-unit-testing?view=sql-server-ver15) + +### Observability / Monitoring + +- [AzureSQL Database monitoring and tuning](https://docs.microsoft.com/en-us/azure/sql-database/sql-database-monitoring-tuning-index) + +## How to use the samples + +### Prerequisites + +1. [Github account](https://github.com/) +2. [Azure Account](https://azure.microsoft.com/en-us/free/) + - *Permissions needed*: ability to create and deploy to an azure [resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview), a [service principal](https://docs.microsoft.com/en-us/azure/active-directory/develop/app-objects-and-service-principals), and grant the [collaborator role](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) to the service principal over the resource group. +3. [Azure DevOps Account](https://azure.microsoft.com/en-us/products/devops/) + - *Permissions needed*: ability to create [service connections](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml) and [pipelines](https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started/pipelines-get-started?view=azure-devops&tabs=yaml). + +#### Software Prerequisites + +1. For Windows users, [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10) +2. [Azure CLI 2.0.49+](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest) +3. [Azure DevOps CLI](https://marketplace.visualstudio.com/items?itemName=ms-vsts.cli) +4. [jq](https://stedolan.github.io/jq/) +5. For editing AzureSQL objects, [Visual Studio 2019](https://visualstudio.microsoft.com/vs/). For earlier version of Visual Studio, you may need to install [SQL Server Data Tools](https://docs.microsoft.com/en-us/sql/ssdt/download-sql-server-data-tools-ssdt?view=sql-server-ver15) separately. + +### Setup and deployment + +To setup the samples, run the following: + +1. Ensure that: + - You are logged in to the Azure CLI. To login, run `az login`. + - Azure CLI is targeting the Azure Subscription you want to deploy the resources to. + - To set target Azure Subscription, run `az account set -s ` + - Azure CLI is targeting the Azure DevOps organization and project you want to deploy the pipelines to. + - To set target Azure DevOps project, run `az devops configure --defaults organization=https://dev.azure.com/MY_ORG/ project=MY_PROJECT` +2. Fork* and clone this repository. `cd` in to `single_tech_samples/azuresql`. +3. Set the following environment variables: + 1. **GITHUB_REPO_URL** - URL of your forked github repo + 2. **GITHUB_PAT_TOKEN** - a Github PAT token. Generate them [here](https://github.com/settings/tokens). This requires "repo" scope. + Optionally, set the following environment variables + 1. **DEPLOYMENT_ID** - string appended to all resource names. *Default*: random five character string. + 2. **BRANCH_NAME**** - git branch with Azure DevOps pipelines definitions to deploy. *Default*: main. + 3. **RESOURCE_GROUP_NAME** - target resource group to deploy to + 4. **RESOURCE_GROUP_LOCATION** - location of target resource group + 5. **AZURESQL_SERVER_PASSWORD** - Password of the admin account for your AzureSQL server instance. Default: mdw-dataops-SqlP@ss-${DEPLOYMENT_ID} + 1. Username is set to *sqlAdmin*. +4. Run `./deploy.sh`.*** + +#### Additional notes + +**Your forked repo will serve as the main repository which triggers all pipelines -- allowing you complete control over the sample solution as compared to using the main Azure-Samples repository directly. All pipeline definitions are also pulled from this fork*. + +***The pipelines are deployed to use the `main` branch by default. This can be inconvenient when working on the pipelines in a different branch. You can set the BRANCH_NAME environment variable to override this behaviour. This makes it easier to test changes to your pipeline file. Be sure to push the changes in your yaml file to your repo before running the deployment script. Note that it does not change branch triggers.* + +****Note that in case of any errors midway through the script, in order to rerun the deployment, you may need to perform some cleanup of any deployed resources. See [Cleanup](./README.md#Cleanup +) below.* + +### Deployed resources + +Once you've setup the sample, you should have the following deployed: + +1. Azure resource group with a AzureSQL server and database called `salesdb`. + ![azuresql_azure_resources](./docs/images/azuresql_azure_resources.PNG) + +2. A service principal with collaborator rights over the deployed resource group. + +3. Two Azure DevOps service connections found under `Project Settings > Service Connections`: + 1. **mdw-dataops-azure** - An AzureRM service connection configured with the Service Principal. This is used to deploy to the AzureSQL database. + 2. **github-mdw-dataops** - A Github service connection used to pull from the forked repository. It uses the Github PAT token to authenticate. + + ![azuresql_devops_service_connections](./docs/images/azuresql_service_connections.PNG) + +4. Three Azure DevOps pipelines found under `Pipelines > Builds`. See [Key concepts/Azure DevOps Pipelines](./README.md#Azure-DevOps-Pipelines) below for explanation of each: + 1. azuresql-validate-pr + 2. azuresql-build + 3. azuresql-simple-multi-stage + + ![azuresql_devops_pipelines](./docs/images/azuresql_pipelines.PNG). + Each of the pipelines should have run (or is currently running) at least once. + +### Running the samples + +#### Releasing a change through the simple multi-stage pipeline + +The following shows how to deploy changes to the AzureSQL database using the CI/CD pipelines. + +1. In local clone of your forked repo, create a local branch of `main` and call it `dev/sample_change`. Checkout this branch. + + ![azuresql_git_checkout](./docs/images/azuresql_gitbranchcheckout.PNG) + +2. Open the Visual Studio solution `src/ddo_samples_azuresql.sln`. + +3. Add a new CompanyAddress column to the `SaleLT.Customer` table, as seen below. + + ![azuresql_add_column](./docs/images/azuresql_addcolumn.PNG) + +4. Commit and push the change to the remote branch in Github. + + ![azuresql_add_column](./docs/images/azuresql_gitcommitpush.PNG) + +5. Raise a Pull Request to merge `dev/sample_change` to `main`. This should trigger the the `azuresql-validate-pr` pipeline. + + ![azuresql_pr_validation](./docs/images/azuresql_prvalidation.PNG) + +6. Typically, a code review would take place. After this, merge changes to `main` by completing the Pull Request. This should trigger the `azuresql-build` and `azuresql-simple-multi-stage`. + + ![azuresql_pr_validation](./docs/images/azuresql_builds.PNG) + +7. In Azure DevOps, navigate to the `azuresql-simple-muli-stage` pipeline run. The second stage of this pipeline will deploy the changes to the AzureSQL Database. + + ![azuresql_release](./docs/images/azuresql_release.PNG) + +8. Connect to the AzureSQL Database. Notice that the new column has been deployed. + + ![azuresql_viewchanges](./docs/images/azuresql_viewchanges.PNG) + +Congratulations! You've deployed changes via CI/CD process. + +### Cleanup + +1. [Delete the Azure resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resources-portal#delete-resources). +2. Delete Azure DevOps Pipelines. + 1. To delete via Web Portal, navigate to `Pipelines > Builds`. Delete the pipeline, click on the triple dots, and select delete. + 2. To delete via CLI, run `az pipelines list` to list ids. Then `az pipelines delete --id PIPELINE_ID`. +3. Delete Azure DevOps service connections. + 1. To delete via Web Portal, navigate to `Project Settings > Service Connections`. Select the connection, click on the triple dots, and select delete. + 2. To delete via CLI, run `az devops service-endpoint list` to list ids. Then `az devops service-endpoint delete --id SERVICE_ENDPOINT_ID`. diff --git a/single_tech_samples/azuresql/deploy.sh b/single_tech_samples/azuresql/azuresql_ci_cd/deploy.sh similarity index 100% rename from single_tech_samples/azuresql/deploy.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/deploy.sh diff --git a/single_tech_samples/azuresql/docs/images/azuresql_addcolumn.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_addcolumn.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_addcolumn.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_addcolumn.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_azure_resources.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_azure_resources.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_azure_resources.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_azure_resources.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_builds.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_builds.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_builds.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_builds.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_gitbranchcheckout.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_gitbranchcheckout.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_gitbranchcheckout.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_gitbranchcheckout.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_gitcommitpush.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_gitcommitpush.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_gitcommitpush.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_gitcommitpush.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_pipelines.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_pipelines.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_pipelines.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_pipelines.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_prvalidation.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_prvalidation.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_prvalidation.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_prvalidation.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_release.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_release.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_release.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_release.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_service_connections.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_service_connections.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_service_connections.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_service_connections.PNG diff --git a/single_tech_samples/azuresql/docs/images/azuresql_viewchanges.PNG b/single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_viewchanges.PNG similarity index 100% rename from single_tech_samples/azuresql/docs/images/azuresql_viewchanges.PNG rename to single_tech_samples/azuresql/azuresql_ci_cd/docs/images/azuresql_viewchanges.PNG diff --git a/single_tech_samples/azuresql/infrastructure/azuredeploy.json b/single_tech_samples/azuresql/azuresql_ci_cd/infrastructure/azuredeploy.json similarity index 100% rename from single_tech_samples/azuresql/infrastructure/azuredeploy.json rename to single_tech_samples/azuresql/azuresql_ci_cd/infrastructure/azuredeploy.json diff --git a/single_tech_samples/azuresql/pipelines/azure-pipelines-01-validate-pr.yml b/single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-01-validate-pr.yml similarity index 100% rename from single_tech_samples/azuresql/pipelines/azure-pipelines-01-validate-pr.yml rename to single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-01-validate-pr.yml diff --git a/single_tech_samples/azuresql/pipelines/azure-pipelines-02-build.yml b/single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-02-build.yml similarity index 100% rename from single_tech_samples/azuresql/pipelines/azure-pipelines-02-build.yml rename to single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-02-build.yml diff --git a/single_tech_samples/azuresql/pipelines/azure-pipelines-03-simple-multi-stage.yml b/single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-03-simple-multi-stage.yml similarity index 100% rename from single_tech_samples/azuresql/pipelines/azure-pipelines-03-simple-multi-stage.yml rename to single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-03-simple-multi-stage.yml diff --git a/single_tech_samples/azuresql/pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml b/single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml similarity index 100% rename from single_tech_samples/azuresql/pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml rename to single_tech_samples/azuresql/azuresql_ci_cd/pipelines/azure-pipelines-04-multi-stage-predeploy-test.yml diff --git a/single_tech_samples/azuresql/scripts/clean_up.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/clean_up.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/clean_up.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/clean_up.sh diff --git a/single_tech_samples/azuresql/scripts/common.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/common.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/common.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/common.sh diff --git a/single_tech_samples/azuresql/scripts/deploy_azure_pipelines_01_validate_pr.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_01_validate_pr.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/deploy_azure_pipelines_01_validate_pr.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_01_validate_pr.sh diff --git a/single_tech_samples/azuresql/scripts/deploy_azure_pipelines_02_build.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_02_build.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/deploy_azure_pipelines_02_build.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_02_build.sh diff --git a/single_tech_samples/azuresql/scripts/deploy_azure_pipelines_03_simple_multi_stage.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_03_simple_multi_stage.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/deploy_azure_pipelines_03_simple_multi_stage.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_03_simple_multi_stage.sh diff --git a/single_tech_samples/azuresql/scripts/deploy_azure_pipelines_04_multi_stage_predeploy_test.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_04_multi_stage_predeploy_test.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/deploy_azure_pipelines_04_multi_stage_predeploy_test.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/deploy_azure_pipelines_04_multi_stage_predeploy_test.sh diff --git a/single_tech_samples/azuresql/scripts/init_environment.sh b/single_tech_samples/azuresql/azuresql_ci_cd/scripts/init_environment.sh similarity index 100% rename from single_tech_samples/azuresql/scripts/init_environment.sh rename to single_tech_samples/azuresql/azuresql_ci_cd/scripts/init_environment.sh diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql.sln b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql.sln similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql.sln rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql.sln diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Sequences/SalesOrderNumber.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Sequences/SalesOrderNumber.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Sequences/SalesOrderNumber.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Sequences/SalesOrderNumber.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Address.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Address.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Address.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Address.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Customer.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Customer.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Customer.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Customer.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/CustomerAddress.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/CustomerAddress.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/CustomerAddress.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/CustomerAddress.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Product.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Product.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Product.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/Product.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductCategory.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductCategory.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductCategory.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductCategory.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductDescription.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductDescription.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductDescription.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductDescription.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModel.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModel.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModel.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModel.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModelProductDescription.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModelProductDescription.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModelProductDescription.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/ProductModelProductDescription.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderDetail.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderDetail.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderDetail.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderDetail.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderHeader.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderHeader.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderHeader.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Tables/SalesOrderHeader.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vGetAllCategories.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vGetAllCategories.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vGetAllCategories.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vGetAllCategories.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductAndDescription.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductAndDescription.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductAndDescription.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductAndDescription.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductModelCatalogDescription.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductModelCatalogDescription.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductModelCatalogDescription.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/SalesLT/Views/vProductModelCatalogDescription.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/Security/SalesLT.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/Security/SalesLT.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/Security/SalesLT.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/Security/SalesLT.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetAllCategories.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetAllCategories.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetAllCategories.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetAllCategories.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetCustomerInformation.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetCustomerInformation.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetCustomerInformation.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetCustomerInformation.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetSalesOrderStatusText.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetSalesOrderStatusText.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetSalesOrderStatusText.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Functions/ufnGetSalesOrderStatusText.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspLogError.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspLogError.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspLogError.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspLogError.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspPrintError.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspPrintError.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspPrintError.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Stored Procedures/uspPrintError.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/BuildVersion.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/BuildVersion.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/BuildVersion.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/BuildVersion.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/ErrorLog.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/ErrorLog.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/ErrorLog.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/Tables/ErrorLog.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/AccountNumber.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/AccountNumber.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/AccountNumber.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/AccountNumber.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Flag.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Flag.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Flag.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Flag.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Name.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Name.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Name.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Name.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/NameStyle.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/NameStyle.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/NameStyle.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/NameStyle.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/OrderNumber.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/OrderNumber.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/OrderNumber.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/OrderNumber.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Phone.sql b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Phone.sql similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Phone.sql rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/dbo/User Defined Types/Phone.sql diff --git a/single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/ddo_samples_azuresql.sqlproj b/single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/ddo_samples_azuresql.sqlproj similarity index 100% rename from single_tech_samples/azuresql/src/ddo_samples_azuresql/ddo_samples_azuresql/ddo_samples_azuresql.sqlproj rename to single_tech_samples/azuresql/azuresql_ci_cd/src/ddo_samples_azuresql/ddo_samples_azuresql/ddo_samples_azuresql.sqlproj diff --git a/single_tech_samples/cosmosdb/README.md b/single_tech_samples/cosmosdb/README.md deleted file mode 100644 index 5a4f72874..000000000 --- a/single_tech_samples/cosmosdb/README.md +++ /dev/null @@ -1,17 +0,0 @@ -# Cosmos DB - -WIP - -## Prerequisites - -## Setup - -## Running the sample - -## Key concepts - -### Build and Release (CI/CD) - -### Testing - -### Observability / Monitoring diff --git a/single_tech_samples/databricks/Makefile b/single_tech_samples/databricks/Makefile deleted file mode 100644 index 6d1df5715..000000000 --- a/single_tech_samples/databricks/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -lint: - find . -name \*.md -exec markdown-link-check {} \; \ No newline at end of file diff --git a/single_tech_samples/databricks/README.md b/single_tech_samples/databricks/README.md index 253c09584..94d89fbbc 100644 --- a/single_tech_samples/databricks/README.md +++ b/single_tech_samples/databricks/README.md @@ -1,19 +1,7 @@ # Azure Databricks -[![Generic badge](Common_Assets/Images/Status-Active.svg)](https://github.com/Azure-Samples/modern-data-warehouse-dataops/commits/main/single_tech_samples/databricks) -[![GitHub license](Common_Assets/Images/MIT.svg)](https://github.com/Azure-Samples/modern-data-warehouse-dataops/blob/main/LICENSE) -[![Open Source? Yes!](Common_Assets/Images/Open_Source.svg)](https://opensource.microsoft.com/codeofconduct/) - [Azure Databricks](https://docs.microsoft.com/en-us/azure/databricks/) is a data analytics platform optimized for the Microsoft Azure cloud services platform which lets you set up your Apache Spark™ environment in minutes, and enable you to autoscale, and collaborate on shared projects in an interactive workspace. ## Samples -Following is the list of samples associated with automating the deployment of Azure Databricks Service: - -1. [Basic deployment of an Azure Databricks environment using ARM templates](sample1_basic_azure_databricks_environment/README.md) -2. [Enterprise grade deployment of Azure Databricks environment aligning to Data Exfiltration Protection Reference Architecture](sample2_enterprise_azure_databricks_environment/README.md) -3. [Cluster provisioning and enabling data access on a pre-provisioned Azure Databricks Workspace](sample3_cluster_provisioning_and_data_access/README.md) - ------------------------ ------------------------------------ -**_NOTE:_** These samples are built using a selection of programming languages and services which is well adopted by the enterprise customers. Developers can leverage other technologies to achieve the same objective. Please refer to the [documentation](https://docs.microsoft.com/en-us/azure/databricks/) for further details on the supported technologies. ------------------------ ------------------------------------ +- [IaC deployment of Azure Databricks](./databricks_ci_cd/README.md) - This sample demonstrates how to deploy an Azure Databricks environment using ARM templates. diff --git a/single_tech_samples/databricks/sample4_ci_cd/.dbx/lock.json b/single_tech_samples/databricks/databricks_ci_cd/.dbx/lock.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.dbx/lock.json rename to single_tech_samples/databricks/databricks_ci_cd/.dbx/lock.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/.dbx/project.json b/single_tech_samples/databricks/databricks_ci_cd/.dbx/project.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.dbx/project.json rename to single_tech_samples/databricks/databricks_ci_cd/.dbx/project.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/.devcontainer/Dockerfile b/single_tech_samples/databricks/databricks_ci_cd/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.devcontainer/Dockerfile rename to single_tech_samples/databricks/databricks_ci_cd/.devcontainer/Dockerfile diff --git a/single_tech_samples/databricks/sample4_ci_cd/.devcontainer/devcontainer.json b/single_tech_samples/databricks/databricks_ci_cd/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.devcontainer/devcontainer.json rename to single_tech_samples/databricks/databricks_ci_cd/.devcontainer/devcontainer.json diff --git a/single_tech_samples/databricks/databricks_ci_cd/.devcontainer/settings.vscode.json b/single_tech_samples/databricks/databricks_ci_cd/.devcontainer/settings.vscode.json new file mode 100644 index 000000000..8ad19d5bb --- /dev/null +++ b/single_tech_samples/databricks/databricks_ci_cd/.devcontainer/settings.vscode.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "/usr/local/bin/python" +} \ No newline at end of file diff --git a/single_tech_samples/databricks/sample4_ci_cd/.gitignore b/single_tech_samples/databricks/databricks_ci_cd/.gitignore similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/.gitignore rename to single_tech_samples/databricks/databricks_ci_cd/.gitignore diff --git a/single_tech_samples/databricks/sample4_ci_cd/README.md b/single_tech_samples/databricks/databricks_ci_cd/README.md similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/README.md rename to single_tech_samples/databricks/databricks_ci_cd/README.md diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/unit/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/common/__init__.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/unit/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/common/__init__.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/common/module_a.py b/single_tech_samples/databricks/databricks_ci_cd/common/module_a.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/common/module_a.py rename to single_tech_samples/databricks/databricks_ci_cd/common/module_a.py diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/common/tests/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/common/tests/__init__.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/common/tests/module_a_test.py b/single_tech_samples/databricks/databricks_ci_cd/common/tests/module_a_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/common/tests/module_a_test.py rename to single_tech_samples/databricks/databricks_ci_cd/common/tests/module_a_test.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/conf/deployment-example.json b/single_tech_samples/databricks/databricks_ci_cd/conf/deployment-example.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/conf/deployment-example.json rename to single_tech_samples/databricks/databricks_ci_cd/conf/deployment-example.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/conf/deployment_notebook.json b/single_tech_samples/databricks/databricks_ci_cd/conf/deployment_notebook.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/conf/deployment_notebook.json rename to single_tech_samples/databricks/databricks_ci_cd/conf/deployment_notebook.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/conf/deployment_notebook_new_cluster.json b/single_tech_samples/databricks/databricks_ci_cd/conf/deployment_notebook_new_cluster.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/conf/deployment_notebook_new_cluster.json rename to single_tech_samples/databricks/databricks_ci_cd/conf/deployment_notebook_new_cluster.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/conf/deployment_spark_python.json b/single_tech_samples/databricks/databricks_ci_cd/conf/deployment_spark_python.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/conf/deployment_spark_python.json rename to single_tech_samples/databricks/databricks_ci_cd/conf/deployment_spark_python.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/conf/deployment_spark_python_new_cluster.json b/single_tech_samples/databricks/databricks_ci_cd/conf/deployment_spark_python_new_cluster.json similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/conf/deployment_spark_python_new_cluster.json rename to single_tech_samples/databricks/databricks_ci_cd/conf/deployment_spark_python_new_cluster.json diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/lib-pipelines.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/lib-pipelines.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/lib-pipelines.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/lib-pipelines.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/notebook-pipelines.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/notebook-pipelines.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/notebook-pipelines.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/notebook-pipelines.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/spark-python-pipelines.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/spark-python-pipelines.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/spark-python-pipelines.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/spark-python-pipelines.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/create-deployment-json.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/create-deployment-json.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/create-deployment-json.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/create-deployment-json.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-lib-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-lib-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-lib-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-lib-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-notebook-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-notebook-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-notebook-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-notebook-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-spark-python-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-spark-python-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/deploy-spark-python-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/deploy-spark-python-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/test-lib-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/test-lib-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/test-lib-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/test-lib-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/test-notebook-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/test-notebook-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/test-notebook-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/test-notebook-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/devops/template/test-spark-python-job.yml b/single_tech_samples/databricks/databricks_ci_cd/devops/template/test-spark-python-job.yml similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/devops/template/test-spark-python-job.yml rename to single_tech_samples/databricks/databricks_ci_cd/devops/template/test-spark-python-job.yml diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/architecture.png b/single_tech_samples/databricks/databricks_ci_cd/images/architecture.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/architecture.png rename to single_tech_samples/databricks/databricks_ci_cd/images/architecture.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/dbx-repo.png b/single_tech_samples/databricks/databricks_ci_cd/images/dbx-repo.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/dbx-repo.png rename to single_tech_samples/databricks/databricks_ci_cd/images/dbx-repo.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/deploy-lib.png b/single_tech_samples/databricks/databricks_ci_cd/images/deploy-lib.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/deploy-lib.png rename to single_tech_samples/databricks/databricks_ci_cd/images/deploy-lib.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/notebook-prod.png b/single_tech_samples/databricks/databricks_ci_cd/images/notebook-prod.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/notebook-prod.png rename to single_tech_samples/databricks/databricks_ci_cd/images/notebook-prod.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/notebook-staging.png b/single_tech_samples/databricks/databricks_ci_cd/images/notebook-staging.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/notebook-staging.png rename to single_tech_samples/databricks/databricks_ci_cd/images/notebook-staging.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/notebook-test.png b/single_tech_samples/databricks/databricks_ci_cd/images/notebook-test.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/notebook-test.png rename to single_tech_samples/databricks/databricks_ci_cd/images/notebook-test.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/pipelines.png b/single_tech_samples/databricks/databricks_ci_cd/images/pipelines.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/pipelines.png rename to single_tech_samples/databricks/databricks_ci_cd/images/pipelines.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/pytest-output-devcon.png b/single_tech_samples/databricks/databricks_ci_cd/images/pytest-output-devcon.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/pytest-output-devcon.png rename to single_tech_samples/databricks/databricks_ci_cd/images/pytest-output-devcon.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/pytest-output.png b/single_tech_samples/databricks/databricks_ci_cd/images/pytest-output.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/pytest-output.png rename to single_tech_samples/databricks/databricks_ci_cd/images/pytest-output.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/spark-python-prod.png b/single_tech_samples/databricks/databricks_ci_cd/images/spark-python-prod.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/spark-python-prod.png rename to single_tech_samples/databricks/databricks_ci_cd/images/spark-python-prod.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/spark-python-staging.png b/single_tech_samples/databricks/databricks_ci_cd/images/spark-python-staging.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/spark-python-staging.png rename to single_tech_samples/databricks/databricks_ci_cd/images/spark-python-staging.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/variable-group.png b/single_tech_samples/databricks/databricks_ci_cd/images/variable-group.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/variable-group.png rename to single_tech_samples/databricks/databricks_ci_cd/images/variable-group.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/images/variables.png b/single_tech_samples/databricks/databricks_ci_cd/images/variables.png similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/images/variables.png rename to single_tech_samples/databricks/databricks_ci_cd/images/variables.png diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_a.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_a.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_a.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_a.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_b.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_b.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_b.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_b.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_sql.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_sql.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/main_notebook_sql.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/main_notebook_sql.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/module_b_notebook.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/module_b_notebook.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/module_b_notebook.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/module_b_notebook.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_a_test.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_a_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_a_test.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_a_test.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_b_test.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_b_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_b_test.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_b_test.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_sql_test.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_sql_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/main_notebook_sql_test.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/main_notebook_sql_test.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/module_b_notebook_test.py b/single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/module_b_notebook_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/notebook_jobs/tests/module_b_notebook_test.py rename to single_tech_samples/databricks/databricks_ci_cd/notebook_jobs/tests/module_b_notebook_test.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/pytest.ini b/single_tech_samples/databricks/databricks_ci_cd/pytest.ini similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/pytest.ini rename to single_tech_samples/databricks/databricks_ci_cd/pytest.ini diff --git a/single_tech_samples/databricks/sample4_ci_cd/requirements.txt b/single_tech_samples/databricks/databricks_ci_cd/requirements.txt similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/requirements.txt rename to single_tech_samples/databricks/databricks_ci_cd/requirements.txt diff --git a/single_tech_samples/databricks/sample4_ci_cd/setup.py b/single_tech_samples/databricks/databricks_ci_cd/setup.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/setup.py rename to single_tech_samples/databricks/databricks_ci_cd/setup.py diff --git a/single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/dataconnectors/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample1_cicd/tests/integrationtests/tests/dataconnectors/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/__init__.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/main.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/main.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/main.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/main.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/__init__.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/integration/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/integration/__init__.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/integration/main_test.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/integration/main_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/integration/main_test.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/integration/main_test.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/__init__.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/unit/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/__init__.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/unit/__init__.py diff --git a/single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/unit/main_test.py b/single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/unit/main_test.py similarity index 100% rename from single_tech_samples/databricks/sample4_ci_cd/spark_python_jobs/tests/unit/main_test.py rename to single_tech_samples/databricks/databricks_ci_cd/spark_python_jobs/tests/unit/main_test.py diff --git a/single_tech_samples/dataexplorer/README.md b/single_tech_samples/dataexplorer/README.md deleted file mode 100644 index 2f31afc51..000000000 --- a/single_tech_samples/dataexplorer/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# Azure Data Explorer - -[Azure Data Explorer](https://azure.microsoft.com/en-us/products/data-explorer/#features) is a fast, fully managed data analytics service for large volumes of data ingesting from applications, websites, IoT devices, and more. The following sample demonstrates how you can create CI/CD pipelines to provision Azure Data Explorer services and deploy database changes to it. - -## Contents - -Contents of this sample includes: Working in progress... diff --git a/single_tech_samples/datafactory/README.md b/single_tech_samples/datafactory/README.md index fdba5eb7f..29d5f80f8 100644 --- a/single_tech_samples/datafactory/README.md +++ b/single_tech_samples/datafactory/README.md @@ -1,9 +1,8 @@ # Azure Data Factory -## Samples - -1. [CICD and automated integration tests for Azure Data Factory](sample1_cicd/README.md) - this demonstrates how to do continuous integration and continuous delivery with Azure Data Factory, along with automated integration tests. +[Azure Data Factory](https://learn.microsoft.com/en-us/azure/data-factory/) is Azure's cloud ETL service for scale-out serverless data integration and data transformation. It offers a code-free UI for intuitive authoring and single-pane-of-glass monitoring and management. -2. [Automated CI/CD For Azure Data Factory using Automatic Publish](./sample2_cicd_auto_publish/README.md) - This sample demonstrates how to do continuous integration and continuous Deployment with Azure Data Factory using Automated Publish feature. This code sample eliminates the Manual Publish step from ADF and automatically generates the ARM Templates using ADF Utilities that can be used for deployment. +## Samples -3. [Running container workloads from Azure Data Factory on Azure Batch for data pre-processing](sample3_data_pre_processing_with_azure_batch/README.md) - this sample demonstrates how to run azure batch container workloads from azure data factory. +- [ADF - Automated CI/CD using automatic publish](./adf_cicd_auto_publish/README.md) - This sample demonstrates how to do continuous integration and continuous Deployment with Azure Data Factory using Automated Publish feature. It eliminates the `manual publish` step from ADF and automatically generates the ARM Templates using ADF Utilities that can be used for deployment. +- [ADF - Data pre-processing using Azure Batch](./adf_data_pre_processing_with_azure_batch/README.md) - This sample demonstrates how to run azure batch container workloads from azure data factory. diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/DEPLOYMENT_STEPS.md b/single_tech_samples/datafactory/adf_cicd_auto_publish/DEPLOYMENT_STEPS.md similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/DEPLOYMENT_STEPS.md rename to single_tech_samples/datafactory/adf_cicd_auto_publish/DEPLOYMENT_STEPS.md diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/README.md b/single_tech_samples/datafactory/adf_cicd_auto_publish/README.md similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/README.md rename to single_tech_samples/datafactory/adf_cicd_auto_publish/README.md diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/arm-template-parameters-definition.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/arm-template-parameters-definition.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/arm-template-parameters-definition.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/arm-template-parameters-definition.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/dataset/destination.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/dataset/destination.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/dataset/destination.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/dataset/destination.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/dataset/source.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/dataset/source.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/dataset/source.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/dataset/source.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/linkedService/adls_connection.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/linkedService/adls_connection.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/linkedService/adls_connection.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/linkedService/adls_connection.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/linkedService/keyvault_connection.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/linkedService/keyvault_connection.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/linkedService/keyvault_connection.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/linkedService/keyvault_connection.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/pipeline/copy_data.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/pipeline/copy_data.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/pipeline/copy_data.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/pipeline/copy_data.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/publish_config.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/publish_config.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/publish_config.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/publish_config.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/trigger/trigger1.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/adf/trigger/trigger1.json similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/adf/trigger/trigger1.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/adf/trigger/trigger1.json diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deploy_to_dev_env.png b/single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deploy_to_dev_env.png similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deploy_to_dev_env.png rename to single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deploy_to_dev_env.png diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deploy_to_preprod_env.png b/single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deploy_to_preprod_env.png similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deploy_to_preprod_env.png rename to single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deploy_to_preprod_env.png diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deployment_architecture.png b/single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deployment_architecture.png similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_deployment_architecture.png rename to single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_deployment_architecture.png diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_link_to_git.png b/single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_link_to_git.png similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/adf_link_to_git.png rename to single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/adf_link_to_git.png diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/new_branch.png b/single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/new_branch.png similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/docs/images/new_branch.png rename to single_tech_samples/datafactory/adf_cicd_auto_publish/docs/images/new_branch.png diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/infra/azuredeploy.json b/single_tech_samples/datafactory/adf_cicd_auto_publish/infra/azuredeploy.json similarity index 99% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/infra/azuredeploy.json rename to single_tech_samples/datafactory/adf_cicd_auto_publish/infra/azuredeploy.json index c579081ae..41493587a 100644 --- a/single_tech_samples/datafactory/sample2_cicd_auto_publish/infra/azuredeploy.json +++ b/single_tech_samples/datafactory/adf_cicd_auto_publish/infra/azuredeploy.json @@ -29,7 +29,7 @@ "keyvault_owner_object_id": { "type": "String", "metadata": { - "description": "Active Directory ObjectId to be granted full rights to KV" + "description": "Microsoft Entra Object ID to be granted full rights to KV" } }, "datalake_storage_account_name": { diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/pipelines/adf-deployment-multi-env.yml b/single_tech_samples/datafactory/adf_cicd_auto_publish/pipelines/adf-deployment-multi-env.yml similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/pipelines/adf-deployment-multi-env.yml rename to single_tech_samples/datafactory/adf_cicd_auto_publish/pipelines/adf-deployment-multi-env.yml diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/pipelines/adf-deployment.yml b/single_tech_samples/datafactory/adf_cicd_auto_publish/pipelines/adf-deployment.yml similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/pipelines/adf-deployment.yml rename to single_tech_samples/datafactory/adf_cicd_auto_publish/pipelines/adf-deployment.yml diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/cereal.csv b/single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/cereal.csv similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/cereal.csv rename to single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/cereal.csv diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_pipelines.sh b/single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_pipelines.sh similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_pipelines.sh rename to single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_pipelines.sh diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_service_connections_azure.sh b/single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_service_connections_azure.sh similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_service_connections_azure.sh rename to single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_service_connections_azure.sh diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_variables.sh b/single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_variables.sh similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_azdo_variables.sh rename to single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_azdo_variables.sh diff --git a/single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_infra.sh b/single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_infra.sh similarity index 100% rename from single_tech_samples/datafactory/sample2_cicd_auto_publish/scripts/deploy_infra.sh rename to single_tech_samples/datafactory/adf_cicd_auto_publish/scripts/deploy_infra.sh diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/.devcontainer/devcontainer.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/.devcontainer/devcontainer.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/.devcontainer/devcontainer.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/README.md b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/README.md similarity index 99% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/README.md rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/README.md index 1f0b55d83..b886ac010 100644 --- a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/README.md +++ b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/README.md @@ -112,7 +112,7 @@ This section holds the information about usage instructions of this sample. ### Prerequisites 1. [Github account](https://github.com/) -2. [Azure Account](https://azure.microsoft.com/en-gb/free/) +2. [Azure Account](https://azure.microsoft.com/en-us/free/) - *Permissions needed*: The ability to create and deploy to an Azure [resource group](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/overview) - Active subscription with the following [resource providers](https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-services-resource-providers) enabled: diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/README.md b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/README.md similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/README.md rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/README.md diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/deploy-pipeline.sh b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/deploy-pipeline.sh similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/deploy-pipeline.sh rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/deploy-pipeline.sh diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatch_ls.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatch_ls.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatch_ls.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatch_ls.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatchstorage_ls.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatchstorage_ls.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatchstorage_ls.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/azurebatchstorage_ls.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/temp_azurebatch_ls.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/temp_azurebatch_ls.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/linkedService/temp_azurebatch_ls.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/linkedService/temp_azurebatch_ls.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/pipeline/pipeline.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/pipeline/pipeline.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/adf/pipeline/pipeline.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/adf/pipeline/pipeline.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/.gitignore b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/.gitignore similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/.gitignore rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/.gitignore diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/README.md b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/README.md similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/README.md rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/README.md diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/outputs.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/outputs.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/outputs.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/outputs.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/adf/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/output.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/output.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/output.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/output.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/azureBatch/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/outputs.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/outputs.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/outputs.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/outputs.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/containerRegistry/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/output.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/output.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/output.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/output.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/storage-container.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/storage-container.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/storage-container.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/storage-container.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/dataLakeStorage/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/output.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/output.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/output.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/output.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/keyVault/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/kvSecerets/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/outputs.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/outputs.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/outputs.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/outputs.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/managedIdentity/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/role_assignments/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/outputs.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/outputs.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/outputs.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/outputs.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/storage/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/main.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/main.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/main.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/main.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/output.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/output.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/output.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/output.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/modules/virtualNetwork/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/outputs.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/outputs.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/outputs.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/outputs.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/provider.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/provider.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/provider.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/provider.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/terraform.tfvars b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/terraform.tfvars similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/terraform.tfvars rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/terraform.tfvars diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/variables.tf b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/variables.tf similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/deploy/terraform/variables.tf rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/deploy/terraform/variables.tf diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg similarity index 99% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg index 488b342d6..1fc497dd4 100644 --- a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg +++ b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/adf-batch-integration-design.svg @@ -1 +1 @@ -
Raw Zone
Raw Zone
ADF
Extracted Zone
Extracted Zone
Orchestrator Pool
Orchestrator Pool
Execution Pool
Execution Pool
Orchestrator Pool Jobs
Orchestrator Pool Jobs
Execution Pool Jobs
Execution Pool Jobs
Container Registry
ADF-Job
ADF-Job
Task To Extract Sample File
Task...
Job-Process-File-1
Job-Process-File-1
Job-Process-File-N
Job-Process-File-N
docker images
docker images
  • sample-processor
sample-processor
Azure Batch
Azure Batch
Task MetadataActual CommandImage NameContainer run time options

NFS Mounts

Raw Zone and Extracted Zones will be mounted on each container for processing data. 

NFS Mounts...
Job Started
Job Started
Job Completed
Job Completed
Start
Start
Complete
Complete
Application Insights
Applica...
Managed IdentityAzure AD
Viewer does not support full SVG 1.1
\ No newline at end of file +
Raw Zone
Raw Zone
ADF
Extracted Zone
Extracted Zone
Orchestrator Pool
Orchestrator Pool
Execution Pool
Execution Pool
Orchestrator Pool Jobs
Orchestrator Pool Jobs
Execution Pool Jobs
Execution Pool Jobs
Container Registry
ADF-Job
ADF-Job
Task To Extract Sample File
Task...
Job-Process-File-1
Job-Process-File-1
Job-Process-File-N
Job-Process-File-N
docker images
docker images
  • sample-processor
sample-processor
Azure Batch
Azure Batch
Task MetadataActual CommandImage NameContainer run time options

NFS Mounts

Raw Zone and Extracted Zones will be mounted on each container for processing data. 

NFS Mounts...
Job Started
Job Started
Job Completed
Job Completed
Start
Start
Complete
Complete
Application Insights
Applica...
Managed IdentityMicrosoft Entra ID
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/apply-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/apply-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/apply-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/apply-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/author-pipelines.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/author-pipelines.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/author-pipelines.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/author-pipelines.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/deployed-resources-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/deployed-resources-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/deployed-resources-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/deployed-resources-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/destroy-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/destroy-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/destroy-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/destroy-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/init-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/init-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/init-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/init-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/jobs.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/jobs.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/jobs.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/jobs.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/local-debug.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/local-debug.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/local-debug.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/local-debug.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pipeline-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pipeline-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pipeline-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pipeline-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pipeline-run.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pipeline-run.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pipeline-run.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pipeline-run.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/plan-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/plan-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/plan-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/plan-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/post-apply-output.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/post-apply-output.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/post-apply-output.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/post-apply-output.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pre-processing-usecase.map.drawio.svg b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pre-processing-usecase.map.drawio.svg similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/pre-processing-usecase.map.drawio.svg rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/pre-processing-usecase.map.drawio.svg diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/sample-pipeline.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/sample-pipeline.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/sample-pipeline.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/sample-pipeline.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/storage-mount.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/storage-mount.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/storage-mount.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/storage-mount.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/terraform-vars.png b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/terraform-vars.png similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/images/terraform-vars.png rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/images/terraform-vars.png diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/Dockerfile b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/Dockerfile similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/Dockerfile rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/Dockerfile diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/devcontainer.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/devcontainer.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.devcontainer/devcontainer.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.gitignore b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.gitignore similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/.gitignore rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/.gitignore diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/README.md b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/README.md similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/README.md rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/README.md diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/__init__.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/__init__.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/__init__.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/__init__.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/__init__.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/__init__.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/data_filter/__init__.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/__init__.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/job.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/job.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/job.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/job.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/task.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/task.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/task.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/batch/task.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/config.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/config.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/config.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/config.py diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/__init__.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/__init__.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/modules/md5/__init__.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/__init__.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extractscheduler.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extractscheduler.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extractscheduler.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extractscheduler.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extracttasks.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extracttasks.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extracttasks.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/extracttasks.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/taskbuilder.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/taskbuilder.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/taskbuilder.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/core/extract/taskbuilder.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/extract.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/extract.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/extract.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/extract.py diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/src/adlsaccess/__init__.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/__init__.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/src/adlsaccess/__init__.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/__init__.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/batchclient.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/batchclient.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/batchclient.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/batchclient.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/confighelper.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/confighelper.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/confighelper.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/confighelper.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/enums.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/enums.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/enums.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/enums.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/keyvaultclient.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/keyvaultclient.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/keyvaultclient.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/app/utils/keyvaultclient.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/env.template b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/env.template similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/env.template rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/env.template diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/requirements.txt b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/requirements.txt similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/orchestrator-app/requirements.txt rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/orchestrator-app/requirements.txt diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/.devcontainer/devcontainer.json b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/.devcontainer/devcontainer.json rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/.devcontainer/devcontainer.json diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/Dockerfile b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/Dockerfile similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/Dockerfile rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/Dockerfile diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/README.md b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/README.md similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/README.md rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/README.md diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/app.py b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/app.py similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/app.py rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/app.py diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_can_bus_dbw_slash_can_rx.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_can_bus_dbw_slash_can_rx.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_can_bus_dbw_slash_can_rx.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_can_bus_dbw_slash_can_rx.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_camera_info.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_camera_info.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_camera_info.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_camera_info.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_image_color_slash_compressed.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_image_color_slash_compressed.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_image_color_slash_compressed.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_center_camera_slash_image_color_slash_compressed.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_diagnostics.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_diagnostics.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_diagnostics.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_diagnostics.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_ecef_slash_.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_ecef_slash_.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_ecef_slash_.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_ecef_slash_.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_fix.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_fix.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_fix.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_fix.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_imu_slash_data.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_imu_slash_data.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_imu_slash_data.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_imu_slash_data.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_camera_info.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_camera_info.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_camera_info.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_camera_info.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_image_color_slash_compressed.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_image_color_slash_compressed.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_image_color_slash_compressed.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_left_camera_slash_image_color_slash_compressed.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_pressure.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_pressure.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_pressure.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_pressure.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_camera_info.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_camera_info.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_camera_info.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_camera_info.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_image_color_slash_compressed.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_image_color_slash_compressed.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_image_color_slash_compressed.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_right_camera_slash_image_color_slash_compressed.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_time_reference.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_time_reference.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_time_reference.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_time_reference.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_info_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_info_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_info_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_info_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_brake_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_filtered_accel.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_filtered_accel.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_filtered_accel.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_filtered_accel.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_fuel_level_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_fuel_level_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_fuel_level_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_fuel_level_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gear_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gear_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gear_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gear_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_fix.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_fix.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_fix.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_fix.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_time.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_time.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_time.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_time.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_vel.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_vel.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_vel.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_gps_slash_vel.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_imu_slash_data_raw.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_imu_slash_data_raw.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_imu_slash_data_raw.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_imu_slash_data_raw.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_joint_states.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_joint_states.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_joint_states.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_joint_states.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_misc_1_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_misc_1_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_misc_1_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_misc_1_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_sonar_cloud.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_sonar_cloud.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_sonar_cloud.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_sonar_cloud.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_steering_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_steering_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_steering_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_steering_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_surround_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_surround_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_surround_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_surround_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_suspension_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_suspension_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_suspension_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_suspension_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_info_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_info_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_info_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_info_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_throttle_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_tire_pressure_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_tire_pressure_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_tire_pressure_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_tire_pressure_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_wheel_speed_report.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_wheel_speed_report.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_wheel_speed_report.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_vehicle_slash_wheel_speed_report.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_velodyne_packets.csv b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_velodyne_packets.csv similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_velodyne_packets.csv rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/output/_slash_velodyne_packets.csv diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/raw/sample-data.bag b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/raw/sample-data.bag similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/data/raw/sample-data.bag rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/data/raw/sample-data.bag diff --git a/single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/deploy-processor.sh b/single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/deploy-processor.sh similarity index 100% rename from single_tech_samples/datafactory/sample3_data_pre_processing_with_azure_batch/src/sample-processor/deploy-processor.sh rename to single_tech_samples/datafactory/adf_data_pre_processing_with_azure_batch/src/sample-processor/deploy-processor.sh diff --git a/single_tech_samples/fabric/README.md b/single_tech_samples/fabric/README.md index 6c2be9712..d82a15f8b 100644 --- a/single_tech_samples/fabric/README.md +++ b/single_tech_samples/fabric/README.md @@ -4,6 +4,4 @@ ## Samples -- [Feature Engineering on Microsoft Fabric](./feature_engineering_on_fabric/README.md) - - This sample demonstrates how to use Azure ML managed feature store and Microsoft Fabric to build a feature engineering system. It also shows how to track and monitor the data lineage of the features and the model training process using Microsoft Purview. The provided sample also encompasses data validation and exploratory data analysis (EDA) within Fabric notebooks. +- [Feature Engineering on Microsoft Fabric](./feature_engineering_on_fabric/README.md) - This sample demonstrates how to use Azure ML managed feature store and Microsoft Fabric to build a feature engineering system. It also shows how to track and monitor the data lineage of the features and the model training process using Microsoft Purview. The provided sample also encompasses data validation and exploratory data analysis (EDA) within Fabric notebooks. diff --git a/single_tech_samples/fabric/feature_engineering_on_fabric/src/infra/deploy-azure-resources.ipynb b/single_tech_samples/fabric/feature_engineering_on_fabric/src/infra/deploy-azure-resources.ipynb index 1b8c3df64..abf0eae19 100644 --- a/single_tech_samples/fabric/feature_engineering_on_fabric/src/infra/deploy-azure-resources.ipynb +++ b/single_tech_samples/fabric/feature_engineering_on_fabric/src/infra/deploy-azure-resources.ipynb @@ -104,7 +104,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The following cell will help you to gain Azure credential of your AAD account:" + "The following cell will help you to gain Azure credential of your Microsoft Entra account:" ] }, { diff --git a/single_tech_samples/streamanalytics/README.md b/single_tech_samples/streamanalytics/README.md index fcc5fa509..def63bc3c 100644 --- a/single_tech_samples/streamanalytics/README.md +++ b/single_tech_samples/streamanalytics/README.md @@ -1,176 +1,7 @@ -# Azure Stream Analytics +# Azure Synapse Analytics -![introductory diagram](./docs/images/ASA-job.PNG) +[Azure Stream Analytics](https://learn.microsoft.com/en-au/azure/stream-analytics/) is a fully managed, real-time analytics service designed to help you analyze and process fast moving streams of data that can be used to get insights, build reports or trigger alerts and actions. -[Azure Stream Analytics](https://azure.microsoft.com/en-us/products/stream-analytics/) is a serverless real-time analytics service. The goal of this sample is to demonstrate how to develop a streaming pipeline, with IaC and testability in mind. +## Samples -## Prerequisites - -## Setup - -1. __Azure Cli__ Will be necessary for various tasks. Please follow the instructions found [here](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli). - -1. __Bicep__ This project uses `Bicep` templates to setup `Azure` infrastructure. Please follow the steps under [Install Bicep Tools](https://docs.microsoft.com/en-us/azure/azure-resource-manager/bicep/install) to install the `Azure Cli` extension. - - For an introduction to `Bicep`, you can find more information in the `Bicep` repo under [Get started with Bicep](https://github.com/Azure/bicep/#get-started-with-bicep). - -1. __Raspberry Pi Azure IoT Online Simulator__ To run through the [Functional Test](#Functional%20Test) section, you can use [this](https://azure-samples.github.io/raspberry-pi-web-simulator/) simulator. Makes sure to follow the step required to edit the js code. - -1. __azure-streamanalytics-cicd__ Unit testing is possible using the `npm` package [azure-streamanalytics-cicd](https://www.npmjs.com/package/azure-streamanalytics-cicd). The tool provides additional features for working with `Azure Stream Analytics` locally. Check [here](https://docs.microsoft.com/en-us/azure/stream-analytics/cicd-tools?tabs=visual-studio-code) for more info. - -1. __Configure environment variables.__ We will assume these are customized and configured per your needs - - ```bash - APP="tech-sample" - ENVIRONMENT="test" - LOCATION="westus" - STORAGE_ACCOUNT="st${APP/-/}${ENVIRONMENT}" - ``` - -## Build - -```bash -# Run Unit Tests -azure-streamanalytics-cicd test -project ./asaproj.json -outputPath ./output/ - -# Create Resource Group - -az group create -n rg-${APP} -l ${LOCATION} - -# Validate Generated Template -az deployment group validate -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} - -# Show plan -az deployment group what-if -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} -``` - -## Deploy - -```bash -# Create Azure Resources. This will also start the job - -az deployment group create -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} - -# Add device - -az iot hub device-identity create --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --edge-enabled -``` - -## Functional Test - -```bash - -# Use connection information with "Raspberry Pi Azure IoT Online Simulator": https://azure-samples.github.io/raspberry-pi-web-simulator/ - -az iot hub device-identity connection-string show --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --output tsv -``` - -> Check the blob storage container to ensure that a json file exists with expected temperature sensor data (exceeding 27 degrees) is present. - -## Automated End-to-End Test - -```bash -export DEVICE_CONNECTION_STRING=$(az iot hub device-identity connection-string show --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --output tsv) -export AZURE_STORAGE_CONNECTION_STRING=$(az storage account show-connection-string -n ${STORAGE_ACCOUNT} --query connectionString -o tsv) - -cd e2e -npm install -npm test -``` - -## Cleanup - -```bash -az group delete -n rg-${APP} -``` - -## Key concepts - -### Infrastructure as Code - -This sample's infrastructure is created using [Bicep](https://github.com/Azure/bicep#what-is-bicep) templates. `Bicep` is a DSL that is transpiled into `Azure`'s native `ARM Templates`. It's currently in preview but already has been integrated into the `Azure Cli`. Also [ARM template reference documentation](https://docs.microsoft.com/en-us/azure/templates/microsoft.devices/iothubs?tabs=bicep) lists `Bicep` along side `ARM Templates`: - -![Bicep template screen capture](docs/images/Bicep-doc.PNG) - -Alternatively, `Terraform` can also be used. - -> Key take aways for `Bicep` -> -> * Day 0 resource provider support. Any Azure resource — whether in private or public preview or GA — can be provisioned using Bicep. -> * No state or state files to manage. All state is stored in Azure, so makes it easy to collaborate and make changes to resources confidently. -> * VSCode extension for Bicep makes it extremely easy to author and get started with advanced type validation based on all Azure resource type API definitions. - -Resource naming conventions attempt to follow examples from [Define your naming convention -](https://docs.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/resource-naming#example-names-for-common-azure-resource-types) where appropriate. - -The structure of the __IaC__ scripts allow you to setup as many versions or the infrastructure as you need easily. For example an individual developer may create a version to use within their __Inner Dev Loop__: - -```bash -DEVELOPER="kaa" -ENVIRONMENT="inner" -LOCATION="japaneast" -STORAGE_ACCOUNT="st${DEVELOPER}${ENVIRONMENT}" - -az group create -n rg-${DEVELOPER} -l $LOCATION - -az deployment group create -f main.bicep -g rg-${DEVELOPER} --parameters query='@./streamanalytics-tech-sample.asaql' name=${DEVELOPER} env=${ENVIRONMENT} - -az iot hub device-identity create --hub-name iot-${DEVELOPER}-${ENVIRONMENT} --device-id iot-${DEVELOPER}-${ENVIRONMENT} --edge-enabled - -export DEVICE_CONNECTION_STRING=$(az iot hub device-identity connection-string show --hub-name iot-${DEVELOPER}-${ENVIRONMENT} --device-id iot-${DEVELOPER}-${ENVIRONMENT} --output tsv) -export AZURE_STORAGE_CONNECTION_STRING=$(az storage account show-connection-string -g rg-${DEVELOPER} -n ${STORAGE_ACCOUNT} --query connectionString -o tsv) - -# Cleanup -az group delete -n rg-${DEVELOPER} -``` - -### Testing - -#### Unit - -`Azure Stream Analytics` can be unit tested locally via the [azure-streamanalytics-cicd](https://www.npmjs.com/package/azure-streamanalytics-cicd) npm package. - -Also this package can be used as part of an Azure DevOps CI\CD pipeline. More info can be found [here](https://docs.microsoft.com/en-us/azure/stream-analytics/set-up-cicd-pipeline). This should make integrating this into your existing CI\CD fairly straight forward. - -> Key take aways for `azure-streamanalytics-cicd` -> -> * Test configuration is found under the __/test__ directory. -> * This is the default location for `azure-streamanalytics-cicd`. -> * __test/testConfig.json__ defines the test cases. -> * __test/temperature ... .json__ defines pipeline inputs and outputs (as `JSON`) - -#### Functional - -![simulator site image](docs/images/InkedIoT-Simulator_LI.jpg) - -Functional testing can be done using the online tool [Raspberry Pi Web Client Simulator](https://azure-samples.github.io/raspberry-pi-web-simulator/). Source code can be found [here](https://github.com/Azure-Samples/raspberry-pi-web-simulator). This is an easy way to interacte with your `Azure Streaming Analytics` pipeline. - -You can manually check the blob storage to see that events are coming through correctly. - -![blob container screen cap](docs/images/BLOB-OUT.PNG) - -> One aspect to consider, is that events will be batched on the scale of seconds due to the `pathPattern` defined in [streamingjobs.bicep](./streamingjobs.bicep) for `bloboutput`. This is done to aid automated testing. You can adjust during functional testing, and for production as required: -> -> _example_ -> -> ```bicep -> pathPattern: '{date}' -> ``` -> -> Then you should be able to see many events per file. - -#### Automated End-to-End - -This sample combines [Azure IoT device SDK](https://www.npmjs.com/package/azure-iot-device) and [Microsoft Azure Storage SDK for JavaScript](https://www.npmjs.com/package/@azure/storage-blob) to create a Node.js (TypeScript) based End-to-End test solution. As mentioned under __Functional__ by default blob output partitioning is done on the seconds resolution to prevent the automated test from waiting an impractical amount of time. This can be made configurable according to your requirements on deploy by altering the `Bicep` template. - -![test result output screen capture](docs/images/e2e-test.PNG) - -Within the test file [e2e/e2e.ts](e2e/e2e.ts) there is the `EXPECTED_E2E_LATENCY_MS` defined to be 1s. So this would also need to be adjusted for a real implementation. - -#### CI/CD - -A sample CI/CD Pipeline YAML file is present in this repo under "samplecicdpipeline.yml". This pipeline runs the tests present under the tests folder, -sets up the IoTHub, and deploys the ASA job using the contents of the streamingjobs.bicep file. In order to add a new ASA job, please do the following: - -1. Include a new bicep file for the additional ASA job, and add it to the main.bicep file. -2. Add the query into the inlineScript under the parameters of the yaml file where the deployment of main.bicep happens. +- [CI/CD - Azure Stream Analytics](./streamanalytics_ci_cd/README.md) - This sample demonstrates how to develop a streaming pipeline, with IaC and testability in mind. diff --git a/single_tech_samples/streamanalytics/e2e/package-lock.json b/single_tech_samples/streamanalytics/e2e/package-lock.json deleted file mode 100644 index fc02f27f6..000000000 --- a/single_tech_samples/streamanalytics/e2e/package-lock.json +++ /dev/null @@ -1,3527 +0,0 @@ -{ - "name": "e2e", - "version": "1.0.0", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "e2e", - "version": "1.0.0", - "license": "MIT", - "devDependencies": { - "@azure/storage-blob": "^12.3.0", - "@types/chai": "^4.2.14", - "@types/chai-subset": "^1.3.3", - "@types/mocha": "^8.2.0", - "azure-iot-device": "^1.17.3", - "azure-iot-device-mqtt": "^1.15.3", - "chai": "^4.2.0", - "chai-subset": "^1.6.0", - "mocha": "^10.1.0", - "ts-node": "^9.1.1", - "typescript": "^4.1.3" - } - }, - "node_modules/@azure/abort-controller": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.1.tgz", - "integrity": "sha512-wP2Jw6uPp8DEDy0n4KNidvwzDjyVV2xnycEIq7nPzj1rHyb/r+t3OPeNT1INZePP2wy5ZqlwyuyOMTi0ePyY1A==", - "dev": true, - "dependencies": { - "tslib": "^1.9.3" - } - }, - "node_modules/@azure/core-asynciterator-polyfill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.0.tgz", - "integrity": "sha512-kmv8CGrPfN9SwMwrkiBK9VTQYxdFQEGe0BmQk+M8io56P9KNzpAxcWE/1fxJj7uouwN4kXF0BHW8DNlgx+wtCg==", - "dev": true - }, - "node_modules/@azure/core-auth": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.1.3.tgz", - "integrity": "sha512-A4xigW0YZZpkj1zK7dKuzbBpGwnhEcRk6WWuIshdHC32raR3EQ1j6VA9XZqE+RFsUgH6OAmIK5BWIz+mZjnd6Q==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-tracing": "1.0.0-preview.8", - "@opentelemetry/api": "^0.6.1", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-auth/node_modules/@azure/core-tracing": { - "version": "1.0.0-preview.8", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.8.tgz", - "integrity": "sha512-ZKUpCd7Dlyfn7bdc+/zC/sf0aRIaNQMDuSj2RhYRFe3p70hVAnYGp3TX4cnG2yoEALp/LTj/XnZGQ8Xzf6Ja/Q==", - "dev": true, - "dependencies": { - "@opencensus/web-types": "0.0.7", - "@opentelemetry/api": "^0.6.1", - "tslib": "^1.10.0" - } - }, - "node_modules/@azure/core-auth/node_modules/@azure/core-tracing/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/@azure/core-auth/node_modules/@opentelemetry/api": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-0.6.1.tgz", - "integrity": "sha512-wpufGZa7tTxw7eAsjXJtiyIQ42IWQdX9iUQp7ACJcKo1hCtuhLU+K2Nv1U6oRwT1oAlZTE6m4CgWKZBhOiau3Q==", - "dev": true, - "dependencies": { - "@opentelemetry/context-base": "^0.6.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-auth/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/@azure/core-http": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-1.2.1.tgz", - "integrity": "sha512-vPHIQXjLVs4iin2BUaj7/sqIAfGq3MW1TLEc3yYKFNpi/sBQn2KI0g+Ow0EQYvAkkHhTHGArA7JKhcjsnJMGLw==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.1.3", - "@azure/core-tracing": "1.0.0-preview.9", - "@azure/logger": "^1.0.0", - "@opentelemetry/api": "^0.10.2", - "@types/node-fetch": "^2.5.0", - "@types/tunnel": "^0.0.1", - "form-data": "^3.0.0", - "node-fetch": "^2.6.0", - "process": "^0.11.10", - "tough-cookie": "^4.0.0", - "tslib": "^2.0.0", - "tunnel": "^0.0.6", - "uuid": "^8.3.0", - "xml2js": "^0.4.19" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-http/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/@azure/core-lro": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-1.0.2.tgz", - "integrity": "sha512-Yr0JD7GKryOmbcb5wHCQoQ4KCcH5QJWRNorofid+UvudLaxnbCfvKh/cUfQsGUqRjO9L/Bw4X7FP824DcHdMxw==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^1.1.1", - "events": "^3.0.0", - "tslib": "^1.10.0" - } - }, - "node_modules/@azure/core-paging": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.1.3.tgz", - "integrity": "sha512-his7Ah40ThEYORSpIAwuh6B8wkGwO/zG7gqVtmSE4WAJ46e36zUDXTKReUCLBDc6HmjjApQQxxcRFy5FruG79A==", - "dev": true, - "dependencies": { - "@azure/core-asynciterator-polyfill": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-tracing": { - "version": "1.0.0-preview.9", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.9.tgz", - "integrity": "sha512-zczolCLJ5QG42AEPQ+Qg9SRYNUyB+yZ5dzof4YEc+dyWczO9G2sBqbAjLB7IqrsdHN2apkiB2oXeDKCsq48jug==", - "dev": true, - "dependencies": { - "@opencensus/web-types": "0.0.7", - "@opentelemetry/api": "^0.10.2", - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-tracing/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/@azure/logger": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.0.tgz", - "integrity": "sha512-g2qLDgvmhyIxR3JVS8N67CyIOeFRKQlX/llxYJQr1OSGQqM3HTpVP8MjmjcEKbL/OIt2N9C9UFaNQuKOw1laOA==", - "dev": true, - "dependencies": { - "tslib": "^1.9.3" - } - }, - "node_modules/@azure/storage-blob": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.3.0.tgz", - "integrity": "sha512-nCySzNfm782pEW3sg9GHj1zE4gBeVVMeEBdWb4MefifrCwQQOoz5cXZTNFiUJAJqAO+/72r2UjZcUwHk/QmzkA==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^1.2.0", - "@azure/core-lro": "^1.0.2", - "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.9", - "@azure/logger": "^1.0.0", - "@opentelemetry/api": "^0.10.2", - "events": "^3.0.0", - "tslib": "^2.0.0" - } - }, - "node_modules/@azure/storage-blob/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - }, - "node_modules/@opencensus/web-types": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@opencensus/web-types/-/web-types-0.0.7.tgz", - "integrity": "sha512-xB+w7ZDAu3YBzqH44rCmG9/RlrOmFuDPt/bpf17eJr8eZSrLt7nc7LnWdxM9Mmoj/YKMHpxRg28txu3TcpiL+g==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/@opentelemetry/api": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-0.10.2.tgz", - "integrity": "sha512-GtpMGd6vkzDMYcpu2t9LlhEgMy/SzBwRnz48EejlRArYqZzqSzAsKmegUK7zHgl+EOIaK9mKHhnRaQu3qw20cA==", - "dev": true, - "dependencies": { - "@opentelemetry/context-base": "^0.10.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@opentelemetry/api/node_modules/@opentelemetry/context-base": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-base/-/context-base-0.10.2.tgz", - "integrity": "sha512-hZNKjKOYsckoOEgBziGMnBcX0M7EtstnCmwz5jZUOUYwlZ+/xxX6z3jPu1XVO2Jivk0eLfuP9GP+vFD49CMetw==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@opentelemetry/context-base": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-base/-/context-base-0.6.1.tgz", - "integrity": "sha512-5bHhlTBBq82ti3qPT15TRxkYTFPPQWbnkkQkmHPtqiS1XcTB69cEKd3Jm7Cfi/vkPoyxapmePE9tyA7EzLt8SQ==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@types/chai": { - "version": "4.2.14", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.14.tgz", - "integrity": "sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ==", - "dev": true - }, - "node_modules/@types/chai-subset": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@types/chai-subset/-/chai-subset-1.3.3.tgz", - "integrity": "sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==", - "dev": true, - "dependencies": { - "@types/chai": "*" - } - }, - "node_modules/@types/mocha": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.0.tgz", - "integrity": "sha512-/Sge3BymXo4lKc31C8OINJgXLaw+7vL1/L1pGiBNpGrBiT8FQiaFpSYV0uhTaG4y78vcMBTMFsWaHDvuD+xGzQ==", - "dev": true - }, - "node_modules/@types/node": { - "version": "14.14.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.16.tgz", - "integrity": "sha512-naXYePhweTi+BMv11TgioE2/FXU4fSl29HAH1ffxVciNsH3rYXjNP2yM8wqmSm7jS20gM8TIklKiTen+1iVncw==", - "dev": true - }, - "node_modules/@types/node-fetch": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz", - "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" - } - }, - "node_modules/@types/tunnel": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.1.tgz", - "integrity": "sha512-AOqu6bQu5MSWwYvehMXLukFHnupHrpZ8nvgae5Ggie9UwzDR1CCwoXgSSWNZJuyOlCdfdsWMA5F2LlmvyoTv8A==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "node_modules/azure-iot-common": { - "version": "1.12.7", - "resolved": "https://registry.npmjs.org/azure-iot-common/-/azure-iot-common-1.12.7.tgz", - "integrity": "sha512-YDskP5GkhQw1VDtcQFfWAVcclNCi8/iWUS784lgwgNOQpr8RKHW1fC9o8lVt56TXssq0rrYcl9v2mosSD8WPnw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "getos": "^3.1.1" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/azure-iot-device": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/azure-iot-device/-/azure-iot-device-1.17.3.tgz", - "integrity": "sha512-yulmNz88R1xwibU5KeoBCGfGX5ZDJdfkjf12Hv1yUANWIQpOyCqPq3lnu/s3OzssHy7FHpJPA8UxaRS2UYWCfg==", - "dev": true, - "dependencies": { - "@azure/abort-controller": "1.0.1", - "@azure/storage-blob": "^12.0.0", - "azure-iot-common": "1.12.7", - "azure-iot-http-base": "1.11.7", - "debug": "^4.1.1", - "lodash": "^4.17.20", - "machina": "^4.0.2", - "traverse": "^0.6.6" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/azure-iot-device-mqtt": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/azure-iot-device-mqtt/-/azure-iot-device-mqtt-1.15.3.tgz", - "integrity": "sha512-+A9emZk76SiaSEoNhR/+BFGDFujtivkUVmGNli60KLEzlUg+pZFC+VTpftJriE+2EgYaJJUq+QXS67wDbtXKrA==", - "dev": true, - "dependencies": { - "azure-iot-common": "1.12.7", - "azure-iot-device": "1.17.3", - "azure-iot-mqtt-base": "1.12.7", - "debug": "^4.1.1", - "machina": "^4.0.2", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/azure-iot-device-mqtt/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/azure-iot-http-base": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/azure-iot-http-base/-/azure-iot-http-base-1.11.7.tgz", - "integrity": "sha512-Xt2wLtiblGSag/zJe6vJVkgjlj+jo2C5exuaSGHuMtvkuD/MB74xyGDdgflXcOiTVzS1rXx02I02jgKHTW5BDA==", - "dev": true, - "dependencies": { - "azure-iot-common": "1.12.7", - "debug": "^4.1.1", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/azure-iot-http-base/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/azure-iot-mqtt-base": { - "version": "1.12.7", - "resolved": "https://registry.npmjs.org/azure-iot-mqtt-base/-/azure-iot-mqtt-base-1.12.7.tgz", - "integrity": "sha512-MdlF78V+q6OtgeuEtnp2J1bZQLWbiDngHug7psn6CYpEsUhMwfC1oRKO0ElxabCo4o+F32rweYsWXUZNZ1fR6w==", - "dev": true, - "dependencies": { - "azure-iot-common": "1.12.7", - "debug": "^4.1.1", - "machina": "^4.0.2", - "mqtt": "^4.0.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/azure-iot-mqtt-base/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "node_modules/chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "pathval": "^1.1.0", - "type-detect": "^4.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chai-subset": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/chai-subset/-/chai-subset-1.6.0.tgz", - "integrity": "sha1-pdDKFOMpp5WW7XAFi2ZGvWmIz+k=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chalk/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/commist/-/commist-1.1.0.tgz", - "integrity": "sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==", - "dev": true, - "dependencies": { - "leven": "^2.1.0", - "minimist": "^1.1.0" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "node_modules/concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "engines": [ - "node >= 6.0" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/duplexify": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz", - "integrity": "sha512-DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "bin": { - "flat": "cli.js" - } - }, - "node_modules/form-data": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", - "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "dependencies": { - "async": "^3.2.0" - } - }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/help-me": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/help-me/-/help-me-3.0.0.tgz", - "integrity": "sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ==", - "dev": true, - "dependencies": { - "glob": "^7.1.6", - "readable-stream": "^3.6.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/machina": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/machina/-/machina-4.0.2.tgz", - "integrity": "sha512-OOlFrW1rd783S6tF36v5Ie/TM64gfvSl9kYLWL2cPA31J71HHWW3XrgSe1BZSFAPkh8532CMJMLv/s9L2aopiA==", - "dev": true, - "dependencies": { - "lodash": "^4.17.5" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "dev": true, - "dependencies": { - "mime-db": "1.44.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "node_modules/mocha": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.1.0.tgz", - "integrity": "sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==", - "dev": true, - "dependencies": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": ">= 14.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" - } - }, - "node_modules/mocha/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/mocha/node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/mocha/node_modules/minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/mqtt": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.8.tgz", - "integrity": "sha512-DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA==", - "dev": true, - "dependencies": { - "commist": "^1.0.0", - "concat-stream": "^2.0.0", - "debug": "^4.1.1", - "duplexify": "^4.1.1", - "help-me": "^3.0.0", - "inherits": "^2.0.3", - "minimist": "^1.2.5", - "mqtt-packet": "^6.8.0", - "pump": "^3.0.0", - "readable-stream": "^3.6.0", - "reinterval": "^1.1.0", - "split2": "^3.1.0", - "ws": "^7.5.0", - "xtend": "^4.0.2" - }, - "bin": { - "mqtt": "bin/mqtt.js", - "mqtt_pub": "bin/pub.js", - "mqtt_sub": "bin/sub.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/mqtt-packet": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-6.10.0.tgz", - "integrity": "sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA==", - "dev": true, - "dependencies": { - "bl": "^4.0.2", - "debug": "^4.1.1", - "process-nextick-args": "^2.0.1" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reinterval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz", - "integrity": "sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc=", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "dependencies": { - "readable-stream": "^3.0.0" - } - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", - "dev": true - }, - "node_modules/traverse": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", - "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", - "dev": true - }, - "node_modules/ts-node": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", - "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", - "dev": true, - "dependencies": { - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "source-map-support": "^0.5.17", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "typescript": ">=2.7" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "dev": true, - "engines": { - "node": ">=0.6.11 <=0.7.0 || >=0.7.3" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "node_modules/typescript": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", - "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/ws": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.0.tgz", - "integrity": "sha512-6ezXvzOZupqKj4jUqbQ9tXuJNo+BR2gU8fFRk3XCP3e0G6WT414u5ELe6Y0vtp7kmSJ3F7YWObSNr1ESsgi4vw==", - "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dev": true, - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser/node_modules/camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yargs-unparser/node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@azure/abort-controller": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.1.tgz", - "integrity": "sha512-wP2Jw6uPp8DEDy0n4KNidvwzDjyVV2xnycEIq7nPzj1rHyb/r+t3OPeNT1INZePP2wy5ZqlwyuyOMTi0ePyY1A==", - "dev": true, - "requires": { - "tslib": "^1.9.3" - } - }, - "@azure/core-asynciterator-polyfill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.0.tgz", - "integrity": "sha512-kmv8CGrPfN9SwMwrkiBK9VTQYxdFQEGe0BmQk+M8io56P9KNzpAxcWE/1fxJj7uouwN4kXF0BHW8DNlgx+wtCg==", - "dev": true - }, - "@azure/core-auth": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.1.3.tgz", - "integrity": "sha512-A4xigW0YZZpkj1zK7dKuzbBpGwnhEcRk6WWuIshdHC32raR3EQ1j6VA9XZqE+RFsUgH6OAmIK5BWIz+mZjnd6Q==", - "dev": true, - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-tracing": "1.0.0-preview.8", - "@opentelemetry/api": "^0.6.1", - "tslib": "^2.0.0" - }, - "dependencies": { - "@azure/core-tracing": { - "version": "1.0.0-preview.8", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.8.tgz", - "integrity": "sha512-ZKUpCd7Dlyfn7bdc+/zC/sf0aRIaNQMDuSj2RhYRFe3p70hVAnYGp3TX4cnG2yoEALp/LTj/XnZGQ8Xzf6Ja/Q==", - "dev": true, - "requires": { - "@opencensus/web-types": "0.0.7", - "@opentelemetry/api": "^0.6.1", - "tslib": "^1.10.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "@opentelemetry/api": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-0.6.1.tgz", - "integrity": "sha512-wpufGZa7tTxw7eAsjXJtiyIQ42IWQdX9iUQp7ACJcKo1hCtuhLU+K2Nv1U6oRwT1oAlZTE6m4CgWKZBhOiau3Q==", - "dev": true, - "requires": { - "@opentelemetry/context-base": "^0.6.1" - } - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - } - } - }, - "@azure/core-http": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-1.2.1.tgz", - "integrity": "sha512-vPHIQXjLVs4iin2BUaj7/sqIAfGq3MW1TLEc3yYKFNpi/sBQn2KI0g+Ow0EQYvAkkHhTHGArA7JKhcjsnJMGLw==", - "dev": true, - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.1.3", - "@azure/core-tracing": "1.0.0-preview.9", - "@azure/logger": "^1.0.0", - "@opentelemetry/api": "^0.10.2", - "@types/node-fetch": "^2.5.0", - "@types/tunnel": "^0.0.1", - "form-data": "^3.0.0", - "node-fetch": "^2.6.0", - "process": "^0.11.10", - "tough-cookie": "^4.0.0", - "tslib": "^2.0.0", - "tunnel": "^0.0.6", - "uuid": "^8.3.0", - "xml2js": "^0.4.19" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - } - } - }, - "@azure/core-lro": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-1.0.2.tgz", - "integrity": "sha512-Yr0JD7GKryOmbcb5wHCQoQ4KCcH5QJWRNorofid+UvudLaxnbCfvKh/cUfQsGUqRjO9L/Bw4X7FP824DcHdMxw==", - "dev": true, - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^1.1.1", - "events": "^3.0.0", - "tslib": "^1.10.0" - } - }, - "@azure/core-paging": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.1.3.tgz", - "integrity": "sha512-his7Ah40ThEYORSpIAwuh6B8wkGwO/zG7gqVtmSE4WAJ46e36zUDXTKReUCLBDc6HmjjApQQxxcRFy5FruG79A==", - "dev": true, - "requires": { - "@azure/core-asynciterator-polyfill": "^1.0.0" - } - }, - "@azure/core-tracing": { - "version": "1.0.0-preview.9", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.9.tgz", - "integrity": "sha512-zczolCLJ5QG42AEPQ+Qg9SRYNUyB+yZ5dzof4YEc+dyWczO9G2sBqbAjLB7IqrsdHN2apkiB2oXeDKCsq48jug==", - "dev": true, - "requires": { - "@opencensus/web-types": "0.0.7", - "@opentelemetry/api": "^0.10.2", - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - } - } - }, - "@azure/logger": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.0.tgz", - "integrity": "sha512-g2qLDgvmhyIxR3JVS8N67CyIOeFRKQlX/llxYJQr1OSGQqM3HTpVP8MjmjcEKbL/OIt2N9C9UFaNQuKOw1laOA==", - "dev": true, - "requires": { - "tslib": "^1.9.3" - } - }, - "@azure/storage-blob": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.3.0.tgz", - "integrity": "sha512-nCySzNfm782pEW3sg9GHj1zE4gBeVVMeEBdWb4MefifrCwQQOoz5cXZTNFiUJAJqAO+/72r2UjZcUwHk/QmzkA==", - "dev": true, - "requires": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^1.2.0", - "@azure/core-lro": "^1.0.2", - "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.9", - "@azure/logger": "^1.0.0", - "@opentelemetry/api": "^0.10.2", - "events": "^3.0.0", - "tslib": "^2.0.0" - }, - "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - } - } - }, - "@opencensus/web-types": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/@opencensus/web-types/-/web-types-0.0.7.tgz", - "integrity": "sha512-xB+w7ZDAu3YBzqH44rCmG9/RlrOmFuDPt/bpf17eJr8eZSrLt7nc7LnWdxM9Mmoj/YKMHpxRg28txu3TcpiL+g==", - "dev": true - }, - "@opentelemetry/api": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-0.10.2.tgz", - "integrity": "sha512-GtpMGd6vkzDMYcpu2t9LlhEgMy/SzBwRnz48EejlRArYqZzqSzAsKmegUK7zHgl+EOIaK9mKHhnRaQu3qw20cA==", - "dev": true, - "requires": { - "@opentelemetry/context-base": "^0.10.2" - }, - "dependencies": { - "@opentelemetry/context-base": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-base/-/context-base-0.10.2.tgz", - "integrity": "sha512-hZNKjKOYsckoOEgBziGMnBcX0M7EtstnCmwz5jZUOUYwlZ+/xxX6z3jPu1XVO2Jivk0eLfuP9GP+vFD49CMetw==", - "dev": true - } - } - }, - "@opentelemetry/context-base": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-base/-/context-base-0.6.1.tgz", - "integrity": "sha512-5bHhlTBBq82ti3qPT15TRxkYTFPPQWbnkkQkmHPtqiS1XcTB69cEKd3Jm7Cfi/vkPoyxapmePE9tyA7EzLt8SQ==", - "dev": true - }, - "@types/chai": { - "version": "4.2.14", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.14.tgz", - "integrity": "sha512-G+ITQPXkwTrslfG5L/BksmbLUA0M1iybEsmCWPqzSxsRRhJZimBKJkoMi8fr/CPygPTj4zO5pJH7I2/cm9M7SQ==", - "dev": true - }, - "@types/chai-subset": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@types/chai-subset/-/chai-subset-1.3.3.tgz", - "integrity": "sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==", - "dev": true, - "requires": { - "@types/chai": "*" - } - }, - "@types/mocha": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.0.tgz", - "integrity": "sha512-/Sge3BymXo4lKc31C8OINJgXLaw+7vL1/L1pGiBNpGrBiT8FQiaFpSYV0uhTaG4y78vcMBTMFsWaHDvuD+xGzQ==", - "dev": true - }, - "@types/node": { - "version": "14.14.16", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.16.tgz", - "integrity": "sha512-naXYePhweTi+BMv11TgioE2/FXU4fSl29HAH1ffxVciNsH3rYXjNP2yM8wqmSm7jS20gM8TIklKiTen+1iVncw==", - "dev": true - }, - "@types/node-fetch": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz", - "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==", - "dev": true, - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - } - }, - "@types/tunnel": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.1.tgz", - "integrity": "sha512-AOqu6bQu5MSWwYvehMXLukFHnupHrpZ8nvgae5Ggie9UwzDR1CCwoXgSSWNZJuyOlCdfdsWMA5F2LlmvyoTv8A==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "azure-iot-common": { - "version": "1.12.7", - "resolved": "https://registry.npmjs.org/azure-iot-common/-/azure-iot-common-1.12.7.tgz", - "integrity": "sha512-YDskP5GkhQw1VDtcQFfWAVcclNCi8/iWUS784lgwgNOQpr8RKHW1fC9o8lVt56TXssq0rrYcl9v2mosSD8WPnw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "getos": "^3.1.1" - } - }, - "azure-iot-device": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/azure-iot-device/-/azure-iot-device-1.17.3.tgz", - "integrity": "sha512-yulmNz88R1xwibU5KeoBCGfGX5ZDJdfkjf12Hv1yUANWIQpOyCqPq3lnu/s3OzssHy7FHpJPA8UxaRS2UYWCfg==", - "dev": true, - "requires": { - "@azure/abort-controller": "1.0.1", - "@azure/storage-blob": "^12.0.0", - "azure-iot-common": "1.12.7", - "azure-iot-http-base": "1.11.7", - "debug": "^4.1.1", - "lodash": "^4.17.20", - "machina": "^4.0.2", - "traverse": "^0.6.6" - } - }, - "azure-iot-device-mqtt": { - "version": "1.15.3", - "resolved": "https://registry.npmjs.org/azure-iot-device-mqtt/-/azure-iot-device-mqtt-1.15.3.tgz", - "integrity": "sha512-+A9emZk76SiaSEoNhR/+BFGDFujtivkUVmGNli60KLEzlUg+pZFC+VTpftJriE+2EgYaJJUq+QXS67wDbtXKrA==", - "dev": true, - "requires": { - "azure-iot-common": "1.12.7", - "azure-iot-device": "1.17.3", - "azure-iot-mqtt-base": "1.12.7", - "debug": "^4.1.1", - "machina": "^4.0.2", - "uuid": "^3.3.2" - }, - "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "azure-iot-http-base": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/azure-iot-http-base/-/azure-iot-http-base-1.11.7.tgz", - "integrity": "sha512-Xt2wLtiblGSag/zJe6vJVkgjlj+jo2C5exuaSGHuMtvkuD/MB74xyGDdgflXcOiTVzS1rXx02I02jgKHTW5BDA==", - "dev": true, - "requires": { - "azure-iot-common": "1.12.7", - "debug": "^4.1.1", - "uuid": "^3.3.2" - }, - "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "azure-iot-mqtt-base": { - "version": "1.12.7", - "resolved": "https://registry.npmjs.org/azure-iot-mqtt-base/-/azure-iot-mqtt-base-1.12.7.tgz", - "integrity": "sha512-MdlF78V+q6OtgeuEtnp2J1bZQLWbiDngHug7psn6CYpEsUhMwfC1oRKO0ElxabCo4o+F32rweYsWXUZNZ1fR6w==", - "dev": true, - "requires": { - "azure-iot-common": "1.12.7", - "debug": "^4.1.1", - "machina": "^4.0.2", - "mqtt": "^4.0.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "pathval": "^1.1.0", - "type-detect": "^4.0.5" - } - }, - "chai-subset": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/chai-subset/-/chai-subset-1.6.0.tgz", - "integrity": "sha1-pdDKFOMpp5WW7XAFi2ZGvWmIz+k=", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/commist/-/commist-1.1.0.tgz", - "integrity": "sha512-rraC8NXWOEjhADbZe9QBNzLAN5Q3fsTPQtBV+fEVj6xKIgDgNiEVE6ZNfHpZOqfQ21YUzfVNUXLOEZquYvQPPg==", - "dev": true, - "requires": { - "leven": "^2.1.0", - "minimist": "^1.1.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "duplexify": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz", - "integrity": "sha512-DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA==", - "dev": true, - "requires": { - "end-of-stream": "^1.4.1", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1", - "stream-shift": "^1.0.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true - }, - "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, - "flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true - }, - "form-data": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", - "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true - }, - "getos": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", - "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", - "dev": true, - "requires": { - "async": "^3.2.0" - } - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "help-me": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/help-me/-/help-me-3.0.0.tgz", - "integrity": "sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ==", - "dev": true, - "requires": { - "glob": "^7.1.6", - "readable-stream": "^3.6.0" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true - }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true - }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, - "machina": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/machina/-/machina-4.0.2.tgz", - "integrity": "sha512-OOlFrW1rd783S6tF36v5Ie/TM64gfvSl9kYLWL2cPA31J71HHWW3XrgSe1BZSFAPkh8532CMJMLv/s9L2aopiA==", - "dev": true, - "requires": { - "lodash": "^4.17.5" - } - }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "dev": true - }, - "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "dev": true, - "requires": { - "mime-db": "1.44.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "mocha": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.1.0.tgz", - "integrity": "sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==", - "dev": true, - "requires": { - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.4", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "5.0.1", - "ms": "2.1.3", - "nanoid": "3.3.3", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "workerpool": "6.2.1", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true - }, - "minimatch": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz", - "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } - } - }, - "mqtt": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-4.2.8.tgz", - "integrity": "sha512-DJYjlXODVXtSDecN8jnNzi6ItX3+ufGsEs9OB3YV24HtkRrh7kpx8L5M1LuyF0KzaiGtWr2PzDcMGAY60KGOSA==", - "dev": true, - "requires": { - "commist": "^1.0.0", - "concat-stream": "^2.0.0", - "debug": "^4.1.1", - "duplexify": "^4.1.1", - "help-me": "^3.0.0", - "inherits": "^2.0.3", - "minimist": "^1.2.5", - "mqtt-packet": "^6.8.0", - "pump": "^3.0.0", - "readable-stream": "^3.6.0", - "reinterval": "^1.1.0", - "split2": "^3.1.0", - "ws": "^7.5.0", - "xtend": "^4.0.2" - } - }, - "mqtt-packet": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-6.10.0.tgz", - "integrity": "sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA==", - "dev": true, - "requires": { - "bl": "^4.0.2", - "debug": "^4.1.1", - "process-nextick-args": "^2.0.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "nanoid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz", - "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==", - "dev": true - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "reinterval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz", - "integrity": "sha1-M2Hs+jymwYKDOA3Qu5VG85D17Oc=", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "requires": { - "readable-stream": "^3.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", - "dev": true - }, - "traverse": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz", - "integrity": "sha1-y99WD9e5r2MlAv7UD5GMFX6pcTc=", - "dev": true - }, - "ts-node": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", - "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", - "dev": true, - "requires": { - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "source-map-support": "^0.5.17", - "yn": "3.1.1" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "dev": true - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "typescript": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz", - "integrity": "sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg==", - "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", - "dev": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "dev": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "workerpool": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz", - "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "ws": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.0.tgz", - "integrity": "sha512-6ezXvzOZupqKj4jUqbQ9tXuJNo+BR2gU8fFRk3XCP3e0G6WT414u5ELe6Y0vtp7kmSJ3F7YWObSNr1ESsgi4vw==", - "dev": true, - "requires": {} - }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - } - }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true - }, - "yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "requires": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "dependencies": { - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, - "decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true - } - } - }, - "yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true - } - } -} diff --git a/single_tech_samples/streamanalytics/e2e/package.json b/single_tech_samples/streamanalytics/e2e/package.json deleted file mode 100644 index 13299a057..000000000 --- a/single_tech_samples/streamanalytics/e2e/package.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "e2e", - "version": "1.0.0", - "description": "", - "scripts": { - "test": "mocha -r ts-node/register '*.ts'" - }, - "keywords": [], - "author": "", - "license": "MIT", - "devDependencies": { - "@azure/storage-blob": "^12.3.0", - "@types/chai": "^4.2.14", - "@types/chai-subset": "^1.3.3", - "@types/mocha": "^8.2.0", - "azure-iot-device": "^1.17.3", - "azure-iot-device-mqtt": "^1.15.3", - "chai": "^4.2.0", - "chai-subset": "^1.6.0", - "mocha": "^10.1.0", - "ts-node": "^9.1.1", - "typescript": "^4.1.3" - } -} diff --git a/single_tech_samples/streamanalytics/.devcontainer/devcontainer.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/.devcontainer/devcontainer.json similarity index 100% rename from single_tech_samples/streamanalytics/.devcontainer/devcontainer.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/.devcontainer/devcontainer.json diff --git a/single_tech_samples/streamanalytics/.gitignore b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/.gitignore similarity index 100% rename from single_tech_samples/streamanalytics/.gitignore rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/.gitignore diff --git a/single_tech_samples/streamanalytics/JobConfig.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/JobConfig.json similarity index 100% rename from single_tech_samples/streamanalytics/JobConfig.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/JobConfig.json diff --git a/single_tech_samples/streamanalytics/streamanalytics_ci_cd/README.md b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/README.md new file mode 100644 index 000000000..fcc5fa509 --- /dev/null +++ b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/README.md @@ -0,0 +1,176 @@ +# Azure Stream Analytics + +![introductory diagram](./docs/images/ASA-job.PNG) + +[Azure Stream Analytics](https://azure.microsoft.com/en-us/products/stream-analytics/) is a serverless real-time analytics service. The goal of this sample is to demonstrate how to develop a streaming pipeline, with IaC and testability in mind. + +## Prerequisites + +## Setup + +1. __Azure Cli__ Will be necessary for various tasks. Please follow the instructions found [here](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli). + +1. __Bicep__ This project uses `Bicep` templates to setup `Azure` infrastructure. Please follow the steps under [Install Bicep Tools](https://docs.microsoft.com/en-us/azure/azure-resource-manager/bicep/install) to install the `Azure Cli` extension. + + For an introduction to `Bicep`, you can find more information in the `Bicep` repo under [Get started with Bicep](https://github.com/Azure/bicep/#get-started-with-bicep). + +1. __Raspberry Pi Azure IoT Online Simulator__ To run through the [Functional Test](#Functional%20Test) section, you can use [this](https://azure-samples.github.io/raspberry-pi-web-simulator/) simulator. Makes sure to follow the step required to edit the js code. + +1. __azure-streamanalytics-cicd__ Unit testing is possible using the `npm` package [azure-streamanalytics-cicd](https://www.npmjs.com/package/azure-streamanalytics-cicd). The tool provides additional features for working with `Azure Stream Analytics` locally. Check [here](https://docs.microsoft.com/en-us/azure/stream-analytics/cicd-tools?tabs=visual-studio-code) for more info. + +1. __Configure environment variables.__ We will assume these are customized and configured per your needs + + ```bash + APP="tech-sample" + ENVIRONMENT="test" + LOCATION="westus" + STORAGE_ACCOUNT="st${APP/-/}${ENVIRONMENT}" + ``` + +## Build + +```bash +# Run Unit Tests +azure-streamanalytics-cicd test -project ./asaproj.json -outputPath ./output/ + +# Create Resource Group + +az group create -n rg-${APP} -l ${LOCATION} + +# Validate Generated Template +az deployment group validate -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} + +# Show plan +az deployment group what-if -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} +``` + +## Deploy + +```bash +# Create Azure Resources. This will also start the job + +az deployment group create -f main.bicep -g rg-${APP} --parameters query='@./streamanalytics-tech-sample.asaql' name=${APP} env=${ENVIRONMENT} + +# Add device + +az iot hub device-identity create --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --edge-enabled +``` + +## Functional Test + +```bash + +# Use connection information with "Raspberry Pi Azure IoT Online Simulator": https://azure-samples.github.io/raspberry-pi-web-simulator/ + +az iot hub device-identity connection-string show --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --output tsv +``` + +> Check the blob storage container to ensure that a json file exists with expected temperature sensor data (exceeding 27 degrees) is present. + +## Automated End-to-End Test + +```bash +export DEVICE_CONNECTION_STRING=$(az iot hub device-identity connection-string show --hub-name iot-${APP}-${ENVIRONMENT} --device-id iot-${APP}-${ENVIRONMENT} --output tsv) +export AZURE_STORAGE_CONNECTION_STRING=$(az storage account show-connection-string -n ${STORAGE_ACCOUNT} --query connectionString -o tsv) + +cd e2e +npm install +npm test +``` + +## Cleanup + +```bash +az group delete -n rg-${APP} +``` + +## Key concepts + +### Infrastructure as Code + +This sample's infrastructure is created using [Bicep](https://github.com/Azure/bicep#what-is-bicep) templates. `Bicep` is a DSL that is transpiled into `Azure`'s native `ARM Templates`. It's currently in preview but already has been integrated into the `Azure Cli`. Also [ARM template reference documentation](https://docs.microsoft.com/en-us/azure/templates/microsoft.devices/iothubs?tabs=bicep) lists `Bicep` along side `ARM Templates`: + +![Bicep template screen capture](docs/images/Bicep-doc.PNG) + +Alternatively, `Terraform` can also be used. + +> Key take aways for `Bicep` +> +> * Day 0 resource provider support. Any Azure resource — whether in private or public preview or GA — can be provisioned using Bicep. +> * No state or state files to manage. All state is stored in Azure, so makes it easy to collaborate and make changes to resources confidently. +> * VSCode extension for Bicep makes it extremely easy to author and get started with advanced type validation based on all Azure resource type API definitions. + +Resource naming conventions attempt to follow examples from [Define your naming convention +](https://docs.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/resource-naming#example-names-for-common-azure-resource-types) where appropriate. + +The structure of the __IaC__ scripts allow you to setup as many versions or the infrastructure as you need easily. For example an individual developer may create a version to use within their __Inner Dev Loop__: + +```bash +DEVELOPER="kaa" +ENVIRONMENT="inner" +LOCATION="japaneast" +STORAGE_ACCOUNT="st${DEVELOPER}${ENVIRONMENT}" + +az group create -n rg-${DEVELOPER} -l $LOCATION + +az deployment group create -f main.bicep -g rg-${DEVELOPER} --parameters query='@./streamanalytics-tech-sample.asaql' name=${DEVELOPER} env=${ENVIRONMENT} + +az iot hub device-identity create --hub-name iot-${DEVELOPER}-${ENVIRONMENT} --device-id iot-${DEVELOPER}-${ENVIRONMENT} --edge-enabled + +export DEVICE_CONNECTION_STRING=$(az iot hub device-identity connection-string show --hub-name iot-${DEVELOPER}-${ENVIRONMENT} --device-id iot-${DEVELOPER}-${ENVIRONMENT} --output tsv) +export AZURE_STORAGE_CONNECTION_STRING=$(az storage account show-connection-string -g rg-${DEVELOPER} -n ${STORAGE_ACCOUNT} --query connectionString -o tsv) + +# Cleanup +az group delete -n rg-${DEVELOPER} +``` + +### Testing + +#### Unit + +`Azure Stream Analytics` can be unit tested locally via the [azure-streamanalytics-cicd](https://www.npmjs.com/package/azure-streamanalytics-cicd) npm package. + +Also this package can be used as part of an Azure DevOps CI\CD pipeline. More info can be found [here](https://docs.microsoft.com/en-us/azure/stream-analytics/set-up-cicd-pipeline). This should make integrating this into your existing CI\CD fairly straight forward. + +> Key take aways for `azure-streamanalytics-cicd` +> +> * Test configuration is found under the __/test__ directory. +> * This is the default location for `azure-streamanalytics-cicd`. +> * __test/testConfig.json__ defines the test cases. +> * __test/temperature ... .json__ defines pipeline inputs and outputs (as `JSON`) + +#### Functional + +![simulator site image](docs/images/InkedIoT-Simulator_LI.jpg) + +Functional testing can be done using the online tool [Raspberry Pi Web Client Simulator](https://azure-samples.github.io/raspberry-pi-web-simulator/). Source code can be found [here](https://github.com/Azure-Samples/raspberry-pi-web-simulator). This is an easy way to interacte with your `Azure Streaming Analytics` pipeline. + +You can manually check the blob storage to see that events are coming through correctly. + +![blob container screen cap](docs/images/BLOB-OUT.PNG) + +> One aspect to consider, is that events will be batched on the scale of seconds due to the `pathPattern` defined in [streamingjobs.bicep](./streamingjobs.bicep) for `bloboutput`. This is done to aid automated testing. You can adjust during functional testing, and for production as required: +> +> _example_ +> +> ```bicep +> pathPattern: '{date}' +> ``` +> +> Then you should be able to see many events per file. + +#### Automated End-to-End + +This sample combines [Azure IoT device SDK](https://www.npmjs.com/package/azure-iot-device) and [Microsoft Azure Storage SDK for JavaScript](https://www.npmjs.com/package/@azure/storage-blob) to create a Node.js (TypeScript) based End-to-End test solution. As mentioned under __Functional__ by default blob output partitioning is done on the seconds resolution to prevent the automated test from waiting an impractical amount of time. This can be made configurable according to your requirements on deploy by altering the `Bicep` template. + +![test result output screen capture](docs/images/e2e-test.PNG) + +Within the test file [e2e/e2e.ts](e2e/e2e.ts) there is the `EXPECTED_E2E_LATENCY_MS` defined to be 1s. So this would also need to be adjusted for a real implementation. + +#### CI/CD + +A sample CI/CD Pipeline YAML file is present in this repo under "samplecicdpipeline.yml". This pipeline runs the tests present under the tests folder, +sets up the IoTHub, and deploys the ASA job using the contents of the streamingjobs.bicep file. In order to add a new ASA job, please do the following: + +1. Include a new bicep file for the additional ASA job, and add it to the main.bicep file. +2. Add the query into the inlineScript under the parameters of the yaml file where the deployment of main.bicep happens. diff --git a/single_tech_samples/streamanalytics/asaproj.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/asaproj.json similarity index 100% rename from single_tech_samples/streamanalytics/asaproj.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/asaproj.json diff --git a/single_tech_samples/streamanalytics/containers.bicep b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/containers.bicep similarity index 100% rename from single_tech_samples/streamanalytics/containers.bicep rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/containers.bicep diff --git a/single_tech_samples/streamanalytics/docs/images/ASA-job.PNG b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/ASA-job.PNG similarity index 100% rename from single_tech_samples/streamanalytics/docs/images/ASA-job.PNG rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/ASA-job.PNG diff --git a/single_tech_samples/streamanalytics/docs/images/BLOB-OUT.PNG b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/BLOB-OUT.PNG similarity index 100% rename from single_tech_samples/streamanalytics/docs/images/BLOB-OUT.PNG rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/BLOB-OUT.PNG diff --git a/single_tech_samples/streamanalytics/docs/images/Bicep-doc.PNG b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/Bicep-doc.PNG similarity index 100% rename from single_tech_samples/streamanalytics/docs/images/Bicep-doc.PNG rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/Bicep-doc.PNG diff --git a/single_tech_samples/streamanalytics/docs/images/InkedIoT-Simulator_LI.jpg b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/InkedIoT-Simulator_LI.jpg similarity index 100% rename from single_tech_samples/streamanalytics/docs/images/InkedIoT-Simulator_LI.jpg rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/InkedIoT-Simulator_LI.jpg diff --git a/single_tech_samples/streamanalytics/docs/images/e2e-test.PNG b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/e2e-test.PNG similarity index 100% rename from single_tech_samples/streamanalytics/docs/images/e2e-test.PNG rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/docs/images/e2e-test.PNG diff --git a/single_tech_samples/streamanalytics/e2e/e2e.ts b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/e2e/e2e.ts similarity index 100% rename from single_tech_samples/streamanalytics/e2e/e2e.ts rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/e2e/e2e.ts diff --git a/single_tech_samples/streamanalytics/iothubs.bicep b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/iothubs.bicep similarity index 100% rename from single_tech_samples/streamanalytics/iothubs.bicep rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/iothubs.bicep diff --git a/single_tech_samples/streamanalytics/main.bicep b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/main.bicep similarity index 100% rename from single_tech_samples/streamanalytics/main.bicep rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/main.bicep diff --git a/single_tech_samples/streamanalytics/samplecicdpipeline.yml b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/samplecicdpipeline.yml similarity index 100% rename from single_tech_samples/streamanalytics/samplecicdpipeline.yml rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/samplecicdpipeline.yml diff --git a/single_tech_samples/streamanalytics/streamanalytics-tech-sample.asaql b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/streamanalytics-tech-sample.asaql similarity index 100% rename from single_tech_samples/streamanalytics/streamanalytics-tech-sample.asaql rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/streamanalytics-tech-sample.asaql diff --git a/single_tech_samples/streamanalytics/streamingjobs.bicep b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/streamingjobs.bicep similarity index 100% rename from single_tech_samples/streamanalytics/streamingjobs.bicep rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/streamingjobs.bicep diff --git a/single_tech_samples/streamanalytics/test/temperature_equal_to_27_degrees.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_equal_to_27_degrees.json similarity index 100% rename from single_tech_samples/streamanalytics/test/temperature_equal_to_27_degrees.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_equal_to_27_degrees.json diff --git a/single_tech_samples/streamanalytics/test/temperature_greater_than_27_degrees.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_greater_than_27_degrees.json similarity index 100% rename from single_tech_samples/streamanalytics/test/temperature_greater_than_27_degrees.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_greater_than_27_degrees.json diff --git a/single_tech_samples/streamanalytics/test/temperature_less_than_27_degrees.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_less_than_27_degrees.json similarity index 100% rename from single_tech_samples/streamanalytics/test/temperature_less_than_27_degrees.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/temperature_less_than_27_degrees.json diff --git a/single_tech_samples/streamanalytics/test/testConfig.json b/single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/testConfig.json similarity index 100% rename from single_tech_samples/streamanalytics/test/testConfig.json rename to single_tech_samples/streamanalytics/streamanalytics_ci_cd/test/testConfig.json diff --git a/single_tech_samples/synapseanalytics/README.md b/single_tech_samples/synapseanalytics/README.md index 0818c136f..3db6817c9 100644 --- a/single_tech_samples/synapseanalytics/README.md +++ b/single_tech_samples/synapseanalytics/README.md @@ -1,6 +1,7 @@ # Azure Synapse Analytics +[Azure Synapse Analytics](https://learn.microsoft.com/en-au/azure/synapse-analytics/) is an enterprise analytics service that accelerates time to insight across data warehouses and big data systems. It brings together the best of SQL technologies used in enterprise data warehousing, Apache Spark technologies for big data, and Azure Data Explorer for log and time series analytics. It provides a unified experience to ingest, prepare, manage, and serve data for immediate BI and machine learning needs. + ## Samples -1. [Loading Dynamic Modules in Synapse Data Pipelines](sample1_loading_dynamic_modules/README.md) - this demonstrates how to help enable configuration-based pipelines by showcasing dynamically loading data transformation modules. -2. [Synapse Analytics Serverless Pools Best Practices using Delta Lake](sample2_synapseserverless/README.md) - this demonstrates how to work with synapse serverless and delta files, overcoming automation challenges and implementing CLS (Column Level Security) through the use of views implemented on top of the delta files. +- [Serverless pool best practices](./synapse_serverless/README.md) - This sample demonstrates how to work with synapse serverless and delta files, overcoming automation challenges and implementing CLS (Column Level Security) through the use of views implemented on top of the delta files. diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/data_filter-0.0.1-py3-none-any.whl b/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/data_filter-0.0.1-py3-none-any.whl deleted file mode 100755 index 95e2387c7c428a2d05ad7797a1682d8ad5bf729d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2270 zcmWIWW@Zs#U|`^2IAm85eD9X$GDAiN1{Ed-20ox@N@7W3d|GBsNotW^L1k#*!K}ju zJbT4|@hk1#5^$*O#?cLj`F6kAAiL|fgk$g9Fq4hJo(sRcPe1Ov+cF{gT6L9w*Yg{P z3nnuDj5xh=^A)!lfJ^&uL)fyGS!0==MhAS9w1IhUK%)HE!_;_H*GBY5QJ_g1^oNoOk9-tB~Al3$A zqu{_l?;Jz_#Lw5niU z+BTqJ|AAPOfT6jmC5a$Q^|Ffd^L+dE_Awdqw8S6vV!b4|cH85qz9u$-3+vAu+aNeQ zMRd0P!rJmA$HJxQ`#zpIeZg5{lmEoC`g_iNn4;(U+T+4^`IAe(NojZq8(s)k%G)fz zewegCaq zk#jTQm^o^QPG-Aq#0>N_FmV&~d`W&md`@avYK~q>Mag6IV7z}tF(3wL3J5C#F}}D7 z_i%Of;Xd!-d-fu)x31Q?Gv_x48C)@bP~?BsTh~kHr2eKL53iFtdY$_0D+4bWTrl2r z#rVP#u2bjrFMidz#;c+0b@rssrXUSXE#IeHo<7@yG**~gJA3-P_f_9BtDj)Ru*Mz1 z$}XUjE(5U&0jK%8hB&%7hB(G{pXF;Z5NLV-TjV#>gtp}Tdp=jP9^J2Obv4_hn|b=+ z_UQ>s$8Mi7zb|7E>^!qe`nbx$=rvx&axR8!lcf0f96G5xtJGArsX zPX73M+0PDsuR94JBHU-L5XfmRGW1z=boK3>kMAB#I}_XSe{X{7%kW*(XVw1NIk)Om zZpSX62&Nje)EanD;lu=BY;^&%j1mFA1i3o<2f5TgGj@}+Et&_95!q{xcfxY zLRL{n#?%`nig$aAVlvhpzN{WO!^>>V`IY}yTd_ahq$_#M>Hm{sN{j)&c1|iSd9`}$ z$|}zOzq!I63YK4d>2h~hdx*waKd+qOqiOYB1UcA3F zCsE?&?E;hfSve=YnqP*^xHsv5;_4F>NsJ6@bCjwdiv=z9G-XFi zR`|nu+fio1pQRxOTc6#&wRXnzz!{tOPSjbvl}mdv9~Zk=_s<>OCdaQ@=GAE%2yVLf zFQHt?ChqO|YUydw#l~*EHy8}oK62|S%QZRxNs%>TD@hR=JAfLIEG1N~q8p4}nj#FoOTb{1 zvK8G}^l}Pe>@8qMz~^3+QVZQ!^g;_^tO~GH#AhtH2tzjxy`VuDx1WG;M1& diff --git a/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/md5-0.0.1-py3-none-any.whl b/single_tech_samples/synapseanalytics/sample1_loading_dynamic_modules/packages/md5-0.0.1-py3-none-any.whl deleted file mode 100755 index a1e19e706a10365339bc35ac8dd9785ed5f838c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2203 zcmWIWW@Zs#U|`^2aJ8-oKCYf{u7{C7^;Q$M9HA`4Zw$eZo-0c;k}Tz{oNaOY`vdV|UCTeYUJ+?*VOWD|p?>9JZn=5^};f}-n;7t>)zcs5KOWd{h;_V3b zIR=v+t(v)qQL6aW+QQx-tNL}fZ%a>jU0`AJcgOt?E8ae=`uLZ1ogK>y!!MD$nhrfV zaa?ors{>8}^X^}s8I`-PJ3aU2H1P?lLZ^y0t;!IWdfpuBsAG1dn58B1{h9YdeA}*w zp4I(R^Y3qV@)n>SFQw^{1w#aKyDI-^mo*wB?rgoPt?7CR5jM z-<+b!F6PJ|wYt*o+}EptIr7ircm4Wvcy+RR^!>1XyZ+63aOx{#06e~`H7bIEQN+Lm zB7lG!h~wik^D;}~)3VbJCItp6-*B^XES}Y!e!ov2 ze^Zc$*GV0{PJQ;3ffo!e7;m~_eBlY#sq^|5zv^7$)zI}id(vl9kcOs~?^7;MpY1^! zD@?APJ$>H$s_&WAPcUMw@RgWT1<)z$fLI2HlYCu699i1#6qJqf9#r}rK0{!W%@IfX-~upE1x`H_DW1; z8FOjtugc#)+kY2YPMenUM10}r(%@oY<6?nDb~8_|tUT&*i>ZNa*;DbSN-jGd@aUnX zv&JvA|2u$j5Clx*QaD^3F9P!?e~}AnCa11FQB$U!o_N+RErhXNy1Q@p_||>f*jO zBf|B%-xoVKb=w)Ut(F~Ae-IbHE9g(yw?z_VF%!PoUFH$ivPj-m;##2}Tp26=XXTY# z*=v1!4Y+R{sxNIzww#uJnoW4wOaH_AzWrBE@Cn`ieuHyz``gu=OXoci)6C7*zBlDj z$*w6DDw-{Ob6(C9yn4xX>Z;ESKjdHV+XkAb2Fj&vS>KVX*h;JUteL$b=iCEcJNDgOPg4DgzBRS~V|?!y6Y+2U2zyRsBy+I and add the owner of the deployment as a member. Once the pipeline finishes successfully, you can navigate through the db_serverless database and check the views that were created and experiment the CLS scripts. +The deployment script responsible to deploy a Microsoft Entra group called AADGR and add the owner of the deployment as a member. Once the pipeline finishes successfully, you can navigate through the db_serverless database and check the views that were created and experiment the CLS scripts. To successfully test the CLS functionality there are a couple of steps you need to execute manually. After the deployment is complete: @@ -285,7 +285,7 @@ The infrastructure is composed by: - one storage account for internal Synapse use, named st2 - one storage account that acts as the data lake to store the NYC Taxi Data, named st1 - a Synapse workspace that includes a Serverless pool and a Spark pool, named st1 - - one AAD group, named AADGR + - one Microsoft Entra group, named AADGR - a key vault resource named, - one resource group named -syn-mrg-, for internal use of Synapse @@ -330,7 +330,7 @@ The synapse artifacts are uploaded immediately after the infrastructure is succe To remove the sample completely you need to remove the following assets: - the resource group: -rg, resource group -- the aad group: AADGR +- the Microsoft Entra group: AADGR ## Avoiding unnecessary costs diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/deploy.sh b/single_tech_samples/synapseanalytics/synapse_serverless/deploy.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/deploy.sh rename to single_tech_samples/synapseanalytics/synapse_serverless/deploy.sh diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/CLS.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/CLS.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/CLS.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/CLS.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/NO_AAD_MEMBER.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/NO_AAD_MEMBER.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/NO_AAD_MEMBER.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/NO_AAD_MEMBER.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/SSMS.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/SSMS.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/SSMS.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/SSMS.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/container.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/container.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/container.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/container.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_field_query_delete.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_field_query_delete.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_field_query_delete.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_field_query_delete.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_folder_delete.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_folder_delete.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_folder_delete.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_folder_delete.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_ingestion.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_ingestion.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_ingestion.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_ingestion.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_running_vacuum.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_running_vacuum.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_after_running_vacuum.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_after_running_vacuum.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_config_json.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_config_json.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/datalake_config_json.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/datalake_config_json.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/deltalake_folders.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/deltalake_folders.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/deltalake_folders.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/deltalake_folders.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/stored_procedure_details.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/stored_procedure_details.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/stored_procedure_details.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/stored_procedure_details.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/images/views_synapse_studio.jpg b/single_tech_samples/synapseanalytics/synapse_serverless/images/views_synapse_studio.jpg similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/images/views_synapse_studio.jpg rename to single_tech_samples/synapseanalytics/synapse_serverless/images/views_synapse_studio.jpg diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/main.bicep b/single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/main.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/main.bicep rename to single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/main.bicep diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/keyvault.bicep b/single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/keyvault.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/keyvault.bicep rename to single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/keyvault.bicep diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/storage.bicep b/single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/storage.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/storage.bicep rename to single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/storage.bicep diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/synapse.bicep b/single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/synapse.bicep similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/infrastructure/modules/synapse.bicep rename to single_tech_samples/synapseanalytics/synapse_serverless/infrastructure/modules/synapse.bicep diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/common.sh b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/common.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/common.sh rename to single_tech_samples/synapseanalytics/synapse_serverless/scripts/common.sh diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/config/datalake_config_template.json b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/config/datalake_config_template.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/config/datalake_config_template.json rename to single_tech_samples/synapseanalytics/synapse_serverless/scripts/config/datalake_config_template.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/deploy_infrastructure.sh b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/deploy_infrastructure.sh similarity index 87% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/deploy_infrastructure.sh rename to single_tech_samples/synapseanalytics/synapse_serverless/scripts/deploy_infrastructure.sh index 42877c2a4..ab54fcd35 100644 --- a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/deploy_infrastructure.sh +++ b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/deploy_infrastructure.sh @@ -124,13 +124,13 @@ assign_synapse_role_if_not_exists "$synapseworkspace_name" "Synapse Contributor" ####################### # RBAC - Control Plane -# Create a AAD Group, if you have permissions to do it (otherwise you will need to request to the AAD admin and comment this line) -echo "Creating AAD Group:AADGR${PROJECT}${DEPLOYMENT_ID}" +# Create a Microsoft Entra group, if you have permissions to do it (otherwise you will need to request to the Microsoft Entra admin and comment this line) +echo "Creating Microsoft Entra group:AADGR${PROJECT}${DEPLOYMENT_ID}" aad_group_name="AADGR${PROJECT}${DEPLOYMENT_ID}" aad_group_output=$(az ad group create --display-name "${aad_group_name}" --mail-nickname "${aad_group_name}" --output json) aad_group_id=$(echo $aad_group_output | jq -r '.id') -echo "Adding the AAD Group id to the KeyVault" +echo "Adding the Microsoft Entra Group id to the KeyVault" az keyvault secret set --vault-name "$kv_name" --name "$aad_group_name" --value "$aad_group_id" -o none ########################## @@ -146,12 +146,12 @@ KEYVAULT_NAME=$kv_name \ #################### # CLS -# Get AAD Group ObjectID +# Get Microsoft Entra Group Object ID aadGroupObjectId=$(az ad group list --filter "(displayName eq 'AADGR${PROJECT}${DEPLOYMENT_ID}')" --query "[].id" --output tsv) -echo "Get AAD Group id: ${aadGroupObjectId}" +echo "Get Microsoft Entra Group id: ${aadGroupObjectId}" until [ -n "${aadGroupObjectId}" ] do - echo "waiting for the aad group to be created..." + echo "waiting for the Microsoft Entra group to be created..." sleep 10 done @@ -160,15 +160,15 @@ until [ -n "${aadGroupObjectId}" ] # Allow Synapse Reader access to the AADGroup assign_synapse_role_if_not_exists "$synapseworkspace_name" "Synapse User" "$aadGroupObjectId" -# Add the owner of the deployment to the AAD Group, if you have permissions to do it (otherwise you will need to request to the AAD admin and comment this line) +# Add the owner of the deployment to the Microsft Entra Group, if you have permissions to do it (otherwise you will need to request to the Microsoft Entra admin and comment this line) #if [[ $(az ad group member check --group "AADGR${PROJECT}${DEPLOYMENT_ID}" --member-id ${owner_object_id}) == false ]]; then -echo "Adding members to AAD Group:AADGR${PROJECT}${DEPLOYMENT_ID}" +echo "Adding members to Microsoft Entra Group:AADGR${PROJECT}${DEPLOYMENT_ID}" az ad group member add --group "AADGR${PROJECT}${DEPLOYMENT_ID}" --member-id $owner_object_id #fi -# Allow Contributor to the AAD Group on Synapse workspace +# Allow Contributor to the Microsoft Entra Group on Synapse workspace az role assignment create --role "Contributor" --assignee-object-id "${aadGroupObjectId}" --assignee-principal-type "Group" --scope "/subscriptions/${AZURE_SUBSCRIPTION_ID}/resourceGroups/${resource_group_name}/providers/Microsoft.Synapse/workspaces/${synapseworkspace_name}" -# Allow Contributor to the AAD Group on Synapse workspace -echo "Giving ACL permission on the datalake container for the AAD Group" +# Allow Contributor to the Microsoft Entra Group on Synapse workspace +echo "Giving ACL permission on the datalake container for the Microsoft Entra Group" az storage fs access set --acl "group:${aadGroupObjectId}:rwx" -p "/" -f "datalake" --account-name "$azure_storage_account" --account-key "$azure_storage_key" -o none diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/deploy_synapse_artifacts.sh b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/deploy_synapse_artifacts.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/deploy_synapse_artifacts.sh rename to single_tech_samples/synapseanalytics/synapse_serverless/scripts/deploy_synapse_artifacts.sh diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/verify_prerequisites.sh b/single_tech_samples/synapseanalytics/synapse_serverless/scripts/verify_prerequisites.sh similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/scripts/verify_prerequisites.sh rename to single_tech_samples/synapseanalytics/synapse_serverless/scripts/verify_prerequisites.sh diff --git a/single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/__init__.py b/single_tech_samples/synapseanalytics/synapse_serverless/src/adlsaccess/__init__.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample3_integration_testing/tests/integrationtests/tests/__init__.py rename to single_tech_samples/synapseanalytics/synapse_serverless/src/adlsaccess/__init__.py diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/src/adlsaccess/synadlsaccess.py b/single_tech_samples/synapseanalytics/synapse_serverless/src/adlsaccess/synadlsaccess.py similarity index 98% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/src/adlsaccess/synadlsaccess.py rename to single_tech_samples/synapseanalytics/synapse_serverless/src/adlsaccess/synadlsaccess.py index 54f5595b2..a769d0ce2 100644 --- a/single_tech_samples/synapseanalytics/sample2_synapseserverless/src/adlsaccess/synadlsaccess.py +++ b/single_tech_samples/synapseanalytics/synapse_serverless/src/adlsaccess/synadlsaccess.py @@ -183,4 +183,4 @@ def check_config_errors(self): raise ValueError( f"Config file check failed. Errors are: {self.config_check_errors}" ) - print("ACL Statements generation and Active Directory Check Complete.") + print("ACL Statements generation and Microsoft Entra ID check complete.") diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/src/requirements.txt b/single_tech_samples/synapseanalytics/synapse_serverless/src/requirements.txt similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/src/requirements.txt rename to single_tech_samples/synapseanalytics/synapse_serverless/src/requirements.txt diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/src/setup.py b/single_tech_samples/synapseanalytics/synapse_serverless/src/setup.py similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/src/setup.py rename to single_tech_samples/synapseanalytics/synapse_serverless/src/setup.py diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb similarity index 94% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb index 3aef4c98b..bf584a8ba 100644 --- a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb +++ b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library.ipynb @@ -3,57 +3,48 @@ { "attachments": {}, "cell_type": "markdown", - "source": [ - "## Install Required Python Modules\n" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Install Required Python Modules\n" + ] }, { "cell_type": "markdown", - "source": [ - "\n", - "*`az synapse spark pool update` with --library-requirements requirements.txt* - *Concern: Long time(~ 20 mins) for the statement to return status*\n", - "\n", - "*In this implementation a consolidated wheel file was used as a workspace package. - Concern - even this is taking ~15 mins for Spark pool to get updated*" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "\n", + "*`az synapse spark pool update` with --library-requirements requirements.txt* - *Concern: Long time(~ 20 mins) for the statement to return status*\n", + "\n", + "*In this implementation a consolidated wheel file was used as a workspace package. - Concern - even this is taking ~15 mins for Spark pool to get updated*" + ] }, { "cell_type": "markdown", - "source": [ - "# Import Libraries" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "# Import Libraries" + ] }, { "cell_type": "code", - "source": [ - "# pip install azure-storage-file-datalake\n", - "import json\n", - "from collections import defaultdict\n", - "from datetime import datetime\n", - "from notebookutils import mssparkutils\n", - "from adlsaccess.synadlsaccess import ADLSOps" - ], - "outputs": [], "execution_count": null, "metadata": { "jupyter": { @@ -65,23 +56,48 @@ "deleting": false } } - } + }, + "outputs": [], + "source": [ + "# pip install azure-storage-file-datalake\n", + "import json\n", + "from collections import defaultdict\n", + "from datetime import datetime\n", + "from notebookutils import mssparkutils\n", + "from adlsaccess.synadlsaccess import ADLSOps" + ] }, { "cell_type": "markdown", - "source": [ - "## Define Parameters to Enable connection to Storage" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Define Parameters to Enable connection to Storage" + ] }, { "cell_type": "code", + "execution_count": null, + "metadata": { + "jupyter": { + "outputs_hidden": false, + "source_hidden": false + }, + "nteract": { + "transient": { + "deleting": false + } + }, + "tags": [ + "parameters" + ] + }, + "outputs": [], "source": [ "\n", "# Read from pipeline\n", @@ -98,45 +114,23 @@ "# Secrets based values\n", "storage_access_key = mssparkutils.credentials.getSecretWithLS(keyvault_ls_name, storage_key_name)\n", "storage_acct_connection = f\"DefaultEndpointsProtocol=https;AccountName={storage_acct};AccountKey={storage_access_key};EndpointSuffix=core.windows.net\"\n" - ], - "outputs": [], - "execution_count": null, - "metadata": { - "jupyter": { - "outputs_hidden": false, - "source_hidden": false - }, - "nteract": { - "transient": { - "deleting": false - } - }, - "tags": [ - "parameters" - ] - } + ] }, { "cell_type": "markdown", - "source": [ - "## Read Config from ADLS" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Read Config from ADLS" + ] }, { "cell_type": "code", - "source": [ - "adls_ops = ADLSOps(storage_acct, keyvault_ls_name, storage_key_name)\n", - "adls_ops.initialize_storage_account(storage_access_key)\n", - "config = adls_ops.read_config_from_adls()" - ], - "outputs": [], "execution_count": null, "metadata": { "jupyter": { @@ -148,23 +142,42 @@ "deleting": false } } - } + }, + "outputs": [], + "source": [ + "adls_ops = ADLSOps(storage_acct, keyvault_ls_name, storage_key_name)\n", + "adls_ops.initialize_storage_account(storage_access_key)\n", + "config = adls_ops.read_config_from_adls()" + ] }, { "cell_type": "markdown", - "source": [ - "## Evaluate overall ACLs needed in short form" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Evaluate overall ACLs needed in short form" + ] }, { "cell_type": "code", + "execution_count": null, + "metadata": { + "jupyter": { + "outputs_hidden": false, + "source_hidden": false + }, + "nteract": { + "transient": { + "deleting": false + } + } + }, + "outputs": [], "source": [ "\n", "ad_perms = adls_ops.evaluate_ad_acl_perms(config, current_ts)\n", @@ -175,45 +188,26 @@ "try:\n", " ad_map = { ad: mssparkutils.credentials.getSecretWithLS(keyvault_ls_name, ad) for ad in adls_ops.ad_set}\n", "except Exception as e:\n", - " config_check_errors.append(f\"No ID returned for given Active directory name. error is {e}\")\n", + " config_check_errors.append(f\"No ID returned for given Microsoft Entra ID name. error is {e}\")\n", " \n", "print(ad_map)" - ], - "outputs": [], - "execution_count": null, - "metadata": { - "jupyter": { - "outputs_hidden": false, - "source_hidden": false - }, - "nteract": { - "transient": { - "deleting": false - } - } - } + ] }, { "cell_type": "markdown", - "source": [ - "## Grant ACLs Recursively" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Grant ACLs Recursively" + ] }, { "cell_type": "code", - "source": [ - "adls_ops.update_parent_folder_acls(ad_perms, ad_map)\n", - "adls_ops.update_ad_acls(ad_perms, ad_map)\n", - "adls_ops.check_config_errors()\n" - ], - "outputs": [], "execution_count": null, "metadata": { "jupyter": { @@ -225,32 +219,30 @@ "deleting": false } } - } + }, + "outputs": [], + "source": [ + "adls_ops.update_parent_folder_acls(ad_perms, ad_map)\n", + "adls_ops.update_ad_acls(ad_perms, ad_map)\n", + "adls_ops.check_config_errors()\n" + ] }, { "cell_type": "markdown", - "source": [ - "## Update Config file with latest run time\n", - "- rename with timestamp and create a new config file to reflect lastUpdatedDatalake timestamp" - ], "metadata": { "nteract": { "transient": { "deleting": false } } - } + }, + "source": [ + "## Update Config file with latest run time\n", + "- rename with timestamp and create a new config file to reflect lastUpdatedDatalake timestamp" + ] }, { "cell_type": "code", - "source": [ - "# mssparkutils.fs.help()\n", - "source_config = f\"abfss://{adls_ops.config_container}@{storage_acct}.dfs.core.windows.net{adls_ops.config_file_path}{adls_ops.config_file_name}\"\n", - "backup_config = f\"abfss://{adls_ops.config_container}@{storage_acct}.dfs.core.windows.net{adls_ops.config_file_path}{adls_ops.config_file_name}_{current_ts}\"\n", - "mssparkutils.fs.mv(source_config, backup_config, overwrite=True)\n", - "mssparkutils.fs.put(source_config, json.dumps(config, indent=2, default=str), overwrite=True)\n" - ], - "outputs": [], "execution_count": null, "metadata": { "jupyter": { @@ -262,24 +254,32 @@ "deleting": false } } - } + }, + "outputs": [], + "source": [ + "# mssparkutils.fs.help()\n", + "source_config = f\"abfss://{adls_ops.config_container}@{storage_acct}.dfs.core.windows.net{adls_ops.config_file_path}{adls_ops.config_file_name}\"\n", + "backup_config = f\"abfss://{adls_ops.config_container}@{storage_acct}.dfs.core.windows.net{adls_ops.config_file_path}{adls_ops.config_file_name}_{current_ts}\"\n", + "mssparkutils.fs.mv(source_config, backup_config, overwrite=True)\n", + "mssparkutils.fs.put(source_config, json.dumps(config, indent=2, default=str), overwrite=True)\n" + ] } ], "metadata": { + "description": null, "kernelspec": { - "name": "synapse_pyspark", - "display_name": "python" + "display_name": "python", + "name": "synapse_pyspark" }, "language_info": { "name": "python" }, - "description": null, "save_output": true, "synapse_widget": { - "version": "0.1", - "state": {} + "state": {}, + "version": "0.1" } }, "nbformat": 4, "nbformat_minor": 2 -} \ No newline at end of file +} diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb similarity index 97% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb index 5a00c2bcf..1837c7e16 100644 --- a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb +++ b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Config_Operations_Library_No_Wheel.ipynb @@ -149,9 +149,9 @@ "\n", "\n", "# Assumption: ACL Grant statements are run after data copy step is complete. Otherwise we will run into `The specified path does not exist` errors.\n", - "# We are granting \"r-x\" on all folders (recusively from root) so that anyone can \"read and list the *Folders*\" . \n", + "# We are granting \"r-x\" on all folders (recursively from root) so that anyone can \"read and list the *Folders*\" . \n", "# We follow this statement with another recursive update this time including the \"datafiles\" path which will overwrite any extra permissions granted in the previous step.\n", - "# Otherwise, unless we create the parent folders seperately and grant default permissions, we will not have access to parent folders and avoid access denied errors.\n", + "# Otherwise, unless we create the parent folders separately and grant default permissions, we will not have access to parent folders and avoid access denied errors.\n", "def update_parent_folder_acls(ad_perms, ad_map):\n", " parent_dirs = set()\n", " for path, ad in ad_perms:\n", @@ -176,7 +176,7 @@ "def check_config_errors(): \n", " if len(config_check_errors) > 0:\n", " raise ValueError(f\"Config file check failed. Errors are: {config_check_errors}\")\n", - " print(\"ACL Statements generation and Active Directory Check Complete.\")\n", + " print(\"ACL Statements generation and Microsoft Entra ID check completed.\")\n", "\n" ] }, @@ -324,7 +324,7 @@ "try:\n", " ad_map = { ad: mssparkutils.credentials.getSecretWithLS(keyvault_ls_name, ad) for ad in ad_set}\n", "except Exception as e:\n", - " config_check_errors.append(f\"No ID returned for given Active directory name. error is {e}\")\n", + " config_check_errors.append(f\"No ID returned for given Microsoft Entra ID name. error is {e}\")\n", " \n", "print(ad_map)" ] diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Convert_Parquet_to_Delta.ipynb diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention.ipynb b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention.ipynb similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention.ipynb rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention.ipynb diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention_No_Wheel.ipynb b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention_No_Wheel.ipynb similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention_No_Wheel.ipynb rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/notebooks/Nb_NYCTaxi_Run_Data_Retention_No_Wheel.ipynb diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Folder.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Folder.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Folder.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Folder.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Year_Folder.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Year_Folder.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Year_Folder.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_ADLS2_Year_Folder.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_Config.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_Config.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_Config.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_Config.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_HTTP.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_HTTP.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_HTTP.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/datasets/Ds_NYCTaxi_HTTP.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2_Folder.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2_Folder.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2_Folder.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_ADLS2_Folder.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Config.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Config.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Config.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Config.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_HTTP.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_HTTP.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_HTTP.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_HTTP.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_KeyVault.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_KeyVault.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_KeyVault.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_KeyVault.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_db.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_db.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_db.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_db.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_master.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_master.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_master.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/linkedservices/Ls_NYCTaxi_Synapse_Serverless_master.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_0_Main.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_0_Main.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_0_Main.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_0_Main.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_1_Setup.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_1_Setup.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_1_Setup.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_1_Setup.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_CreateServerlessView.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_CreateServerlessView.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_CreateServerlessView.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_CreateServerlessView.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_IngestData.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_IngestData.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_IngestData.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_2_IngestData.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_Run_Data_Retention.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_Run_Data_Retention.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_Run_Data_Retention.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/pipelines/Pl_NYCTaxi_Run_Data_Retention.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql similarity index 84% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql index 0cfe73697..9dd49e671 100644 --- a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql +++ b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/scripts/Sc_Column_Level_Security.sql @@ -1,6 +1,6 @@ /* RUN THIS STEPS with the user that executed the sample deployment - let's call it USER_1*/ /* Step 1: - Log in to Synapse Studio with USER_1 and */ -/* - Replace the name of the AAD Group to AADGR you used on the deployment*/ +/* - Replace the name of the Microsoft Entra group to AADGR you used on the deployment*/ /* - Make sure you select the db_serverless instead of master under the Built-In pool */ /* - and run the query: */ CREATE LOGIN [AADGR] FROM EXTERNAL PROVIDER; @@ -9,7 +9,7 @@ CREATE LOGIN [AADGR] FROM EXTERNAL PROVIDER; CREATE USER [SynapseDbUser] FROM LOGIN [AADGR] ; /* RUN THIS STEPS with the manually created AD user , let's call it USER_2*/ -/* Step 3: Add USER_2 to AD Group AADGR*/ +/* Step 3: Add USER_2 to Microsoft Entra group AADGR*/ /* Step 4: Log in into Azure with USER_2 */ /* Step 5: Navigate to Synapse Studio: https://web.azuresynapse.net/ and make sure you are logged with USER_2)*/ /* Step 6: Run the following query (make sure you are in the db_serverless database)*/ @@ -30,4 +30,4 @@ GRANT SELECT ON VW_202010(VendorID,total_amount) TO SynapseDbUser; /* Step 10: Run the following query on the Synapse Studio logged with USER_2 */ select VendorID,total_amount from VW_202010 -/* Step 11: You should be able to see the results as the AAD group is authorized on those 2 columns */ \ No newline at end of file +/* Step 11: You should be able to see the results as the Microsoft Entra group is authorized on those 2 columns */ \ No newline at end of file diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/triggers/Tg_NYCTaxi_0_Main.json b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/triggers/Tg_NYCTaxi_0_Main.json similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/triggers/Tg_NYCTaxi_0_Main.json rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/triggers/Tg_NYCTaxi_0_Main.json diff --git a/single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/workspace_packages/adlsaccess-1.0-py3-none-any.whl b/single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/workspace_packages/adlsaccess-1.0-py3-none-any.whl similarity index 100% rename from single_tech_samples/synapseanalytics/sample2_synapseserverless/synapseartifacts/workspace/workspace_packages/adlsaccess-1.0-py3-none-any.whl rename to single_tech_samples/synapseanalytics/synapse_serverless/synapseartifacts/workspace/workspace_packages/adlsaccess-1.0-py3-none-any.whl