Happy Setup

O Happy só tem suporte no Linux devido à forte dependência de namespaces de rede do Linux.

Instalar

  1. Instale as bibliotecas necessárias:
    sudo apt-get install python-setuptools bridge-utils python-lockfile python-psutil make
  2. Clone o repositório:
    git clone https://github.com/openweave/happy.git
    
  3. Instalar o Happy:
    cd happy
    make
    
    O comando make executa duas tarefas:
    1. Cria um pacote Happy Python em /usr/local/lib/python2.7/dist-packages
    2. Copia scripts de shell Happy para /usr/local/bin
  4. Valide a instalação executando um comando Happy:
    happy-state
    
    State Name:  happy
    
    NETWORKS   Name         Type   State                                     Prefixes
    
    NODES      Name    Interface    Type                                          IPs
    

Suporte para Weave

O Happy oferece suporte ao Weave pelo OpenWeave, que requer um build do OpenWeave e algumas configurações adicionais. A maneira mais rápida de integrar o OpenWeave com Happy é criar o aplicativo independente.

  1. Instale o conjunto de ferramentas de build e todas as dependências necessárias para o 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. Clone o repositório do OpenWeave:
    git clone https://github.com/openweave/openweave-core.git
    
  3. Crie o aplicativo OpenWeave independente:
    cd <path-to-openweave-core>
    make -f Makefile-Standalone
    
  4. Defina o caminho da Weave na configuração "Happy":
    happy-configuration weave_path <path-to-openweave-core>/build/x86_64-unknown-linux-gnu/src/test-apps
    
  5. Atualize a variável de ambiente $PATH para que ela saiba onde encontrar binários relacionados ao Happy para o Weave:
    export PATH=$PATH:<path-to-openweave-core>/src/test-apps/happy/bin
    
  6. Testar a configuração. Você poderá executar comandos da Weave para Happy:
    weave-state
    
    State Name:  weave
    
    NODES                Name       Weave Node Id    Pairing Code
    
    FABRIC          Fabric Id           Global Prefix
    

Desinstalar

  1. Verifique se todos os nós e redes virtuais foram excluídos:
    happy-state-delete
  2. Desinstalar feliz:
    cd <path-to-happy>
    make uninstall
  3. Exclua todos os outros arquivos Happy restantes:
    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*

Se você usar um recurso avançado, como estados paralelos, cada estado precisa ser excluído individualmente. Consulte Desinstalar com estados paralelos para mais informações.