Skip to content

datasprayio/dataspray

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DataSpray


Work in progress...

Self-host

From CloudFormation template

⚠️ Not yet available...

From sources

Ensure you installed all dependencies and run the following command:

mvn clean deploy -Pselfhost -DdnsDomain=example.com [-DdnsParentZoneId=Z104162015L8HFMCRVJ9Y]

Note: The Certificate creation step will wait and appear stuck until domain is validated via DNS. See the "Setup DNS" section below.

Configuration

Setup DNS

The deployment will create a Route53 hosted zone at dataspray.<dnsDomain>. You can choose to use a different subdomain using the -DdnsSubdomain=dataspray property.

You will need to create a NS record in your parent domain zone pointing to the subdomain zone:

  1. Automatically by providing the parameter -DdnsParentZoneId=Z104162015L8HFMCRVJ9Y to create an NS record automatically that will delegate your parent zone to the created subdomain zone.
  2. Manually if you're not using Route53 or wish to create the record yourself. If using a subdomain (e.g. dataspray.example.com), create a NS record in your top-level domain's hosted zone delegating the subdomain to the created hosted zone's name servers.
Setup Email

If you wish to receive emails sent by DataSpray, you will need to verify your email identity in SES and provide the parameter [email protected].

Without it, Cognito will be able to send a limited number of emails and DataSpray will not be able to send any email notifications.

Teardown

Resources part of the deployment can be removed by shutting down the stacks in CloudFormation in your AWS Console.

Resources created as part of using the service such as Lambda functions for processing data will have to be removed manually at this time.

Env Setup

brew install docker scour imagemagick

# Setup Java, Maven using SDKMAN
brew tap sdkman/tap
brew install sdkman-cli
sdk env install

# Setup NodeJS using NVM
brew install nvm
nvm install

Deployment

This section is for dataspray.io cloud deployment. For self-hosted, see section above.

Staging

Commits to master branch are automatically deployed to staging environment using Github Actions.

Production
mvn clean deploy -Pproduction,native
Libraries

There are a few libraries that are deployed to various package repositories.

  • dataspray-client-* client libraries for controlling and using DataSpray
  • dataspray-runner supplementary packages for DataSpray streaming tasks
mvn clean deploy -Pdeploy-client -am -pl dataspray-api