הגדרה שמחה

Happy נתמך רק ב-Linux בגלל התלות החזקה שלו במרחבי שמות של רשתות ב-Linux.

התקנה

  1. מתקינים את הספריות הנדרשות:
    sudo apt-get install python-setuptools bridge-utils python-lockfile python-psutil make
  2. משכפלים את המאגר:
    git clone https://github.com/openweave/happy.git
    
  3. מתקינים את Happy:
    cd happy
    make
    
    הפקודה make מבצעת שתי משימות:
    1. יצירת חבילת Python בשם Happy בכתובת /usr/local/lib/python2.7/dist-packages
    2. העתקת סקריפטים של מעטפת Happy אל /usr/local/bin
  4. מאמתים את ההתקנה על ידי הרצת פקודה של Happy:
    happy-state
    
    State Name:  happy
    
    NETWORKS   Name         Type   State                                     Prefixes
    
    NODES      Name    Interface    Type                                          IPs
    

תמיכה ב-Weave

Happy תומך ב-Weave דרך OpenWeave, שדורש build של OpenWeave והגדרות נוספות. הדרך המהירה ביותר לשלב את OpenWeave עם Happy היא לפתח את האפליקציה הנפרדת.

  1. מתקינים את כלי הפיתוח ל-build ואת כל הרכיבים התלויים הנדרשים ל-OpenWeave:
    sudo apt-get update
    sudo apt-get install -y autotools-dev build-essential git lcov /
                         libdbus-1-dev libglib2.0-dev libssl-dev /
                         libudev-dev python2.7 python-software-properties
    sudo apt-get install -y --force-yes gcc-arm-none-eabi
    sudo apt-get update -qq
  2. משכפלים את המאגר של OpenWeave:
    git clone https://github.com/openweave/openweave-core.git
    
  3. יוצרים את האפליקציה הנפרדת OpenWeave:
    cd <path-to-openweave-core>
    make -f Makefile-Standalone
    
  4. מגדירים את נתיב Weave בהגדרה 'Happy':
    happy-configuration weave_path <path-to-openweave-core>/build/x86_64-unknown-linux-gnu/src/test-apps
    
  5. מעדכנים את משתנה הסביבה $PATH כדי שיידע איפה למצוא את הקבצים הבינאריים של Happy שקשורים ל-Weave:
    export PATH=$PATH:<path-to-openweave-core>/src/test-apps/happy/bin
    
  6. בודקים את ההגדרה. אתם אמורים להיות מסוגלים להריץ פקודות Weave עבור Happy:
    weave-state
    
    State Name:  weave
    
    NODES                Name       Weave Node Id    Pairing Code
    
    FABRIC          Fabric Id           Global Prefix
    

הסרה

  1. מוודאים שכל הצמתים והרשתות הווירטואליים נמחקו:
    happy-state-delete
  2. מסירים את ההתקנה של Happy:
    cd <path-to-happy>
    make uninstall
  3. מוחקים את כל שאר הקבצים של Happy:
    rm -f ~/.happy_state.json
    rm -f ~/.happy_conf.json
    rm -f ~/.happy_state.json.lock
    cd /usr/local/lib/python2.7/dist-packages
    rm -f happy*

אם אתם משתמשים בתכונה מתקדמת כמו מצבים מקבילים, צריך למחוק כל מצב בנפרד. מידע נוסף זמין במאמר הסרה במצבים מקבילים.