-
Notifications
You must be signed in to change notification settings - Fork 9.3k
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
Add AppVeyor CI support for Windows testing. #1280
Conversation
@XhmikosR the variable isn't correctly set because mocha is not running as harmony. I don't have much time to look at it today or tomorrow. |
Cool thanks. I meant to ask you about this. If you really want node 4
support on Windows or not.
…On Dec 27, 2016 21:04, "Ward Peeters" ***@***.***> wrote:
@XhmikosR <https://github.com/XhmikosR> the variable isn't correctly set
because mocha is not running as harmony.
Try to get appveyor working in node 6 / 7 first ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1280 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAVVtcxjDstk2g6wB9AF-Lc2nFYoxHHRks5rMWFIgaJpZM4LU_0c>
.
|
@wardpeet: here is my findings so far.
So, how do you want to proceed? |
The pr that fixes debug is not merged yet.
|
what PR you talking about? on debug or here? |
So, I decided to try and convert the relevant scripts to JS; I started with run-mocha.sh. I don't get the failure though so if anyone has any ideas, let me know. |
Hmm, and the build is erroneously marked as passing in Travis so that's something that should be fixed in another PR. |
@paulirish it is now #1272 |
It looks like the The error just seems to be the test filename pattern isn't working, so that will need to be tweaked |
@brendankenny: it seems we'll need the glob package for wildcards to work. I'm not aware of another way to use mocha. So after all this, I'm thinking, how about using shell.js which is extensively used in the wild? It should work on all platforms just fine and ease things a lot. |
since MSYS is installed, can we just keep using the same |
Well, MSYS isn't a native part of Windows... And even on Windows 10, one has to manually enable Ubuntu. That is why I suggest shell.js. It should cover all use cases regardless of the OS. |
@XhmikosR lets stick with bash. If you use bash for everything appveyor will work until gulp build. I'm looking into why it's not building as we speak :) I'm ok for improving the test code later on with powershell support but for now we just want it working on appveyor 💯 |
I believe you are missing the point that you are certainly not helping
Windows users by sticking with bash. But anyway even with bash as long as
everything works.
…On Jan 4, 2017 23:18, "Ward Peeters" ***@***.***> wrote:
@XhmikosR <https://github.com/XhmikosR> lets stick with bash. If you use
bash for everything appveyor will work until gulp build. I'm looking into
why it's not building as we speak :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1280 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAVVtRA-zhfrHCayN84AJXcDdxuUxa1_ks5rPAy_gaJpZM4LU_0c>
.
|
I'm looking at https://github.com/eslint/eslint/blob/master/Makefile.js which they run on appveyor. It appears they're just passing globs right into the mocha call. Is that possible? Here's some other folks potentially solving this too: Search · win32 mocha.cmd process CI |
@XhmikosR you are right but first we want appveyor to work so we are sure we are green until a new pr comes in where we can go windows specific! Thanks for all the effort so far!! @paulirish looks like the mocha.js is just some sugar on top of _mocha which does the same thing as what they are doing in there makefiles, js files. |
@wardpeet @paulirish @brendankenny: so, I fixed all issues and tests run and pass on my Windows machine with bash (see https://gist.github.com/XhmikosR/1f28e45feb3a2e55e1d6a491402c805a). On AppVeyor they fail, but I guess it's because they use old Chrome or something. See https://ci.appveyor.com/project/XhmikosR/lighthouse/build/41 Can you sort #1280 (comment)? After this is merged, we should really find a purely cross platform solution without the need for bash. Maybe pure node.js scripts or shelljs. |
So we are down to 2 issues for this after #1519. |
OK, so @wardpeet @paulirish @wardpeet: this works fine now minus the Chrome 56 tests which would work if #1472 was sorted. Can one of you:
Also, make sure you enable the option to "Skip branches without appveyor.yml". |
And SUCCESS! 🕺 See https://ci.appveyor.com/project/XhmikosR/lighthouse/history Now, we only need to merge #1572 in order to fix #1472, and then one of the maintainers needs to:
Some final notes:
|
@addyosmani: ping since you originally asked for this :) Only the above comments are left for this. |
with 1.5 out the door, excited to get this going! |
Good to hear that :) Please check my comment above and let me know.
Also if tou agree with using the same script to get Chromium or not.
…On Feb 10, 2017 11:09 PM, "Brendan Kenny" ***@***.***> wrote:
with 1.5 out the door, excited to get this going!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1280 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAVVtbpk8pXDEkornmji11xn07R_M6fpks5rbNH6gaJpZM4LU_0c>
.
|
I don't believe I have the ability to add AppVeyor with this repo, so @paulirish is going to try it out. re:caching, we added it in Travis since it's definitely a drag to have to wait for it to be downloaded for every run of the tests, especially if you're tweaking quickly (or worse, if you're trying to debug an issue that only appears when run in the CI :). OTOH, yeah, if we can't clear the cache that will be an issue as new Chrome versions come out. |
All right so caching Chromium disabled we really ok. Adding AppVeyor to the
report I'll wait for Paul. Just make sure you enable skip branches without
appveyor.yml.
Then the only thing left is if we should use the same script to download
Chromium or not.
Otherwise tests work fine and are passing after all the fixes I have
submitted all this time :)
…On Feb 10, 2017 23:14, "Brendan Kenny" ***@***.***> wrote:
I don't believe I have the ability to add AppVeyor with this repo, so
@paulirish <https://github.com/paulirish> is going to try it out.
re:caching, we added it in Travis since it's definitely a drag to have to
wait for it to be downloaded for every run of the tests, especially if
you're tweaking quickly (or worse, if you're trying to debug an issue that
only appears when run in the CI :).
OTOH, yeah, if we can't clear the cache that will be an issue as new
Chrome versions come out.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1280 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAVVtQ-uH61_EryisAp8SpN6ijJgAMz-ks5rbNMzgaJpZM4LU_0c>
.
|
@XhmikosR I think this is the badge URL for ya: [![Build status](https://ci.appveyor.com/api/projects/status/3bdm5qn9r32ha5cg?svg=true)](https://ci.appveyor.com/project/paulirish/lighthouse) these were the choices, FYI. The appveyor project is here: https://ci.appveyor.com/project/paulirish/lighthouse |
@paulirish: rebased and added your account's badge. The AppVeyor settings look good to me. We could rename appveyor.yml to .apppveyor.yml if you prefer that. The only thing left is if we should use the same script to download Chromium or not for AppVeyor. |
wget that ships with MSYS needs `--no-check-certificate` otherwise it fails for SNI. Also, specified `-q` so that the output isn't bloated.
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.
lookin good! Excited for this.
This was a long effort, but it's totally worth it. So excited to have test coverage on windows, finally. :) ✅ asserted true: Awesome PR |
If it weren't for this I wouldn't have noticed most of the issues so far. I hate that most devs ignore Windows when it has so big market share ;) Now if we could sort #1691 eventually, it would make my and all Windows users lives easier. :) |
Fixes #1079.
Preview: https://ci.appveyor.com/project/XhmikosR/lighthouse/history
Before merging: one of the project maintainers needs to add AppVeyor to the repository and paste the image link so that I add it in readme.md and rebase.