1
0
mirror of https://github.com/sasjs/adapter.git synced 2026-01-08 04:50:06 +00:00

Merge branch 'master' into issue-186

This commit is contained in:
Mihajlo Medjedovic
2021-01-06 13:51:10 +01:00
2 changed files with 30 additions and 74 deletions

View File

@@ -834,23 +834,20 @@ export class SASViyaApiClient {
) )
} }
if (isRelativePath(sasJob)) { const folderPathParts = sasJob.split('/')
const folderName = sasJob.split('/')[0] const jobName = folderPathParts.pop()
await this.populateFolderMap( const folderPath = folderPathParts.join('/')
`${this.rootFolderName}/${folderName}`, const fullFolderPath = isRelativePath(sasJob)
accessToken ? `${this.rootFolderName}/${folderPath}`
) : folderPath
if (!this.folderMap.get(`${this.rootFolderName}/${folderName}`)) { await this.populateFolderMap(fullFolderPath, accessToken)
throw new Error(
`The folder '${folderName}' was not found at '${this.serverUrl}/${this.rootFolderName}'` const jobFolder = this.folderMap.get(fullFolderPath)
) if (!jobFolder) {
} throw new Error(
} else { `The folder '${fullFolderPath}' was not found on '${this.serverUrl}'`
const folderPathParts = sasJob.split('/') )
folderPathParts.pop()
const folderPath = folderPathParts.join('/')
await this.populateFolderMap(folderPath, accessToken)
} }
const headers: any = { 'Content-Type': 'application/json' } const headers: any = { 'Content-Type': 'application/json' }
@@ -858,21 +855,7 @@ export class SASViyaApiClient {
headers.Authorization = `Bearer ${accessToken}` headers.Authorization = `Bearer ${accessToken}`
} }
let jobToExecute const jobToExecute = jobFolder?.find((item) => item.name === jobName)
if (isRelativePath(sasJob)) {
const folderName = sasJob.split('/')[0]
const jobName = sasJob.split('/')[1]
const jobFolder = this.folderMap.get(
`${this.rootFolderName}/${folderName}`
)
jobToExecute = jobFolder?.find((item) => item.name === jobName)
} else {
const folderPathParts = sasJob.split('/')
const jobName = folderPathParts.pop()
const folderPath = folderPathParts.join('/')
const jobFolder = this.folderMap.get(folderPath)
jobToExecute = jobFolder?.find((item) => item.name === jobName)
}
if (!jobToExecute) { if (!jobToExecute) {
throw new Error(`Job was not found.`) throw new Error(`Job was not found.`)
@@ -938,52 +921,28 @@ export class SASViyaApiClient {
) )
} }
if (isRelativePath(sasJob)) { const folderPathParts = sasJob.split('/')
const folderName = sasJob.split('/')[0] const jobName = folderPathParts.pop()
await this.populateFolderMap( const folderPath = folderPathParts.join('/')
`${this.rootFolderName}/${folderName}`, const fullFolderPath = isRelativePath(sasJob)
accessToken ? `${this.rootFolderName}/${folderPath}`
) : folderPath
await this.populateFolderMap(fullFolderPath, accessToken)
if (!this.folderMap.get(`${this.rootFolderName}/${folderName}`)) { const jobFolder = this.folderMap.get(fullFolderPath)
throw new Error( if (!jobFolder) {
`The folder '${folderName}' was not found at '${this.serverUrl}/${this.rootFolderName}'.` throw new Error(
) `The folder '${fullFolderPath}' was not found on '${this.serverUrl}'.`
} )
} else {
const folderPathParts = sasJob.split('/')
folderPathParts.pop()
const folderPath = folderPathParts.join('/')
await this.populateFolderMap(folderPath, accessToken)
if (!this.folderMap.get(folderPath)) {
throw new Error(
`The folder '${folderPath}' was not found at '${this.serverUrl}'.`
)
}
} }
const jobToExecute = jobFolder?.find((item) => item.name === jobName)
let files: any[] = [] let files: any[] = []
if (data && Object.keys(data).length) { if (data && Object.keys(data).length) {
files = await this.uploadTables(data, accessToken) files = await this.uploadTables(data, accessToken)
} }
let jobToExecute: Job | undefined
let jobName: string | undefined
let jobPath: string | undefined
if (isRelativePath(sasJob)) {
const folderName = sasJob.split('/')[0]
jobName = sasJob.split('/')[1]
jobPath = `${this.rootFolderName}/${folderName}`
const jobFolder = this.folderMap.get(jobPath)
jobToExecute = jobFolder?.find((item) => item.name === jobName)
} else {
const folderPathParts = sasJob.split('/')
jobName = folderPathParts.pop()
jobPath = folderPathParts.join('/')
const jobFolder = this.folderMap.get(jobPath)
jobToExecute = jobFolder?.find((item) => item.name === jobName)
}
if (!jobToExecute) { if (!jobToExecute) {
throw new Error(`Job was not found.`) throw new Error(`Job was not found.`)
} }
@@ -1008,7 +967,7 @@ export class SASViyaApiClient {
const jobArguments: { [key: string]: any } = { const jobArguments: { [key: string]: any } = {
_contextName: contextName, _contextName: contextName,
_program: `${jobPath}/${jobName}`, _program: `${fullFolderPath}/${jobName}`,
_webin_file_count: files.length, _webin_file_count: files.length,
_OMITJSONLISTING: true, _OMITJSONLISTING: true,
_OMITJSONLOG: true, _OMITJSONLOG: true,

View File

@@ -766,10 +766,7 @@ export default class SASjs {
) )
} }
const members = const members = serviceJson.members
serviceJson.members[0].name === 'services'
? serviceJson.members[0].members
: serviceJson.members
await this.createFoldersAndServices( await this.createFoldersAndServices(
appLoc, appLoc,