OraOpenSource/apex-nitro

apex-nitro upload -4058 enoent

Opened this issue · 4 comments

Hi.

Trying to upload files trough apex-nitro to application.
Nitro is returning error -4058 = enoent

Everything I set as it should be (at least i assume).

//cred.json
{
"path": "C:\Users\lbrumec\apex_n\instantclient_19_10",
"username": "your_username", // my username is entered
"password": "your_password", //my pass is entered
"connectionString": "your_connection_string" //my connection string is entered
}

Am I missing something? I tried many combinations with path and not one is working.
Thank you!

Error description:
errno: -4058,
code: 'ENOENT',
syscall: 'spawnSync C:\instantclient_19_10',

in cred.json
path was the property we used before for sqlcl
now we use libDir for instant client

Either you are running an older version and should be pointing to SQLcl
Or you use the most recent version and should change your property to libDir

I'm sorry that the documentation is lacking right now.

Thanks for your response Vincent!

But, unfortunately, it is still not working with proposed changes. Tried to swap path with libDir property, but then it is requesting path property. Adding both properties gives same error as before.

Working with windows 10.
My apex-nitro version is 5.0.2

Thank you again for taking your time and helping.

Current content of my cred file:

a.) With both path and libDir
{ "libDir" : "C:/Users/lbrumec/Oracle/instantclient_19_10", "path": "C:/Users/lbrumec/Oracle/instantclient_19_10", "username": "dummy_password", "password": "dummy_password", "connectionString": "10.10.1.7:1521/dummy_service_name" }

getting error

C:\apex-nitro\test6>apex-nitro upload
APEX Nitro
Your project is using Basic mode, so there is nothing to build.
Change your project to Pro mode or execute apex-nitro launch.
...Now uploading!
Uploading to 138 - Application Static Files...
Files could not be uploaded.
ENOENT C:/Users/lbrumec/Oracle/instantclient_19_10

b.) With libDir only
{ "libDir" : "C:/Users/lbrumec/Oracle/instantclient_19_10", "username": "dummy_password", "password": "dummy_password", "connectionString": "10.10.1.7:1521/dummy_service_name" }

C:\apex-nitro\test6>apex-nitro upload
APEX Nitro
C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\lib\util\validations.js:79
throw new Error(errorMessage('SQLcl path'));
^

Error: Your apexnitro.config.json is missing SQLcl path. Please review C:\apex-nitro\test6/apexnitro.config.json
at Object.upload (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\lib\util\validations.js:79:10)
at Object.module.exports [as upload] (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\lib\commands\upload.js:30:14)
at Command. (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\bin\apex-nitro.js:77:13)
at Command.listener [as _actionHandler] (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\node_modules\commander\index.js:426:31)
at Command._parseCommand (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\node_modules\commander\index.js:1002:14)
at Command._dispatchSubcommand (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\node_modules\commander\index.js:953:18)
at Command._parseCommand (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\node_modules\commander\index.js:970:12)
at Command.parse (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\node_modules\commander\index.js:801:10)
at Object. (C:\Users\lbrumec\AppData\Roaming\npm\node_modules\apex-nitro\bin\apex-nitro.js:80:11)
at Module._compile (internal/modules/cjs/loader.js:955:30)

I am getting the exact same behaviour as @lbrumec. How should we proceed, @vincentmorneau?

Actually, when I use both the path and libDir settings, the error message is different:

Error Message = Incompatible version of libocijdbc[Jdbc:218000, Jdbc-OCI:216000

This error message is pretty self explanatory, indicating that there is a mismatch between the JDBC versions from OCI and my client. Nevertheless, I still don't know how to solve this =( do you have any tip?