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
Use new travis infrastructure for travis tests #8835
Conversation
Nice progress, I think it will save quite a few build time minutes per day! |
0e2b8b1
to
510f063
Compare
…ameter for port (since using port 80 is not allowed for normal users on linux).
… be generated on travis.
5f5f4f3
to
ea304e5
Compare
00ce047
to
6ba1314
Compare
539da89
to
07a1609
Compare
This PR is ready for review. I don't think it will be a very fun review, though. |
// Overlay needs the full URLs in order to find the links in the embedded page (otherwise the % | ||
// tooltips don't show up) | ||
if (!empty($request['method']) | ||
&& $request['method'] == 'Overlay.getFollowingPages' |
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.
Should this be maybe done in the overlay plugin config ui-test.php
? (not sure if it is possible and whether we look for ui-test.php
environment in plugins)
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 can add a ui-test.php file to Overlay. I can't add the event there though, since we'd need to abort the event in config/ui-test.php with the event in Overlay. I could create a test class UITestResponseManipulator that is used in this global event and make it use a blacklist. Then in Overlay, the ui-test.php could just add to the blacklist. Do you think this is a good idea?
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.
Sorry, I don't really understand re aborting the event etc. If it's too much work should be fine to leave it here I reckon
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 thought up a simpler way of doing this, will give it a shot
…normalizing, use DI to store whitelist and override in ui-test.php DI config for Overlay.
…hard-coded root URL.
Ready for another review. If there are no problems, will merge on weekend. |
👍 lgtm |
…n the list, not running code only for those entries.
Refs matomo-org/matomo#8835, changes to travis generation command + travis scripts to use new travis infrastructure.
Use new travis infrastructure for travis tests
I got the tests to run and pass: https://travis-ci.org/piwik/piwik/jobs/81561860
They aren't much faster, but I have noticed the builds start much quicker (as in, from travis status created -> booting -> running).
TODO:
sudo: false
is specified through command line parameter to generate so plugin builds can be converted one by one in case they need extra time.Test against mariadb instead of mysql 5.6.Test against mysql 5.5 for now, switch to 5.5 + mariadb in another ticket.List of Changes
addons.apt.sources
and/oraddons.apt.packages
files in theirtests/travis
directory. Doing so is only required if using the new travis infrastructure, since sudo will not be available.generate:travis-yml
:--sudo-false
. This will generate .travis.yml w/sudo: false
, which will use travis' new infrastructure. We don't do this by default because some plugin builds will require sudo (ie, LoginLdap).ui-test
.ui-test.php
DI config files will be included (along w/test.php
) during UI tests. Currently this environment is used to make sure the UI tests will pass no matter what port Piwik is hosted on (required since sudo rights are needed to listen to ports 1-1024 on linux).[tests] port
to let Piwik know it is on a port during tests.misc
folder during UI tests. It's used by some tests.Merge Strategy
Should be merged on a weekend so no one will need the build immediately.