This app provides a batch-based job processing application SolarNetwork.
This app depends on the following projects:
- solarnet-common
- solarnet-datum
- solarnet-instructor
- solarnet-ocpp
- solarnet-user
- solarnet-user-billing
- solarnet-user-datum
- solarnet-user-ocpp
The following Spring runtime profiles are available:
Profile | Description |
---|---|
datum-import-s3-resource-storage |
Store datum import resources in S3. See S3ResourceStorageConfig. |
mqtt |
Enables publishing aggregates to SolarFlux. See SolarFluxPublishingConfig. |
no-solarflux |
Disable SolarFlux MQTT integration when mqtt profile is active. |
snf-billing |
Enable SNF billing. See SnfBillingConfig. |
user-event-sqs |
Enable the SQS user event service. See UserEventServiceSqsConfig. |
ocpp-jobs |
Enable OCPP specific jobs. See OcppJobsConfig. |
For example, in a production deployment the SPRING_PROFILES_ACTIVE
environment variable can be
configured as
SPRING_PROFILES_ACTIVE="production,datum-import-s3-resource-storage,mqtt,snf-billing,user-event-sqs"
See the application.yml file for the available runtime configuration properties, and
their default values. You can override any property by creating an application.yml
file in the
working directory of the application, or via profile-specific files like
application-production.yml
when the production
profile is active.
The build is managed by Gradle, and requires a Java Development Kit version 21+ to build (and run).
# Unix-like OS:
../gradlew build
# Build without running tests:
../gradlew build -x test
# Windows:
../gradlew.bat build
The build produces an executable JAR at build/libs/solarjobs-x.y.z.jar
.