Git Product home page Git Product logo

rc-cli's Introduction

RC CLI

Introduction

This repository houses all code needed to setup, evaluate and test code for the Amazon Routing Challenge.

Using the rc-cli, participants of the Amazon Routing Challenge will be able to:

  • Create a new app
  • Run local development code with competition data
  • Run environment agnostic code with competition data
  • Save solution files (a file that can be submitted for evaluation)
  • Test local code and solutions with the official scoring algorithm

Saved solutions that have been tested can be uploaded to the competition site: routingchallenge.io

Mac and Unix Setup

  1. Install Docker:
  • Note: Make sure to install Docker Engine v18.09 or later
  • If you have an older version of Docker, make sure BuildKits are enabled
  • On Linux based systems you may need to follow the post installation setup instructions for docker:
    • sudo groupadd docker
    • sudo usermod -aG docker $USER
    • Validate the Installation
      • docker run hello-world
  1. Install Git
  • It is likely git is already installed. You can check with:
    git --version
    
  1. Install the rc-cli
  • Run the following commands to install the rc-cli
    bash <(curl -s https://raw.githubusercontent.com/MIT-CAVE/rc-cli/main/install.sh) \
    https://cave-competition-app-data.s3.amazonaws.com/amzn_2021/data.tar.xz
    
    • Follow the prompts to finish the installation process
    • Note: If your computer does not support the needed version of tar, you can always use the zip data folder (about 50% larger data download)
      bash <(curl -s https://raw.githubusercontent.com/MIT-CAVE/rc-cli/main/install.sh) \
      https://cave-competition-app-data.s3.amazonaws.com/amzn_2021/data.zip
      
  1. Validate the installation was successful
  • Run the following command:
    rc-cli version
    
  • If successful, the output should look something like:
    Routing Challenge CLI 0.1.5
    
  • If unsuccessful, you may get something like:
    rc-cli: command not found
    
  1. Continue to the Create Your App section below

Windows 10 Setup

  1. Install Docker
  • Install WSL2 update during Docker installation
    • Update your WSL2 Kernel (If you are prompted during installation)
      • Click on link to the Windows Documentation about WSL2
      • Download the file to update the WSL kernel package to WSL2
      • Use the downloaded package to install the WSL2 Kernel
  • Reboot your system
  1. Open PowerShell as Administrator
  • In PowerShell type:
    wsl --set-default-version 2
    
  • Press Enter
  • Exit PowerShell
  1. Install Ubuntu 20.04
  • In the Microsoft store, search for Ubuntu 20.04
  • Install the Ubuntu 20.04 App
  1. Open the Ubuntu 20.04 app
  • This may take a while the first time
  • You will be prompted for a username and password
    • Set your username and password
    • MAKE SURE TO REMEMBER THESE
  • Close the app
  1. Open the Docker Desktop app
  • In settings > resources > WSL Integration
    • Allow Ubuntu 20.04
  • Reboot Docker
  1. Open the Ubuntu 20.04 app
  • Run the following commands to finish setting up Docker:
    • Note: You may be prompted for your password
      • This is your Ubuntu password
    sudo groupadd docker
    
    sudo usermod -aG docker $USER
    
  • Validate Docker is working with the following command:
    docker run hello-world
    
    • This may not work until you close and re-open Docker.
  1. Install the rc-cli in the Ubuntu 20.04 app
  • Run the following commands to install the rc-cli
    bash <(curl -s https://raw.githubusercontent.com/MIT-CAVE/rc-cli/main/install.sh) \
    https://cave-competition-app-data.s3.amazonaws.com/amzn_2021/data.tar.xz
    
    • Follow the prompts to finish the installation process
  1. Validate the installation was successful in the Ubuntu 20.04 app
  • Run the following command:
    rc-cli version
    
  1. Continue to the Create Your App section below

Create Your App

  1. Get available commands
rc-cli help
  1. Create an app in your current directory
  • Note: Feel free to change my-app to any name you want
rc-cli new-app my-app
  1. Enter the app directory
cd my-app
  1. Get the folder location on your machine to open the app in your favorite editor.
  • On Mac:
    • Open your current directory in finder
      open .
      
    • Display your current directory as a path
      echo $PWD
      
  • On Linux:
    • Display your current directory as a path
      echo $PWD
      
  • On Windows 10 (using WSL Ubuntu 20.04)
    • Open explorer from your current directory
      explorer.exe .
      
    • Alternatively, your Ubuntu 20.04 app stores files on your local operating system at:
      • \\wsl$>Ubuntu-20.04>home>your-username
  1. All rc-cli commands and usages are documented in your created application as README.md

rc-cli's People

Contributors

connor-makowski avatar luisvasq avatar mitrussell avatar mrkwanzaa avatar noszek avatar shparks12 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.