Skip to content

Development Note

zero edited this page Jan 11, 2019 · 38 revisions

Project information

README.md

Get Started

Prerequisites

  • Java 8
  • Gradle: Build & Deploy script
  • Nexus: Repository server
  • Docker is desirable. Refers useful startup scripts
  • Create nexus.secret.properties with content:
    nexusSnapshotUrl=http://<your-nexus-server>/repository/maven-snapshots/
    nexusReleaseURL=http://<your-nexus-server>/repository/maven-releases/
    nexusUsername=<your-nexus-user>
    nexusPassword=<your-nexus-password>

Build

  • Build local: compile and build to jar file, then push artifact to local maven repository.

    gradle clean jooq build uberJar
  • Publish artifacts to Nexus server:

    gradle publish

Run Demo

  • Copy theses artifacts to demo folder: (will be removed when I standardize build and bundle script)

    • cp -rf dashboard/connector/edge/build/libs/nube-dashboard-connector-edge-1.0.0-SNAPSHOT-fat.jar demo/bios-connector.jar
    • cp -rf edge/bios/build/libs/nube-edge-bios-1.0.0-SNAPSHOT-fat.jar demo/bios.jar
    • cp -rf dashboard/server/build/libs/nube-dashboard-server-1.0.0-SNAPSHOT-fat.jar demo/dashboard.jar
    • cp -rf dashboard/server/webroot demo/
  • Start services (replace ${your-ip})

    java -Dlogback.configurationFile=logback-bios-connector.xml -jar bios-connector.jar -conf bios-connector.json
    
    java -Dlogback.configurationFile=logback-bios.xml -jar bios.jar -conf bios.json
    
    java -Dlogback.configurationFile=logback-dashboard.xml -jar dashboard.jar -conf dashboard.json

Interact REST API

Will be part of Swagger UI soon. Try Postman version first.

Architecture

Projects Naming Convention

Sub projects naming convention

Parts

How to write new service

Clone this wiki locally