-
I'm doing ruby development for 15 years and haven't seen convoluted setup of ruby and gems in any project. Initially my plan was to debug an issue on manage-ui-classic but multiple problems popped up which seem to relate to all the custom tooling that miq has. First thing I tried was getting the testsuite running and be green on master branch of manageiq
This gets plenty of the specs green and some of them red plus I get plenty of deprication warnings. So apparently I still miss a not documented and not ruby/rails standard approached way of running it as miq intended it. Second I went ahead of getting the test suite of manage-ui-classic running and followed the description of symlinking and some obfuscated override and Third How do I run a specific controller spec in miq-ui-classic? Appendix: Sorry about starting that post a bit harsh. I don't mean it as an insult... just feels quite frustrating which also limits adoptability of FOSS development ❤️ best |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi @dennym Welcome! https://www.manageiq.org/docs/guides/developer_setup.html is the starting point for getting set up. You'll also want to follow https://www.manageiq.org/docs/guides/developer_setup/plugins since you're interested in UI development, which is a plugin (unlike "normal" Rails apps). Admittedly, there might be things that go wrong in the guides over time, so if you run across any issues feel free to open issues or PRs in https://github.com/ManageIQ/guides.
To run the specs you can run I am surprised a full
Can you open an issue or PR for this? That should not be happening.
You can modify the core Gemfile that way and it will work. We introduced bundler-inject to avoid local diffs where the Gemfile was modified and accidentally committed by the PR author (didn't happen so much for repo references, but has happened on occasion with development gems people needed). Note that if all you're doing is changing manageiq-ui-classic and running tests from within ui-classic, you don't need to modify the core Gemfile or do the override_gem thing. You only need to do that if you're modifying things in core as well and want both repos to recognize each other. This is not uncommon for devs to create cross-repo PRs.
I appreciate the clarification. We look forward to your contributions here! ❤️ This project is pretty old (it was actually started in 2006 and open sourced in 2012), so there's a lot of legacy here, which is probably why you're seeing some of the clunkiness compared to a "normal" Rails app. Most of us have been doing it this way for so long, we could use a fresh perspective on how to make it easier for the community. If you have suggestions on improvements, we'd love to hear them. Thanks! |
Beta Was this translation helpful? Give feedback.
Hi @dennym Welcome!
https://www.manageiq.org/docs/guides/developer_setup.html is the starting point for getting set up. You'll also want to follow https://www.manageiq.org/docs/guides/developer_setup/plugins since you're interested in UI development, which is a plugin (unlike "normal" Rails apps). Admittedly, there might be things that go wrong in the guides over time, so if you run across any issues feel free to open issues or PRs in https://github.com/ManageIQ/guides.
To run the specs you can run
bundle exec rake test:vmdb
or justbundle exec rake
(which defaults to thetest:vmdb
suite). If you ranbin/setup
orbin/update
the test database should have been created for you, but i…