appium-boneyard / appium-plugins

Officially-maintained plugins for the Appium server
Apache License 2.0
32 stars 7 forks source link

feat(execute-driver): add execute driver script plugin #73

Closed jlipps closed 2 years ago

jlipps commented 2 years ago
jlipps commented 2 years ago

CI will fail until https://github.com/appium/appium/pull/16137 is merged and published

boneskull commented 2 years ago

perhaps I should do the thing I did to appium on this monorepo, to avoid the lockfile apocalypse

mykola-mokhnach commented 2 years ago

Linking https://github.com/appium/appium/issues/15973

jlipps commented 2 years ago

OK @mykola-mokhnach @boneskull made a bunch of updates here, including using vm2 in place of vm. Someone should double check this though. It works but that doesn't mean I did it right.

jlipps commented 2 years ago

OK, with the new version of appium and the docs added, the CI is green. we good to go here?

jlipps commented 2 years ago

well, CI is now broken because of opencv4nodejs. i've attempted to debug the issue. i'm guessing that an NPM update changed node modules layout and a package internal to opencv4nodejs is relying on a certain directory structure. i can't figure out how to see full logs from the workflow (the npm output isn't showing the logging that should be coming from opencv4nodejs's install scripts). that might help. but sadly opencv4nodejs is not maintained so it may be impossible to fix. ugh.

mykola-mokhnach commented 2 years ago

@jlipps Could you please try with the fork of opencv4nodejs mentioned by @UrielCh in https://github.com/justadudewhohacks/opencv4nodejs/pull/762#issuecomment-1006679417 ?

jlipps commented 2 years ago

ok, giving it a go

jlipps commented 2 years ago

nope, it's actually imported from appium-support. i wonder if we should move it to the images plugin? anyway, https://github.com/appium/appium/pull/16327/files

jlipps commented 2 years ago

ok pulled in appium support changes, let's see what happens.

jlipps commented 2 years ago

@mykola-mokhnach looks like this package doesn't work. It also doesn't install on my machine even with the m1-specific flags enabled. https://github.com/appium/appium-plugins/runs/4782669773?check_suite_focus=true

mykola-mokhnach commented 2 years ago

Thanks for trying it @jlipps Perhaps we could report the issue log at https://github.com/appium/appium-plugins/runs/4782669773?check_suite_focus=true#step:9:3393 to the forked repository issue tracker and ask its author about how we could resolve it. Let see how responsive they are.

jlipps commented 2 years ago

The forked repo doesn't appear to have the issue tracker enabled. @UrielCh are you at all open to helping us troubleshoot this opencv4nodejs installation in GitHub Actions CI? (I get the same error on my local machine). Have tried with opencv version set to latest 3.x as well as latest 4.x.

mykola-mokhnach commented 2 years ago

I assume that compilation error happens because of https://answers.opencv.org/question/212650/opencv-sift-surf/

jlipps commented 2 years ago

Running with OPENCV4NODEJS_AUTOBUILD_OPENCV_VERSION=4.5.5 OPENCV_BUILD_ROOT=~/opencv npx build-opencv --flag="-DCMAKE_SYSTEM_PROCESSOR=arm64 -DCMAKE_OSX_ARCHITECTURES=arm64 -DCMAKE_OPENCV_ENABLE_NONFREE=ON" build gives the same error. What do you run on your machine to get things to build?

mykola-mokhnach commented 2 years ago

ofc, will try it on the weekend

mykola-mokhnach commented 2 years ago

@jlipps I have managed it to work on my Intel mac. The steps I've done:

mykola-mokhnach commented 2 years ago

Btw many thanks to @KeitelDOG for the detailed description of the building process. It helped me a lot.

jlipps commented 2 years ago

OK, this PR now includes a change where the images plugin depends on @appium/opencv and no longer requires opencv4nodejs to be installed in CI. let's see how it goes.

jlipps commented 2 years ago

yay, build passed! we can finally get the execute driver plugin merged, and publish an images plugin with no dependency on opencv4nodejs!!!