Skip to content

churrobots/2019-travis-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

EPA Roboticsmjpizz
EPA Robotics
and
Oct 3, 2019
34a6406 · Oct 3, 2019

History

65 Commits
Sep 23, 2019
Oct 2, 2019
Sep 16, 2019
Sep 16, 2019
Oct 3, 2019
Sep 16, 2019
Sep 16, 2019
Oct 2, 2019
Sep 16, 2019
Sep 16, 2019
Sep 16, 2019
Sep 16, 2019

Repository files navigation

Getting Started

  1. Make sure you can run the development environment.

  2. Make sure you can collaborate using Github.

  3. You're ready to code! Every time you want to edit/build/deploy to the robot, just:

    • Open Github Desktop
      • Make sure "Current Repository" (upper right) is travis-bot
      • Make sure "Current Branch" (next one) is not master. If it is, create a new branch for your work.
    • Click "Open in Visual Studio Code"
    • Click on the green lower-left corner and run "Remote-Containers: Reopen in Container"
    • To build: Click the "W" icon in the upper-right → "WPILib: Build Robot Code"
    • To deploy: Click the "W" icon in the upper-right → "WPILib: Deploy Robot Code"
      • Note: you need to be connected to the robot's wifi radio to do this

Todo

  • Update our CodeHS curriculum to include some robot-specific and practice sessions
  • Figure out how to manage multi-user Github + VSCode checkouts with a pool of laptops
    • initially, we could use the epa-robotics-team account for all commits and pushes, keep that auth on each laptop, and just ask the kids to put their name in the commit message
    • next we want to figure out how to make it work better for individual commits, getting comfortable using their own Github account
    • idea: looks like we could symlink the /Users/USERNAME/Documents/GitHub path to USB drive, or at least clear this on login
    • idea: can clear github credentials on login each time using git credential-osxkeychain erase
  • Figure out how to incorporate quick-mapping of ports without needing to upload new code at competition. This introspects the RobotMap onto the Shuffleboard for example:
    for (Field field : obj.getClass().getDeclaredFields()) {
      Object shuffleBoardValue = null;
      String shuffleBoardTitle = String.format("%s.%s", objName, field.getName());
      try {
        shuffleBoardValue = field.get(obj);
      } catch (IllegalArgumentException e) {
        e.printStackTrace();
      } catch (IllegalAccessException e) {
        e.printStackTrace();
      } finally {
        Shuffleboard.getTab(shuffleBoardTabName).add(shuffleBoardTitle, shuffleBoardValue);
      }
    }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published