@@ -19,12 +19,6 @@ async function pnaEndpoint() {
19
19
return "Unable to find framework: " + query [ "id" ] ;
20
20
}
21
21
22
- if ( this . params . methodType == "DELETE" ) {
23
- // Remove index file from Competency Explorer registry
24
- const result = await removeFromAws ( query [ "id" ] ) ;
25
- return JSON . stringify ( result ) ;
26
- }
27
-
28
22
let match = framework [ "@id" ] . match ( '(.*)(\/data\/)(.*)' ) ;
29
23
let ceasnEndpointFramework = match && match . length > 1 ? match [ 1 ] + "/ceasn/" : undefined ;
30
24
@@ -97,81 +91,81 @@ async function pnaEndpoint() {
97
91
98
92
async function uploadToAws ( data , name ) {
99
93
100
- const { S3Client, PutObjectCommand, GetObjectCommand } = require ( "@aws-sdk/client-s3" ) ;
94
+ const { S3Client, PutObjectCommand } = require ( "@aws-sdk/client-s3" ) ;
101
95
96
+ const AWS_REGION = process . env . AWS_REGION ? process . env . AWS_REGION : "" ;
102
97
const AWS_BUCKET = process . env . AWS_BUCKET ? process . env . AWS_BUCKET : "" ;
103
98
const AWS_ACCESS_KEY_ID = process . env . AWS_ACCESS_KEY_ID ? process . env . AWS_ACCESS_KEY_ID : "" ;
104
99
const AWS_SECRET_ACCESS_KEY = process . env . AWS_SECRET_ACCESS_KEY ? process . env . AWS_SECRET_ACCESS_KEY : "" ;
100
+ let success = false ;
105
101
106
102
try {
103
+ if ( ! name ) {
104
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , 'No framework provided' ) ;
105
+ return {
106
+ framework : undefined ,
107
+ success : false
108
+ } ;
109
+ }
110
+ if ( ! AWS_REGION ) {
111
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , 'No AWS Region provided' ) ;
112
+ return {
113
+ framework : name ,
114
+ success : false
115
+ } ;
116
+ }
117
+ if ( ! AWS_BUCKET ) {
118
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , 'No AWS Bucket provided' ) ;
119
+ return {
120
+ framework : name ,
121
+ success : false
122
+ } ;
123
+ }
124
+ if ( ! AWS_ACCESS_KEY_ID ) {
125
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , 'No AWS Access key provided' ) ;
126
+ return {
127
+ framework : name ,
128
+ success : false
129
+ } ;
130
+ }
131
+ if ( ! AWS_SECRET_ACCESS_KEY ) {
132
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , 'No AWS Access secret provided' ) ;
133
+ return {
134
+ framework : name ,
135
+ success : false
136
+ } ;
137
+ }
107
138
const s3 = new S3Client ( {
108
139
credentials : {
109
140
accessKeyId : AWS_ACCESS_KEY_ID ,
110
141
secretAccessKey : AWS_SECRET_ACCESS_KEY
111
142
} ,
112
- region : "us-east-2" ,
143
+ region : AWS_REGION ,
113
144
} ) ;
114
145
115
- await s3 . send (
116
- new PutObjectCommand ( {
117
- Bucket : AWS_BUCKET ,
118
- Key : name ,
119
- Body : data ,
120
- ContentType : "application/json"
121
- } )
122
- ) ;
123
-
124
- const { Body } = await s3 . send (
125
- new GetObjectCommand ( {
126
- Bucket : AWS_BUCKET ,
127
- Key : name
128
- } )
129
- ) ;
130
-
131
- const receipt = await Body . transformToString ( ) ;
132
-
133
- return receipt ;
134
-
135
- } catch ( err ) {
136
- return {
137
- framework : name ,
138
- error : err
139
- } ;
140
- }
141
- }
142
-
143
- async function removeFromAws ( name ) {
144
-
145
- const { S3Client, DeleteObjectCommand } = require ( "@aws-sdk/client-s3" ) ;
146
-
147
- const AWS_BUCKET = process . env . AWS_BUCKET ? process . env . AWS_BUCKET : "" ;
148
- const AWS_ACCESS_KEY_ID = process . env . AWS_ACCESS_KEY_ID ? process . env . AWS_ACCESS_KEY_ID : "" ;
149
- const AWS_SECRET_ACCESS_KEY = process . env . AWS_SECRET_ACCESS_KEY ? process . env . AWS_SECRET_ACCESS_KEY : "" ;
150
-
151
- try {
152
- const s3 = new S3Client ( {
153
- credentials : {
154
- accessKeyId : AWS_ACCESS_KEY_ID ,
155
- secretAccessKey : AWS_SECRET_ACCESS_KEY
156
- } ,
157
- region : "us-east-2" ,
146
+ const put = new PutObjectCommand ( {
147
+ Bucket : AWS_BUCKET ,
148
+ Key : name ,
149
+ Body : data
150
+ } )
151
+ await s3 . send ( put ) . then ( ( ) => {
152
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . INFO , "pnaUploadOk" , name ) ;
153
+ success = true ;
154
+ } ) . catch ( ( err ) => {
155
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , name ) ;
156
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , err ) ;
157
+ success = false ;
158
158
} ) ;
159
-
160
- await s3 . send (
161
- new DeleteObjectCommand ( {
162
- Bucket : AWS_BUCKET ,
163
- Key : name
164
- } )
165
- ) ;
166
-
167
159
return {
168
- framework : name
169
- } ;
170
-
160
+ framework : name ,
161
+ success : success
162
+ } ;
171
163
} catch ( err ) {
164
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , name ) ;
165
+ global . auditLogger . report ( global . auditLogger . LogCategory . ADAPTER , global . auditLogger . Severity . ERROR , "pnaUploadErr" , err ) ;
172
166
return {
173
167
framework : name ,
174
- error : err
168
+ success : false
175
169
} ;
176
170
}
177
171
}
0 commit comments