From 6db30045ad1c880d39dee852682652c9a2c68fd5 Mon Sep 17 00:00:00 2001 From: mike12345567 Date: Mon, 10 May 2021 18:07:57 +0100 Subject: [PATCH] Some cleanup. --- .../src/api/controllers/deploy/awsDeploy.js | 80 ------------------- .../src/api/controllers/deploy/index.js | 14 +--- .../src/api/controllers/static/index.js | 8 +- 3 files changed, 7 insertions(+), 95 deletions(-) delete mode 100644 packages/server/src/api/controllers/deploy/awsDeploy.js diff --git a/packages/server/src/api/controllers/deploy/awsDeploy.js b/packages/server/src/api/controllers/deploy/awsDeploy.js deleted file mode 100644 index c9fc1e9e52..0000000000 --- a/packages/server/src/api/controllers/deploy/awsDeploy.js +++ /dev/null @@ -1,80 +0,0 @@ -const AWS = require("aws-sdk") -const fetch = require("node-fetch") -const env = require("../../../environment") -const { - deployToObjectStore, - performReplication, - fetchCredentials, -} = require("./utils") - -/** - * Verifies the users API key and - * Verifies that the deployment fits within the quota of the user - * Links to the "check-api-key" lambda. - * @param {object} deployment - information about the active deployment, including the appId and quota. - */ -exports.preDeployment = async function (deployment) { - const json = await fetchCredentials(env.DEPLOYMENT_CREDENTIALS_URL, { - apiKey: env.BUDIBASE_API_KEY, - appId: deployment.getAppId(), - quota: deployment.getQuota(), - }) - - // set credentials here, means any time we're verified we're ready to go - if (json.credentials) { - AWS.config.update({ - accessKeyId: json.credentials.AccessKeyId, - secretAccessKey: json.credentials.SecretAccessKey, - sessionToken: json.credentials.SessionToken, - }) - } - - return json -} - -/** - * Finalises the deployment, updating the quota for the user API key - * The verification process returns the levels to update to. - * Calls the "deployment-success" lambda. - * @param {object} deployment information about the active deployment, including the quota info. - * @returns {Promise} The usage has been updated against the user API key. - */ -exports.postDeployment = async function (deployment) { - const DEPLOYMENT_SUCCESS_URL = - env.DEPLOYMENT_CREDENTIALS_URL + "deploy/success" - - const response = await fetch(DEPLOYMENT_SUCCESS_URL, { - method: "POST", - body: JSON.stringify({ - apiKey: env.BUDIBASE_API_KEY, - quota: deployment.getQuota(), - }), - headers: { - "Content-Type": "application/json", - Accept: "application/json", - }, - }) - - if (response.status !== 200) { - throw new Error(`Error updating deployment quota for API Key`) - } - - return await response.json() -} - -exports.deploy = async function (deployment) { - const appId = deployment.getAppId() - const { bucket, accountId } = deployment.getVerification() - const metadata = { accountId } - await deployToObjectStore(appId, bucket, metadata) -} - -exports.replicateDb = async function (deployment) { - const appId = deployment.getAppId() - const verification = deployment.getVerification() - return performReplication( - appId, - verification.couchDbSession, - env.DEPLOYMENT_DB_URL - ) -} diff --git a/packages/server/src/api/controllers/deploy/index.js b/packages/server/src/api/controllers/deploy/index.js index 1152b56db8..1fee54ef80 100644 --- a/packages/server/src/api/controllers/deploy/index.js +++ b/packages/server/src/api/controllers/deploy/index.js @@ -1,9 +1,6 @@ const PouchDB = require("../../../db") const Deployment = require("./Deployment") -const { - getHostingInfo, - HostingTypes, -} = require("../../../utilities/builder/hosting") +const deploymentService = require("./selfDeploy") // the max time we can wait for an invalidation to complete before considering it failed const MAX_PENDING_TIME_MS = 30 * 60000 const DeploymentStatus = { @@ -12,9 +9,6 @@ const DeploymentStatus = { FAILURE: "FAILURE", } -// default to AWS deployment, this will be updated before use (if required) -let deploymentService = require("./awsDeploy") - // checks that deployments are in a good state, any pending will be updated async function checkAllDeployments(deployments) { let updated = false @@ -122,12 +116,6 @@ exports.deploymentProgress = async function (ctx) { } exports.deployApp = async function (ctx) { - // start by checking whether to deploy local or to cloud - const hostingInfo = await getHostingInfo() - deploymentService = - hostingInfo.type === HostingTypes.CLOUD - ? require("./awsDeploy") - : require("./selfDeploy") let deployment = new Deployment(ctx.appId) deployment.setStatus(DeploymentStatus.PENDING) deployment = await storeLocalDeploymentHistory(deployment) diff --git a/packages/server/src/api/controllers/static/index.js b/packages/server/src/api/controllers/static/index.js index 7a6d6c7e39..35a6ce4bd7 100644 --- a/packages/server/src/api/controllers/static/index.js +++ b/packages/server/src/api/controllers/static/index.js @@ -95,10 +95,14 @@ exports.serveComponentLibrary = async function (ctx) { if (env.isDev() || env.isTest()) { const componentLibraryPath = join( budibaseTempDir(), - decodeURI(ctx.query.library), + appId, + "node_modules", + "@budibase", + "standard-components", + "package", "dist" ) - return send(ctx, "/awsDeploy.js", { root: componentLibraryPath }) + return send(ctx, "/index.js", { root: componentLibraryPath }) } const db = new CouchDB(appId) const appInfo = await db.get(appId)