-
Notifications
You must be signed in to change notification settings - Fork 34
Arduino exe now found on windows #43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Arduino exe now found on windows #43
Conversation
Updated arduino self.existing_executable function to find exe Added compilers to .arduino-ci.yaml so that build runs
Try running arduino_debug.exe instead of arduino.exe. That should solve the splash issue. |
Can't seem to install rubocop locally hence this may take a few pushes to resolve
Switched to arduino_debug exe to supress the pop up - runs much quicker now.
arduino_debug.exe works much better |
Added error handling around the reg lookup so that it does not just bomb out and runs to the force install function.
Ok current state is as follows:
|
* Pulled package using open uri * Changed move to remove additional folder depth * Cleaned up extraction folder and zip after use * Added a few additional puts outputs to help see what is going on * Probably introduced a stack of rubocop errors
Corrected the incorrect reg key used to allow testing of force download
The ssl errors only appear on travis so I have switched to http for now to see if everything else works
I think everything related to executing a ci run on windows works:
The only issue is that for force downloading of the ide to work on Appveyor ssl verification needs to be disabled. This was not required to enable it to work locally on a windows box. Perhaps the relevant code can be updated to try without verification only if running on Appveyor? The only failures in the Appveyor build all come from the rb specs that execute at the very end. I am not sure if these are valid on windows. If they are perhaps they can captured as a different issue? I'd be keen to get these changes into master so we can use this locally on a windows environment without having to work from the source. |
I'm just catching up to this now, and my immediate concern is whether this is based on my |
@@ -11,3 +11,5 @@ unittest: | |||
- uno | |||
- due | |||
- leonardo | |||
compilers: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this line is necessary to make things work, please open an issue for that... the compilers
setting should be automatically inherited from https://github.com/ianfixes/arduino_ci/blob/master/misc/default.yml#L83-L84
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. That is what I thought originally until I spotted TestSomething had it explicitly defined so I assumed it must have been a misunderstanding on my part. Note that this behaviour is the same on Windows and Linux. I'll raise an issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Issue #44 raised
Yes, these changes were branched from |
Yup, sorry. Noticed that shortly after my first message, but the kids woke up :) |
@@ -58,7 +68,11 @@ def extracter | |||
# Extract the package_file to extracted_file | |||
# @return [bool] whether successful | |||
def extract | |||
powershell("Expand-Archive", package_file, "-dest", extracted_file) | |||
puts 'Extracting ' + package_file + " to " + extracted_file | |||
powershell("Expand-Archive", "-Path", package_file, "-DestinationPath", extracted_file) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a way to mute the output from this command? It dominates the build log https://ci.appveyor.com/project/ianfixes/arduino-ci/build/1.0.31#L144
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I couldn't see any flags in the powershell command definition although it suggests there might be common parameters. Standard suggestions on google appear to be to pipe to null. I just pushed up a version with this but it looks like you have merged already so I am not sure if that was included or not.
Note - This doesn't happen when run locally, you just get a nice nice progress bar:
[oooooooooooo........................................ ]
I did wonder if both extract and move could be done using a ruby dependency rather than powershell, but my ruby knowledge is minimal to none.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Putting those in pure ruby is probably the right way to go. I more or less ported the install.sh
script from Adafruit to boostrap this project... so now that it looks like I'm headed for cross-platform fun (beyond my most ambitious expectations, honestly, in a good way!), I will plan to take a closer look at that.
Of course, having working cross-platform CI is a great enabler for that kind of thing in the first place... so I can't thank you enough for your help here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, I cherry-picked your commit with no problems. Thanks
Thanks for checking this out, btw. I can't imagine the number of weeks of trial and error this saved me! |
I'm going to merge this now as it's a huge step forward. However, I'm going to delay merging
|
Windows compilation support * Updated arduino self.existing_executable function to find arduino_debug.exe * Added compilers to .arduino-ci.yaml so that build runs * Added error handling around the reg lookup so that it does not just bomb out and runs to the force install function. * Corrected the incorrect reg key used to allow testing of force download * Switched to http for downloads to avoid ssl error
Changes:
With the updated code and g++ on the path the DoSomething example appears to run as as expected.
It is a bit clunky because the ide splash pops up all the time, can this be supressed? I guess not as the the comand line docs here don't seem to mention it.