Skip to content

Commit

Permalink
Initial version of harvester regression testing
Browse files Browse the repository at this point in the history
  • Loading branch information
RomanIakovlev committed Sep 18, 2024
1 parent 5d9b5a7 commit 6107258
Show file tree
Hide file tree
Showing 10 changed files with 1,223 additions and 0 deletions.
10 changes: 10 additions & 0 deletions tools/harvester-forwarding/.funcignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
*.js.map
*.ts
.git*
.vscode
__azurite_db*__.json
__blobstorage__
__queuestorage__
local.settings.json
test
tsconfig.json
99 changes: 99 additions & 0 deletions tools/harvester-forwarding/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# next.js build output
.next

# nuxt.js build output
.nuxt

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TypeScript output
dist
out

# Azure Functions artifacts
bin
obj
appsettings.json
local.settings.json

# Azurite artifacts
__blobstorage__
__queuestorage__
__azurite_db*__.json
16 changes: 16 additions & 0 deletions tools/harvester-forwarding/host.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"version": "2.0",
"functionTimeout": "00:10:00",
"logging": {
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"excludedTypes": "Request"
}
}
},
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.*, 5.0.0)"
}
}
135 changes: 135 additions & 0 deletions tools/harvester-forwarding/logicapp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"For_each": {
"actions": {
"Until": {
"actions": {
"Delay": {
"inputs": {
"interval": {
"count": 1,
"unit": "Minute"
}
},
"runAfter": {
"Parse_JSON": [
"Succeeded"
]
},
"type": "Wait"
},
"HTTP": {
"inputs": {
"method": "GET",
"uri": "https://clearlydefined-api-dev.azurewebsites.net/definitions/@{encodeUriComponent(items('For_each'))}"
},
"type": "Http"
},
"Parse_JSON": {
"inputs": {
"content": "@body('HTTP')",
"schema": {
"properties": {
"described": {
"properties": {
"tools": {
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
},
"runAfter": {
"HTTP": [
"Succeeded"
]
},
"type": "ParseJson"
}
},
"expression": "@contains(body('Parse_JSON')?['described'], 'tools')",
"limit": {
"timeout": "PT1H"
},
"type": "Until"
}
},
"foreach": "@body('Parse_Function_Response')",
"runAfter": {
"Parse_Function_Response": [
"Succeeded"
]
},
"runtimeConfiguration": {
"concurrency": {
"repetitions": 50
}
},
"type": "Foreach"
},
"Get_Recent_Definitions": {
"inputs": {
"authentication": {
"type": "ManagedServiceIdentity"
},
"method": "GET",
"queries": {
"days": "1",
"limit": "1"
},
"uri": "https://cosmos-query-function-app.azurewebsites.net/api/getRecentDefinitions"
},
"runAfter": {},
"type": "Http"
},
"Parse_Function_Response": {
"inputs": {
"content": "@body('Get_Recent_Definitions')",
"schema": {
"items": {
"type": "string"
},
"type": "array"
}
},
"runAfter": {
"Get_Recent_Definitions": [
"Succeeded"
]
},
"type": "ParseJson"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
}
},
"triggers": {
"manual": {
"inputs": {
"schema": {
"properties": {},
"required": [],
"type": "object"
}
},
"kind": "Http",
"type": "Request"
}
}
},
"parameters": {
"$connections": {
"value": {}
}
}
}
Loading

0 comments on commit 6107258

Please sign in to comment.