Giter VIP home page Giter VIP logo

omniscli's People

Contributors

barkingfoodog avatar omnis-jedi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

omniscli's Issues

Order of the libraries to be tested

In the danger that I am answering my own question I still want to post it here. Maybe there is a better solution.

I have been testing OmnisCLI with OmnisTAP and run up a problem when the test library is loaded before the OmnisCLI and OmnisTAP library. An error is shown that OmnisCLI is not available. A simple solution is to rename the test library and also the production library if it is separate. The only thing I run up there is that hardcoded references to the test or production library are not working anymore.

Would there be a more elegant way to deal with this?

Message Omnis quit unexpectedly at the and of a testrun

I am pretty close now to run my OmnisTAP test with Jenkins, the only thing I can not get around is the error message 'Omnis quit unexpectedly'. I get this message at the end of the test run. As far as I can see this is caused by the shell script omniscli. The last line in the console is:
/Applications/OmnisStudio8RT.app/Contents/MacOS/bin/omniscli: line 145: 46327 Abort trap: 6 "${lcOmnisBin}" 2> >(cleanOmnisStdErr)

Because of the message 'Omnis quit unexpectedly' at the next start of the testrun I get the message 'The last time you opened Omnis, it unexpectedly quit while reopening windows. Do you want to try to reopen its windows again?' You have to click one of the buttons 'Don't Reopen' or 'Reopen' to start the testrun.

The test library is in the startup folder of the Run time.
I tested it in Omnis Studio 8.0.3.5 and 8.1.5 with both the same result
Used both my own test library as the omnistap_example library

What am I doing wrong? How can I fix this?

Support for firstruninstall deployments on macOS

Studio 8.1 switched the default installation style on macOS to use a firstruninstall directory that installs to ~/Library/Application Support. OmnisCLI supports this under Windows, but not on macOS. We need to detect where the run directory will be so we can find the output files. Ideally, the script would scrape the sub-directory in Application Support for this Omnis instance in case the developer has customized it.

OmnisCLI with Jenkins

I'm trying to configure Jenkins to execute the omniscli help command, just to understand the configuration, but i'm stuck...

I've got a VirtualBox VM with macOS 10.13, Jenkins up and running and a Development Version of OS8.1.6 with ci.lbs, omniscli.lb and x_demo.lbs in the startup folder.

I've configured Jenkins with an Empty Project which can be build only manually. The build script is just a call to another simple bash script:

# Jenkins Build script
/Users/Shared/Jenkins/Scripts/test_cli.sh

# -- test_cli.sh ---

#!/usr/bin/env bash
set -e

# Build new library
/Applications/OS-CLI.app/Contents/MacOS/bin/omniscli help

The owner of all the contents of /Applications/OS-CLI.app is Jenkins, and the permission should be right (a+rwx, just to be sure). Furthermore, if i manually start test_cli.sh from the terminal, it all works correctly: the Omnis Icon pops on the dock and after a short time i got the help printed on the terminal.

ManzolikCI:~ gmanzoli$ sudo su jenkins
Password:
bash-3.2$ /Users/Shared/Jenkins/Scripts/test_cli.sh
{"thread":0,"when":"20181015 14:46:41","type":"tracelog","length":83}damora8.u_xcomp component couldn't be loaded because the  code fragment is missing.
2018-10-15 14:46:41.211 Omnis[3027:22376] Error loading /Applications/OS-CLI.app/Contents/MacOS/xcomp/damora8.u_xcomp/Contents/MacOS/damora8: dlopen(/Applications/OS-CLI.app/Contents/MacOS/xcomp/damora8.u_xcomp/Contents/MacOS/damora8, 262): Library not loaded: /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1
Referenced from: /Applications/OS-CLI.app/Contents/MacOS/xcomp/damora8.u_xcomp/Contents/MacOS/damora8
Reason: image not found
{"thread":0,"when":"20181015 14:46:41","type":"tracelog","length":55}The Java Virtual Machine failed to load (Unknown Error)
     buildapp   [path/to/source] [path/to/library] [optional: CSV string of dependent libraries] Imports [path/to/source] to library at [path/to/library], first opening dependent libraries
  export_json   [library] [destination] Exports [library] to the folder at [destination]
         help   Output details about available commands and exits
  import_json   [path/to/source] [path/to/library] Imports [path/to/source] to library at [path/to/library]  Library must not already exist
