1
0
Fork 0
mirror of synced 2024-06-01 18:20:18 +12:00

Quick fix for development machines, when running Budibase development stack on systems that are not oracle compatiable it would fail to start due to the lack of dependency.

This commit is contained in:
mike12345567 2022-09-30 15:19:34 +01:00
parent 64d90280a0
commit 0182996260
2 changed files with 19 additions and 6 deletions

View file

@ -57,7 +57,11 @@ const INTEGRATIONS: { [key: string]: any } = {
}
// optionally add oracle integration if the oracle binary can be installed
if (process.arch && !process.arch.startsWith("arm")) {
if (
process.arch &&
!process.arch.startsWith("arm") &&
oracle.integration.isInstalled()
) {
DEFINITIONS[SourceName.ORACLE] = oracle.schema
INTEGRATIONS[SourceName.ORACLE] = oracle.integration
}

View file

@ -15,17 +15,22 @@ import {
getSqlQuery,
SqlClient,
} from "./utils"
import oracledb, {
import Sql from "./base/sql"
import { FieldTypes } from "../constants"
import {
BindParameters,
Connection,
ConnectionAttributes,
ExecuteOptions,
Result,
} from "oracledb"
import Sql from "./base/sql"
import { FieldTypes } from "../constants"
oracledb.outFormat = oracledb.OUT_FORMAT_OBJECT
let oracledb: any
try {
oracledb = require("oracledb")
oracledb.outFormat = oracledb.OUT_FORMAT_OBJECT
} catch (err) {
console.log("ORACLEDB is not installed")
}
interface OracleConfig {
host: string
@ -183,6 +188,10 @@ class OracleIntegration extends Sql implements DatasourcePlus {
return parts.join(" || ")
}
static isInstalled() {
return oracledb != null
}
/**
* Map the flat tabular columns and constraints data into a nested object
*/