Commit Graph
1860 Commits
Author SHA1 Message Date
E Rasche 5abbf1102e at loop time 2017-07-21 15:14:11 +00:00
E Rasche 9803dc600c More updates to GRT 2017-07-21 15:10:41 +00:00
Enis Afgan 6a77a186a8 Script doc correction 2017-07-14 11:21:56 -04:00
Matthias Bernt 698075c3d7 Merge remote-tracking branch 'upstream/dev' into dev 2017-06-19 10:40:55 +02:00
Frederic Sapet 3384e13744 correction of a typo leading to incomplete format string 2017-06-16 14:29:34 +02:00
Matthias Bernt 351adc6574 Merge remote-tracking branch 'upstream/dev' into dev 2017-06-14 13:28:14 +02:00
bernt@informatik.uni-leipzig.de f83871d070 moved assign_all_groups parameter to config 2017-06-13 22:12:48 +02:00
bernt@informatik.uni-leipzig.de 074b90d55e bug fixes
- system_user_pwent: undefined return value when KeyError
- external_chown_script:
  * typo
  * subprocess instead of os.subprocess
2017-06-13 22:04:03 +02:00
Matthias Bernt 7fbd3f2bc2 added missing empty line 2017-06-13 16:49:35 +02:00
Matthias Bernt aa200fe463 implemented the changes requested by @mvdbeek:
- check for external_chown_script == None
- switched from string split to shlex.split
- changed import order for pwd
- stderr + exit -> just exit
2017-06-13 15:03:31 +02:00
rhpvorderman c275d25be9 Fix linting 2017-06-13 13:38:38 +02:00
rhpvorderman e81a2ac654 Fix removed duplication in external chown script 2017-06-13 13:36:33 +02:00
rhpvorderman 2ec805417c Change paramter typo 2017-06-13 13:33:21 +02:00
rhpvorderman e197cadd98 fix typo 2017-06-13 10:00:55 +02:00
rhpvorderman 64f5e2e2fa Fix linting issues 2017-06-12 17:35:34 +02:00
E Rasche 2f992d90ae Rebase 2017-06-01 16:43:21 +00:00
Matthias Bernt 01cffa6151 imroved external_chown_script now uses Popen and checks return code 2017-05-26 15:32:19 +02:00
Matthias Bernt d25e552003 - removed uneccessary import
- added quotes to comment
2017-05-23 15:01:31 +02:00
Matthias Bernt 6841faac69 - removed my paths 2017-05-23 10:57:06 +02:00
Matthias Bernt b07ebdaada - added path check to external chown script 2017-05-23 10:55:58 +02:00
Martin Cech 8a9603f451 add more checlist items from #1643 2017-05-17 15:22:06 -04:00
Martin Cech 31d85f590b minor improvements to release checklist 2017-05-17 15:04:24 -04:00
Martin Cech 7cdbd78ccd exclude merge-labeled issues
from the link to check for release notes completeness
2017-05-16 16:20:20 -04:00
Martin Cech 6a94912083 add dev requirement
remove nitesh and carl from devteam
2017-05-02 12:07:25 -04:00
John Chilton 3921aa573c Merge pull request #3777 from martenson/dedup-readme
deduplicate obsolete API readme
2017-03-20 20:25:40 -04:00
Martin Cech 0602712a35 deduplicate obsolete API readme 2017-03-20 10:57:06 -04:00
Eric Rasche 986134d766 Should exit immediately to avoid index error 2017-03-17 15:12:50 +00:00
Martin Cech d3f2df5769 improve wording of getgalaxy in bootstrapping script for RN 2017-02-25 10:53:40 -05:00
Nicola Soranzo 2cfd833e45 Reduce indentation from 6 to 4 whitespaces
Fix a TODO
Remove funny but unused sub-sub-items.
2017-02-22 20:59:16 +00:00
Martin Cech 89e32ee526 Merge pull request #3622 from erasche/encode-decode-util
Util to encode or decode values
2017-02-15 16:54:53 -05:00
Eric Rasche fb2450ff33 document scriptg 2017-02-15 21:31:22 +00:00
Eric Rasche 6849752fb6 Rename, Strip F for Folder 2017-02-15 21:28:38 +00:00
Eric Rasche be5eaf4881 Util to encode or decode values 2017-02-15 20:52:07 +00:00
John Chilton a79ae2a8c2 Align architecture slides with training-material remarkjs template.
- Copy over the training material style CSS template and add to it only what is needed.
- Cleanup style and layout handling in architecture slides markdown.
- Update generated images for white background.
- Small updates in content to architecture for recent changes (and CONTRIBUTING.md linked to from slides).
2017-02-10 15:32:58 -05:00
Martin Cech 9c4587969e typo spotted by @nsoranzo 2017-02-05 15:45:46 -05:00
Martin Cech 2392bb9062 Merge branch 'dev' into protect-release-branch 2017-02-05 10:09:13 -05:00
Martin Cech ea013fefa8 add a task to protect the release branch in github
to the release process
should prevent https://github.com/galaxyproject/galaxy/pull/3560#issuecomment-277520315
thanks @nsoranzo
2017-02-05 10:06:08 -05:00
Martin Cech ddcbd8ba02 add jenkins documentation tasks for release issue 2017-01-31 13:17:40 -05:00
John Chilton 1a463f1688 Pull build_sites out of datatypes conf.
So deployers may modify these paths and stil use the default datatypes config.