omnis_version   Returns the Omnis version
         demo   Demo command
         help   Output details about available commands and exits
omnis_version   Returns the Omnis version

But, i manually start the build from Jenkins, it doesn't work (the icon does not appear on the Doc) and Omnis launch a NSRangeException:

Started by user Giacomo Manzoli
Building in workspace /Users/Shared/Jenkins/Home/workspace/CliTest
[CliTest] $ /bin/sh -xe /Users/Shared/Jenkins/tmp/jenkins1372875588386532915.sh
+ /Users/Shared/Jenkins/Scripts/test_cli.sh
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
2018-10-15 14:45:17.293 Omnis[2926:21681] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArray0 objectAtIndex:]: index 0 beyond bounds for empty NSArray'
*** First throw call stack:
(
0 CoreFoundation 0x00007fff2c69366b __exceptionPreprocess + 171
1 libobjc.A.dylib 0x00007fff538cd942 objc_exception_throw + 48
2 CoreFoundation 0x00007fff2c6ad19d -[__NSArray0 objectAtIndex:] + 93
3 Omnis 0x000000010597d090 _ZN15HDCscreenStruct14createBitMapDCEiid + 130
4 Omnis 0x000000010597cfc9 _ZN15HDCscreenStructC2Et + 171
5 Omnis 0x000000010597fc64 _Z17GDIcreateScreenDCPP15HDCscreenStructPi + 33
6 Omnis 0x0000000105989efe _Z15GDIdoInitializes + 59
7 Omnis 0x00000001058f461a _ZN8xmachineC2ERs + 112
8 Omnis 0x000000010525a08e _ZN5qbaseC2ERs + 18
9 Omnis 0x000000010525968f _ZN5qappnC2ERs + 15
10 Omnis 0x000000010526e2f0 _ZN6qbuildC2ERs + 14
11 Omnis 0x000000010578ff99 _ZN6qrtimeC2ERs + 23
12 Omnis 0x00000001058f922d _GLOBAL__sub_I_xmain.cpp + 171
13 ??? 0x000000011251dac6 0x0 + 4602321606
14 ??? 0x000000011251dcf6 0x0 + 4602322166
15 ??? 0x0000000112519218 0x0 + 4602303000
16 ??? 0x000000011251834e 0x0 + 4602299214
17 ??? 0x00000001125183e2 0x0 + 4602299362
18 ??? 0x0000000112509567 0x0 + 4602238311
19 ??? 0x000000011250e239 0x0 + 4602257977
20 ??? 0x00000001125083d4 0x0 + 4602233812
21 ??? 0x00000001125081d2 0x0 + 4602233298
/Applications/OS-CLI.app/Contents/MacOS/bin/omniscli: line 111:  2926 Abort trap: 6           "${lcOmnisBin}" 2> >(cleanOmnisStdErr)
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Terminated: 15
/Applications/OS-CLI.app/Contents/MacOS/bin/omniscli: line 111: kill: (2926) - No such process

What i'm doing wrong? I've tried also to launch several consecutive time the script from Terminal, and it works fine (so it shouldn't be a problem of some window appearing in a latter execution). Also the flag of #4 is set to "Close windows when quitting app".

Passing parameters with spaces

Passed week I experimented a little bit with this tool. It was great fun. Thank you very much for making this available. I run up a problem mentioned in the subject. I followed the steps below which I got from the readme page:

Accessing arguments

Use the inherited $getCLIArgument(piArgument) method to get the arguments from the command line. Please note the command will be argument 1, and the remaining arguments will be numbered starting at 2.

For example, running this command:

omniscli say_hello 'first name' 'last name'
With this $cli_say_hello method:

Calculate lcName as con($cinst.$getCLIArgument(2)," ",$cinst.$getClIArgument(3)
Will set the lcName variable to "first name last name".'''

The problem I encountered was that if I run the command

omniscli say_hello 'first name' 'last name'

I get as output

first name

Somehow each word is treated as a parameter. I googled around, but could not find a working solution.

I hope that you have a solution for this.

Oh I forgot to say I use MacOS 10.12.6

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.