项目作者: trustbloc

项目描述 :
Demonstration environments
高级语言: Go
项目地址: git://github.com/trustbloc/sandbox.git
创建时间: 2020-01-06T21:07:03Z
项目社区:https://github.com/trustbloc/sandbox

开源协议:Apache License 2.0

下载


Release
License
Godocs

Build Status
codecov
Go Report Card

sandbox

Sandbox contains the sample implementations of Issuer and Verifier/RP to demonstrate the following main features provided
by the TrustBloc projects.

Projects

Follow this link to learn more about all the TrustBloc projects and APIs.

Sample Applications

Demo

Components

OpenAPI specifications

Build and Deployment

For pre-requisites, please refer TrustBloc k8s deployments.
Also, refer for detailed steps to update components in sandbox.

The sandbox k8s is dependent on TrustBloc k8s. The TRUSTBLOC_CORE_K8S_COMMIT
variable in Makefile points to the TrustBloc k8s deployment version. In case of any code/docker
image changes to the underlying components, update the variable with k8s commit id.
Alternatively, uncomment the symlink command to point it to the cloned TrustBloc k8s repo.

Run following target to run the components locally.

  1. # builds the sandbox images, creates k8s cluster and deploys the trustbloc components
  2. make build-setup-deploy
  3. # pulls the sandbox images from remote registry, creates k8s cluster and deploys the trustbloc components
  4. make setup-deploy
  5. # stops the k8s cluster
  6. make minikube-down
  7. # undeploys all the components without bringing down minikube
  8. make undeploy-all
  9. # deploys all the components provided minikube is up
  10. make deploy-all

The SSL CA cert located inside ~/.trustbloc-k8s/local/certs/ need to be imported to system cert chain.

Refer Build and Deployment for more information

Automated testing

Use following targets to run the automation tests built using WebDriverIO. To run
this, npm need to be installed in the system.

  1. # runs tests for configurations in ./test/ui-automation/wdio.conf.js (by default, it runs against local deployment)
  2. make automation-test
  3. # runs tests against locally deployed k8s cluster
  4. make automation-test-local
  5. # runs tests against cloud deployed dev k8s cluster
  6. make automation-test-dev

Workaround for connection issues when using a VPN on macOS

Certain VPNs (on the host machine) have known issues with port conflicts when using the Hyperkit driver. The Hyperkit
driver is used when running on an x86-64 machine.

If disabling the VPN is not possible, one workaround is to use the docker driver along with the docker-mac-net-connect brew service.

To do this:

  1. Install the brew docker-mac-net-connect service: brew install chipmk/tap/docker-mac-net-connect.
  2. Start the service: sudo brew services start chipmk/tap/docker-mac-net-connect. Note: must be started with root permissions.
  3. Change the driver to docker in the minikube_setup.sh script.

Contributing

Thank you for your interest in contributing. Please see our community contribution guidelines for more information.

License

Apache License, Version 2.0 (Apache-2.0). See the LICENSE file.