-
Notifications
You must be signed in to change notification settings - Fork 32
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
GH Actions CI #122
GH Actions CI #122
Conversation
adds rosdep pull
Rejoice, it BUILDS!! |
@YuqianJiang This PR targets |
Confirmed on a separate communication channel. Merging. |
This config looks a bit like something I hacked together for Villa (not sure if there's any relation there) but it's not appropriate for BWI because it doesn't test installation. This used to be important because the core packages were released, and it may be important again if that's something people want to do. |
Thanks Nick, that's useful to know. It also explains why some of the travis builds were failing, but the GH actions passed- since its testing a weaker condition. |
* Add a more general Action Executor base class Allows for thinner wrapping of ROS Actions while still supporting logical translation style from LogicalNavigation Remove "n-1" from Clingo interface due to new modeling Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add a more general Action Executor base class Allows for thinner wrapping of ROS Actions while still supporting logical translation style from LogicalNavigation Remove "n-1" from Clingo interface due to new modeling Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Fix RosAction constructor Wrong parameter passing would cause actions to not be registered with their logical name Remove dependency on bwi_logical_translator Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Ignore bwi_kr_execution Changes to plan_execution have altered the action executor interface, so we'll eventually have to do some updates here * Add blind action executor Support empty rule bodies in goal query (i.e., a query that passes a fact) Don't timestamp facts in the head of a goal query Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Refactor table top perception services Avoid transforming entire pointclouds Move perception code to libbwi_perception Make directories for library code * Create additional headers Spread code out amongst a few more headers for clarity Initial refactoring of horizontal plane extraction * Track missing headers * Remove query(n) for rule with empty body in ASP goal Fix bug with isGoalReached in BlindActionExecutor * Add back box filtering Some moving of functions * Refactor horizontal surface detector * Remove MC Fix run result return * Bump to CPP11 Change NULL to nullptr Change throw() to noexcept Use sharedptrs for actions, as they have the most delicate lifecycle * Fix bugs in angle filtering Flip filter sign. We want the slice, not the rest of the cloud Set frame name correctly * Extract clusters from structure only (ignore color) Tweak interfaces to support additional arguments * Notify execution observers of goal changes This is used by plan executor to re-sense the robot's location upon receiving a new goal. * Notify execution observers in blind execution Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * fix flipped object orientation in the map annotation tool * Refactor ROSAction Move all knowledge of parameters and name into subclasses Handle failed state * Change monitor query timestep Update to match Clingo 4.5.1 behavior concerning incmode * Fix failure counting in replanning executor Print more information when failing to instantiate executors Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Add feedback and result to plan action Extend ExecutionObserver with plan termination event Add python fluent msg helpers Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add SmachAction interface Support a standardized wrapping for Smach state machines wrapped as action servers Tighten up RosAction interface Avoid run loop architecture for RosActions, and prefer goal construction and finished callbacks * Added some fields in and calculations in tabletop perception for the purpose of storing groceries * Make ROSAction fail on server failure * Adding table height as an output * Add knowledge representation Ported from RoboCup Move plan execution ros wrapper up into plan execution to facilitate code reuse between BWI and villa Move observers up to plan execution to facilitate reuse Refactor bwi_kr plan execution node to use the new shared wrapper Drop some bwi_kr_execution nodes that will be obsolete once knowledge_representation integration is done Commented out some actions that depend on logical translation updates Update bwi_kr_execution to use new LogicalNavigation superclass Update LogicalAction type Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add bwi specific knowledge representation package Add new map-to-kb dumper to handle doors, rooms Port over basic villa domain Update kr_execution launch Port over NavigateTo action Drop approachdoor as it is subsumed by navigate_to Port over more kr_execution testers Bring logical translator up to date with villa translator Support navigating to doors in logical translator Add door sense service Add connectivity output in annotation tool Add UI labels for region connectivity Fix 3rd floor connectivity Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Fixes to logical translator Remove old domain cruft Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Support near and facing multiple locations Change is_located to is_near to support being near multiple objects Domain updates to support this change Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Begin SMACH port Add knowledge rep interface for arbitrary SQL SELECT queries Make prepare_knowledge fail early Port over common SMACH helpers to bwi_tasks Move goal formulators to kr_execution Add basic visit_door_list SMACH port Add bwi_dialog to house dialog helpers Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Add working SMACH visit door list Make differences between objects and concepts clearer at the schema level Update LTMC to better support adding concepts and objects with names Make LTMC non-copyable Make attribute typing information stronger to fix problems with retrieving bools Remove unneeded static casts in python wrapper Support select query from Python Load locations from map files Update domain with schema changes Change observation to allow facing, being near multiple different items to better support dense objects in GDC Add third initialization stage for actions to support giving actions pointers to robot resources Track bwi.yaml to add additional default knowledge to the KB Rename multimaps for clarity Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Implement missing entity, concept helpers Use reference instead of bare pointer in resource manager * Support new action instantiation method Move away from using partially initialized actions as templates Use factory function objects that know how to couple resources and fluent information with an action's template Namespace prepare knowledge command Add basic editor config Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Tweak KR helpers Make error messages more explicit Fix outdated concept reference removal implementation Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Make pointer ownership more explicit Make plan executors own the actions they instantiate Make it explicit that plan executor node does not own the observers it is passed Make it explicit that the plan executor does not own the reasoners it is passed Co-authored-by: Yuqian Jiang<jiangyuqian@utexas.edu> * Remove action factory Start stripping old executors down * Add show_me helper Add additional knowledge helpers * Migrate knowledge_rep tests to gtest Fix equality operator definition * Outline KB query domain specific language Add skeleton grammar Add parser testing target Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Switch Bison/Flex to native cpp mode Switch to variant symbol API Change Bison output directory to put headers in workable location Add parser testing target Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Expose AST on the interpreter Test that a basic query causes a tree to become available Handle end of file correctly Update paren usage in the grammar Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Add Instance entity subclass To better represent the differences between instances and concepts Add helpers for exporting attribute data Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add Instance entity subclass To better represent the differences between instances and concepts Add helpers for exporting attribute data Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add OWL dumper Add OWL populater stub Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Update XML populator Log all plan queries Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Make annotator preserve key order on load and save Support maps that have the yaml file named 'map.yaml' in annotate map Co-authored-by: Nick Walker <nickswalker@utexas.edu> * Fix dependencies Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Fix a bug in location annotation Would cause locations to be saved in the wrong order Remove incorrect dependency Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Report failure more responsibly Count removed instances where possible in deleters Show names for named entities in relation tables (in show_me) Add boost python wrapper helper for methods that return optionals Document many methods Fix float loading in populate with knowledge Migrate to pragma once Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Begin adding query caching mechanism Add more flexible copy/link file interface to Clingo to better support reasoning domains Queries have unique folders which are named after the hash of their contents Add new optimization query interface Update noexcept usage Use pragma once Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Add Explaining observer Fix a bug that could cause callbacks to receive invalid pointers to Action Server results Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Bug fixes Fix a bug that could cause some hashes to crash on Create working memory path responsibly to avoid file handling crashes Fix Concept::get_children Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> * Fixes to make visit_door_list_smach work again Rename domain folders Rename objects to instances in bwi knowledge * Make agile_grasp dependency optional Don't compile agile_grasp helpers unless agile grasp is found * Update some C++ to avoid Melodic compiler errors Avoid stricter type checking, const static initialization errors * Fix agile_grasp compile flag Update some cmake C++ flags * Fix dependency for bwi_kr_execution * open door works in simulation Implement OpenSimulatedDoor using sense_door service Fix getting the door faced by the robot in logical navigator Allow action executor tester to test simulated actions * Silence Clingo warning of undefined atoms * Adapt go through door action to new interfaces Make prepareGoalParameters return optional * Update domain to enable planning for door actions Update knowledge base in open_door Fix recursive get concept and add test * Add a goal formulator to take a room or a location Make d3_414a doors consistent to simulator Disable recovery for now * Inital indigo backport Force CPP11 a bit harder for indigo Make PCL 1.8 optional Add workarounds for missing std::put_time, boost::filesystem iterator helpers * Allow build without MySQL backend Outline Cmake route towards using a second backend where MySQL isn't available * Stub out PostgreSQL build * Adopt CRTP for LTMC Reformat the header to call the typeparam implementations of all functions Move old MySQL implementation down * Centralize DB interactions in the LTMC class Make Entity, Concept and Instance thin wrappers over LTMC that farm out any database interaction to LTTMC Make Entity, Concept, and Instance templated by their actual LTMC implementation Set up aliases in the convenience header to expose pre-templatized classes to library users so that they don't have to manually decide on an implementation * Use header symlink instead of compile flag for LTMC impl selection Compile flags aren't picked up by other packages, and the way they were used to conditionally include the correct hidden header doesn't actually work when building other packages Update some header includes to match new configuration * Migrate to tf2 static broadcaster The level_mux is assumed to change infrequently enough that a listener can ignore the timestamp in its buffer. This isn't quite right around the moment of a level change, but in practice it should not cause any problems The multi level map frame transforms will in fact never change * Fix path to knowledge_representation in script * Remove deprecated throw annotations * Add Fluent and Law convenience constructors Add Fluent user-defined literal * Add Clingo 5.2 wrapper Same as 4.5 unless testing uncovers anything * Stub out testing for actasp Add a mock domain for bit operations Test plan generation for the domain Add some basic tests on Fluent and Rule * Remove remote reasoner * Remove remote reasoner header * Update MySQL apt version number * Change macros to allow default pcl version (1.7.2) for Xenial * Fix build issues after removing RemoteReasoner * fix get_default_ltmc in python * Use the last working mysql-connector-cpp * Update README to use automatic install mysql script * Remove bwi_perception dependency * Comment out contraint in schema due to issues with 8.0.16 * AXE domain simulation * Add unseen attributes to attributes table automatically Implement attribute_exists and add_new_attribute * Add early Postgres backend work Add Postgres schema Sketch basic implementation queries Fix linking for postgres builds Use uints for entity ids * Fix most basic CRUD operations Implement attribute queries Implement entity deletion Fix syntax of schema functions * Fix remaining schema function issues Add a remove_attribute function to simplify removing attributes across all tables at once Syntax tweaks to convert concept gathering into a function All tests pass now * Add more failing tests Implement get_all_entities Start covering instance/concept accounting and attribute behavior Add postgresql rosdep to try to get things building out of box * Fix and improve many queries Use a simpler (no join) query for checking whether enties are concepts or instances Make attribute interface obey single type per attribute name Make adding a new attribute type safe Make it possible to reset schema from code by wrapping default state in SQL function * Implement LTMC SQL interface for Postgres Add minor coverage for the feature * Update Industrial CI usage * Update distro matrix with Melodic * Load Postgres service in CI * Fix build issue * Replace knowledge_representation with submodule * Fix bwi_kr_execution build * Fix populate_with_map and populate_with_knowledge * Add the required version number in knowledge file * Fix knowledge to asp writer Visit door list works again * Changes for AHG building Fix populate_with_map and goal formulator * Add script to visit a random visitable location * adds populate_from_map for ahg 1s * Add basic multi-level knowledge * removes unsupported travis flag * Remove cubicle from bwi visit locations * updates CI * testing hook * test hook * test hook * test hook * adds possible missing ENV * Update .travis.yml * Update .travis.rosinstall * Update .travis.rosinstall * Update .travis.yml * GH Actions CI (#122) * Create main.yml * Update main.yml adds rosdep pull * Update main.yml * updates * updates * updates * updates * updates * missing definition * missing definition Co-authored-by: Nick Walker <nick@nickwalker.us> Co-authored-by: Yuqian Jiang <jiangyuqian@utexas.edu> Co-authored-by: Nick Walker <nickswalker@utexas.edu> Co-authored-by: thomas wei <thomasw219@gmail.com> Co-authored-by: Rishi Shah <rishihahs@gmail.com>
PR for migration away from Travis CI to GH Actions.