This should speed up set_metadata also since each of these config files won't be loaded as part of that.
2017-01-30 20:43:29 -05:00
Martin Cech 9a8a0a9efe include example of deps pinning 2017-01-26 14:38:35 -05:00
John Chilton 0b7c6761c8 Rework #3433 for changes in #3444. 2017-01-23 09:47:18 -05:00
John Chilton 3d9cdeb70c Outline infrastructure for managing Conda installations outside of Galaxy.
- Construct a DependencyManager according to Galaxy's configuration before Galaxy starts to allow auto installation of Conda.
- Add script for managing tool dependencies outside of a Galaxy environment.
- Refactor to allow this to be done without duplicating logic related to defaults, configuration handling, etc....

Implements #3426.
2017-01-23 09:47:18 -05:00
John Chilton 0383f5abc1 Remove defunct script run_selenium_tests.sh. 2016-12-26 10:36:58 -05:00
John Chilton a7818e3065 Remove workflow testing stuff in test/functional and references.
There are more fully developed approaches including Planemo and wft4galaxy (https://github.com/phnmnl/wft4galaxy).
2016-12-20 10:29:31 -05:00
Nicola Soranzo cbd527b9a4 Merge branch 'release_16.10' into dev
Conflicts:
	static/scripts/bundled/analysis.bundled.js
	static/scripts/bundled/analysis.bundled.js.map
	static/scripts/bundled/libs.bundled.js.map
2016-12-07 20:35:40 +00:00
Martin Cech 45afe7aa61 fix typo 2016-12-05 19:50:17 -05:00
John Chilton d7c6f39a9e Increase release delta to 4 months ahead of 17.05. 2016-12-05 19:46:00 -05:00
John Chilton a84601ba80 Add 16.10 release notes. 2016-12-05 19:38:19 -05:00
John Chilton 80e64b8cc0 PEP-8 fix as pointed out by @nsoranzo. 2016-12-01 15:58:12 -05:00
John Chilton 82728df155 Replace CasperJS browser tests with Selenium tests.
See documentation added to run_tests.sh. This can be configured to target local web browsers or Selenium remote services as detailed in that script.

Individual tests can be executed with nosetests directly or groups of tests can share a common test Galaxy spin up when using ./run_tests.sh. If GALAXY_TEST_EXTERNAL=<url> is set - it will be respected and Galaxy will not be spun up (remember the URL needs to be reachable from the Selenium server inside the Docker container).

Every test failure writes a current screenshot of Galaxy to database/test_errors.

I will be honest that the desire to move toward selenium is based solely on failing to get the Casper tests to pass consistently due to bugs causing segfaults in the underlying tools (probably casperjs or phantomjs?). Over the past year I have tried multiple versions of dependencies, etc... and it never works out for me. Likewise Martin has never been able to get the tests to run consistently under Jenkins. I don't think Python or JavaScript is inherently better, this wasn't based on a personal preference about what kind of test I want to write.

Despite this being the primary reason, there are clear benefits to Selenium. It tests the actual web browsers we support, generates screenshots, has better documented and more robust tooling, can scale across clusters. Less clear, but certainly still a benefit of being Python based is that it fits with the rest of the test framework more cleanly than CasperJS.

Finally Carl's last words on CasperJS were "Ditch it".

The following specific tests were added or replaced:

- Implemented tour testing via Selenium (walk the two working stock tours and verify elements avaiable and clicks are valid). This is how I discovered #3206.
- Added completely new workflow GUI test (basic creation from URL and in editor).
- Replaced broken CasperJS registeration tests (text and expectations now wrong) with a Selenium variant that works against dev.
- Replaced broken anonymous history CasperJS tests with working Selenium tests.
- Replaced broken upload CasperJS tests with working Selenium tests.
- Replaced history options CasperJS tests with Selenium tests.
- Replaced login CasperJS tests with Selenium tests.
- Replaced history-share-tests.js with test_history_options.py
- Replaced history-panel-tests.js with test_history_panel.py
- Replaced a big part of hda-state-tests.js with test_history_dataset_state.py

I'm confident these utilities represent a sharable and higher-level abstraction around functional testing of Galaxy that can be used outside of Galaxy's testing framework. So a subset of the functional test stuff is in a separate module with minimal dependencies that I intend to make stand alone and pip installable like galaxy-lib.

This module consists of:

- Sizzle stuff in its own package. This code allows Selenium to reason with jQuery selectors instead of vanilla CSS selectors.
- Functionality for creating a Selenium driver and virtual display.
- The ``HasDriver`` mixin - this provides higher level navigation utilities not specifically tied to Galaxy.
- A package with abstractions for navigating Galaxy. This provides a higher-level interfactor for things such as logging in and out, registering a user, navigating menus, fetching Galaxy style tooltips and error messages, and walking Galaxy tours.

In order to demonstrate this new module is useful outside of Galaxy tests - I've included a CLI package to ease building argparse utilities around these abstractions and implemented a simple demonstration script that walks a Galaxy tour and dumps screenshots of Galaxy at each step to a folder. This is more of a demonstration of the utilities than an actual polished end user tool - though it might be helpful in linting and debugging tours.

In the future I hope to extend this scripting to implement

- Periodic deployment testing to ensure things like Jupyter work in production.
- A best practice recipe for Galaxy QA testing by deployers.
- An utility to generate dozens of screenshots of various aspects of Galaxy so we can quickly visually inspect ever part of the GUI before big releases.

xref https://github.com/galaxyproject/starforge/pull/115 xref #1419
2016-11-30 17:44:11 -05:00