configurable query timeout, s3 options for minIO, safety on cloud deploy job

This commit is contained in:
Martin McKeaveney 2021-12-30 17:44:27 +00:00
parent b57b0f1c7b
commit 18ad8ac1e5
6 changed files with 25 additions and 3 deletions

View File

@ -12,6 +12,12 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Fail if branch is not master
if: github.ref != 'refs/heads/master'
run: |
echo "Ref is not master, you must run this job from master."
exit 1
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: Pull values.yaml from budibase-infra - name: Pull values.yaml from budibase-infra

View File

@ -7,8 +7,11 @@ const {
} = require("../../db/utils") } = require("../../db/utils")
const { BaseQueryVerbs } = require("../../constants") const { BaseQueryVerbs } = require("../../constants")
const { Thread, ThreadType } = require("../../threads") const { Thread, ThreadType } = require("../../threads")
const env = require("../../environment")
const Runner = new Thread(ThreadType.QUERY, { timeoutMs: 10000 }) const Runner = new Thread(ThreadType.QUERY, {
timeoutMs: env.QUERY_THREAD_TIMEOUT || 10000,
})
// simple function to append "readable" to all read queries // simple function to append "readable" to all read queries
function enrichQueries(input) { function enrichQueries(input) {

View File

@ -65,6 +65,7 @@ module.exports = {
DEPLOYMENT_CREDENTIALS_URL: process.env.DEPLOYMENT_CREDENTIALS_URL, DEPLOYMENT_CREDENTIALS_URL: process.env.DEPLOYMENT_CREDENTIALS_URL,
ALLOW_DEV_AUTOMATIONS: process.env.ALLOW_DEV_AUTOMATIONS, ALLOW_DEV_AUTOMATIONS: process.env.ALLOW_DEV_AUTOMATIONS,
DISABLE_THREADING: process.env.DISABLE_THREADING, DISABLE_THREADING: process.env.DISABLE_THREADING,
QUERY_THREAD_TIMEOUT: process.env.QUERY_THREAD_TIMEOUT,
_set(key, value) { _set(key, value) {
process.env[key] = value process.env[key] = value
module.exports[key] = value module.exports[key] = value

View File

@ -191,7 +191,7 @@ module DynamoModule {
return response return response
} }
async describe(query: { table: string; }) { async describe(query: { table: string }) {
const params = { const params = {
TableName: query.table, TableName: query.table,
} }

View File

@ -29,6 +29,18 @@ module S3Module {
type: "password", type: "password",
required: true, required: true,
}, },
endpoint: {
type: "string",
required: false,
},
s3ForcePathStyle: {
type: "boolean",
required: false,
},
signatureVersion: {
type: "string",
required: false,
},
}, },
query: { query: {
read: { read: {