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.
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:
- Automatically by providing the parameter
-DdnsParentZoneId=Z104162015L8HFMCRVJ9Y
to create an NS record automatically that will delegate your parent zone to the created subdomain zone. - 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 -DsesEmail=support@example.com
.
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.
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
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 DataSpraydataspray-runner
supplementary packages for DataSpray streaming tasks
mvn clean deploy -Pdeploy-client -am -pl dataspray-api