apigee-x-module
Advanced tools
Comparing version 0.5.12 to 0.5.13
@@ -1,2 +0,2 @@ | ||
import { ApiProduct, ApiProducts, Developers, Developer, Apps, App, AppCredential } from "./apigee-types"; | ||
import { ApiProduct, ApiProducts, Developers, Developer, Apps, App, AppCredential, ProxyRevision, ProxyDeployment } from "./apigee-types"; | ||
export interface ApiManagementInterface { | ||
@@ -15,2 +15,3 @@ getApiProducts(): Promise<ApiProducts>; | ||
updateApp(email: string, appName: string, app: App): Promise<App>; | ||
deleteApp(email: string, appName: string): Promise<App>; | ||
getAppCredential(email: string, appName: string, keyName: string): Promise<AppCredential>; | ||
@@ -20,3 +21,4 @@ updateAppCredential(email: string, appName: string, key: AppCredential): Promise<AppCredential>; | ||
updateAppCredentialRemoveProduct(email: string, appName: string, keyName: string, apiProduct: string): Promise<AppCredential>; | ||
deleteApp(email: string, appName: string): Promise<App>; | ||
updateProxy(proxyName: string, bundlePath: string): Promise<ProxyRevision>; | ||
deployProxyRevision(environmentName: string, proxyName: string, proxyVersion: string): Promise<ProxyDeployment>; | ||
} |
@@ -1,4 +0,6 @@ | ||
import { ApiProducts, ApiProduct, App, Developers, Developer, Apps, AppCredential } from "./apigee-types"; | ||
import { ApiProducts, ApiProduct, App, Developers, Developer, Apps, AppCredential, ProxyRevision, ProxyDeployment } from "./apigee-types"; | ||
import { ApiManagementInterface } from "./apigee-interface"; | ||
export declare class ApigeeService implements ApiManagementInterface { | ||
updateProxy(proxyName: string, bundlePath: string): Promise<ProxyRevision>; | ||
deployProxyRevision(environmentName: string, proxyName: string, proxyRevision: string): Promise<ProxyDeployment>; | ||
getApiProducts(): Promise<ApiProducts>; | ||
@@ -5,0 +7,0 @@ createApiProduct(apiProduct: ApiProduct): Promise<ApiProduct>; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.ApigeeService = void 0; | ||
const FormData = require('form-data'); | ||
const fs = require('fs'); | ||
const axios = require('axios'); | ||
@@ -10,2 +12,41 @@ const { GoogleAuth } = require('google-auth-library'); | ||
class ApigeeService { | ||
updateProxy(proxyName, bundlePath) { | ||
return new Promise((resolve, reject) => { | ||
auth.getProjectId().then((projectId) => { | ||
auth.getAccessToken().then((token) => { | ||
const form = new FormData(); | ||
var newFile = fs.readFileSync(bundlePath); | ||
form.append('file', newFile, `${proxyName + ".zip"}`); | ||
axios.request({ | ||
url: `https://apigee.googleapis.com/v1/organizations/${projectId}/apis?name=${proxyName}&action=import`, | ||
method: "post", | ||
headers: Object.assign({ "Authorization": `Bearer ${token}` }, form.getHeaders()), | ||
data: form | ||
}).then((response) => { | ||
let proxyRevision = response.data; | ||
resolve(proxyRevision); | ||
}).catch((error) => { | ||
reject(error); | ||
}); | ||
}); | ||
}); | ||
}); | ||
} | ||
deployProxyRevision(environmentName, proxyName, proxyRevision) { | ||
return new Promise((resolve, reject) => { | ||
auth.getProjectId().then((projectId) => { | ||
auth.getClient().then((client) => { | ||
client.request({ | ||
url: `https://apigee.googleapis.com/v1/organizations/${projectId}/environments/${environmentName}/apis/${proxyName}/revisions/${proxyRevision}/deployments?override=true`, | ||
method: "post" | ||
}).then((response) => { | ||
let apigeeDeployment = response.data; | ||
resolve(apigeeDeployment); | ||
}).catch((error) => { | ||
reject(error); | ||
}); | ||
}); | ||
}); | ||
}); | ||
} | ||
getApiProducts() { | ||
@@ -12,0 +53,0 @@ return new Promise((resolve, reject) => { |
@@ -123,2 +123,16 @@ interface ApigeeApiProducts { | ||
} | ||
export { ApigeeApiProducts, ApigeeApiProduct, ApiProducts, ApiProduct, ApigeeDevelopers, ApigeeDeveloper, ApigeeApps, ApigeeApp, ApigeeAppCredential, Developers, Developer, Apps, App, AppCredential }; | ||
interface ProxyRevision { | ||
name: string; | ||
createdAt?: string; | ||
displayName?: string; | ||
description?: string; | ||
lastModifiedAt?: string; | ||
revision: string; | ||
} | ||
interface ProxyDeployment { | ||
environment: string; | ||
apiProxy: string; | ||
revision: string; | ||
deployStartTime: string; | ||
} | ||
export { ApigeeApiProducts, ApigeeApiProduct, ApiProducts, ApiProduct, ApigeeDevelopers, ApigeeDeveloper, ApigeeApps, ApigeeApp, ApigeeAppCredential, Developers, Developer, Apps, App, AppCredential, ProxyRevision, ProxyDeployment }; |
{ | ||
"name": "apigee-x-module", | ||
"version": "0.5.12", | ||
"version": "0.5.13", | ||
"description": "Module for integrating with the Apigee X platform for TS/JS developer portal integrations.", | ||
@@ -25,4 +25,5 @@ "homepage": "https://github.com/tyayers/apigee-x-module", | ||
"dependencies": { | ||
"axios": "^0.21.4", | ||
"axios": "^0.24.0", | ||
"dotenv": "^10.0.0", | ||
"form-data": "^4.0.0", | ||
"google-auth-library": "^7.9.2" | ||
@@ -29,0 +30,0 @@ }, |
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
45761
740
4
2
+ Addedform-data@^4.0.0
+ Addedasynckit@0.4.0(transitive)
+ Addedaxios@0.24.0(transitive)
+ Addedcall-bind-apply-helpers@1.0.2(transitive)
+ Addedcombined-stream@1.0.8(transitive)
+ Addeddelayed-stream@1.0.0(transitive)
+ Addeddunder-proto@1.0.1(transitive)
+ Addedes-define-property@1.0.1(transitive)
+ Addedes-errors@1.3.0(transitive)
+ Addedes-object-atoms@1.1.1(transitive)
+ Addedes-set-tostringtag@2.1.0(transitive)
+ Addedform-data@4.0.2(transitive)
+ Addedfunction-bind@1.1.2(transitive)
+ Addedget-intrinsic@1.2.7(transitive)
+ Addedget-proto@1.0.1(transitive)
+ Addedgopd@1.2.0(transitive)
+ Addedhas-symbols@1.1.0(transitive)
+ Addedhas-tostringtag@1.0.2(transitive)
+ Addedhasown@2.0.2(transitive)
+ Addedmath-intrinsics@1.1.0(transitive)
+ Addedmime-db@1.52.0(transitive)
+ Addedmime-types@2.1.35(transitive)
- Removedaxios@0.21.4(transitive)
Updatedaxios@^0.24.0