This commit migrates the BSA, DNS, batch, and reporting packages from Joda-Time to java.time. Key changes include: - Updated Sleeper, Clock, and BigqueryUtils to use java.time types natively. - Refactored models like RdeRevision and Tld to eliminate redundant Joda conversions, utilizing new DateTimeUtils static utilities for LocalDate. - Improved test safety by replacing dynamic Instant.now() calls with static parsed constants. - Migrated temporal arithmetic in test suites to use DateTimeUtils convenience methods (plusDays, minusDays). - Updated BigqueryUtils serialization to preserve millisecond precision and formatting for large years, ensuring consistency with previous Joda behavior. - Enhanced code readability by converting long concatenated strings to Java text blocks in LordnLogTest. - Resolved environmental test failures in SyncRegistrarsSheetTest by synchronizing the FakeClock with the JPA extension. - Updated project engineering standards (GEMINI.md) to prefer Truth's .hasValue() for Optional assertions. Verified with a clean full build and all relevant test suites passing.
ConsoleWebapp
A web application for managing Nomulus.
Status
Console webapp is currently under active development and some parts of it are expected to change.
Deployment
The webapp is deployed with the nomulus default service war to GKE. During nomulus default service war build task, gradle script triggers the following:
- Console webapp build script
buildConsoleWebapp, which installs dependencies, assembles a compiled ts -> js, minified, optimized static artifact (html, css, js) - Artifact assembled in step 1 then gets copied to core project web artifact location, so that it can be deployed with the rest of the core webapp
Development server
Run npm run start:dev to start both webapp dev server and API server instance.
Navigate to http://localhost:4200/. The application will automatically reload
if you change any of the source files.
Code scaffolding
Run ng generate component component-name to generate a new component. You can
also use ng generate directive|pipe|service|class|guard|interface|enum|module.
Build
Run ng build to build the project. The build artifacts will be stored in
the dist/ directory.
Running unit tests
Run ng test to execute the unit tests
via Karma.
Running end-to-end tests
Run ng e2e to execute the end-to-end tests via a platform of your choice. To
use this command, you need to first add a package that implements end-to-end
testing capabilities.
Further help
To get more help on the Angular CLI use ng help or go check out
the Angular CLI Overview and Command Reference page.