Skip to content

Latest commit

 

History

History
69 lines (42 loc) · 1.85 KB

README.md

File metadata and controls

69 lines (42 loc) · 1.85 KB

UIService


A KBase module generated by the KBase SDK.

Using ui-service

See the spec file, UIService.spec, for api and type definitions.

Getting started with testing and development

See Developer Docs

Tests

Local development with kbase-ui

To make the image locally:

make docker-image-dev

Then to run it:

make run-docker-image-dev

This will start the container attached to the Docker custom network used by kbase-ui.

Then in kbase-ui, start it with the dynamic-services option, like

kbase-ui start-dev env=dev build=dev build-image=f dynamic-services="ui-service"

Pure local image build

kb_sdk's ModuleTester.java contains the code to build the docker image. All it does, as far as building goes, is construct a simple docker build bash command string. (It also manages images, etc.)

docker build --rm -t TARGET_IMAGE_NAME REPO_PATH

where TARGET_IMAGE_NAME is test/MODULE:latest

for local dev and testing, you can name this what you like. "latest" is not the best tag, probably, because it usually indicates the tip of master or the most recent release.

so, e.g.

docker build --rm -t test/ui-service:dev

If you are starting from a cold docker cache the initial build may take several minutes: the kbase base image is rather huge.

Testing

After running kb-sdk test the first time, which generates test_local:

  • For test_local/test.cfg set the test_token to a valid login token.
  • Generate an ssl self signed certificate and place into test_local/workdir: test-ssl.crt and test-ssl.key.
mkdir test_local/workdir
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout test_local/workdir/test-ssl.key -out test_local/workdir/test-ssl.crt -subj "/C=US/ST=California/L=Berkeley/O=LBNL/OU=KBase/CN=ci.kbase.us"