Open
Description
There are a number of things that need to be done on the reference server before it can be released to the public as a reference server.
DevOps
- Move over to full Docker configs to use MongoDB with no build scripts and make sure the build process works on Windows, Mac, and Linux.
- Use Docker Compose and config files to handle builds.
- Migrate all build tasks (like init) and deps to Gradle.
- Move env-default to default.env (instructions for how to fill in the .env, with a .gitignore for .env)
- Log4J patches, Olingo updates, etc.
Development Tasks
Core Tasks
- DB Migration See: Migrate RESO Web API Reference Server to MongoDB #29
- Ensure Web API Core 2.0.0 and Data Dictionary 1.7 Tests Pass
- Web API Core testing requires some data in the database with support for roughly 40 queries as outlined in the specification. See section on Certification.
- Data Dictionary 1.7 metadata testing - this should pass because we generate the server from the reference documents.
- Data Dictionary 1.7 data validation - this requires data in each resource and for sort by modification timestamp and timestamp comparison operators to work for each resource with timestamps present 100% of the time in the test data set.
String Enumerations
- Add support for multi-valued string enumerations. See Refactor Storage in Reference Server to Support String Lookups #24 and Add Server Support for Lookup Resource and String Enumerations #25
- Add flag to build a server using either OData Enumerations or String.
- Generate insert statements for the Field Resource. See updated Model and Field Resource proposals.
- We should try and adopt as much of the Model, Field, and Lookup structure outlined in the Dictionary and factor in the new changes here: [RCP-42] Model and Field Resources transport#76
- We will need to support this format sometime within the next quarter.
- RESO has to refactor everything on the backend of the Certification System and reference formats in order to support these changes, so there's no pressure to do it now, but it's a Q2-Q3 2023 goal.
Documentation
- Ensure documentation for how to set up the reference server locally (or by using the generated Docker containers from DockerHub) is up to date and includes instructions for how to run the data generator.
- Publish Postman Collections for the Web API showing standard queries on all resources.
- Documentation showing common queries, similar to what's in the Web API examples, on the reference server.