feat: infrastructure and boilerplate maintenance (MAPCO-10037)#105
Merged
CL-SHLOMIKONCHA merged 12 commits intoMar 8, 2026
Conversation
…r into feat/infrastructure-boilerplate-maintenance
razbroc
requested changes
Mar 2, 2026
razbroc
reviewed
Mar 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces several major updates focused on modernizing configuration management, improving tracing and metrics integration, and updating dependencies for better maintainability and performance. The most significant changes include replacing the legacy
configpackage with the new@map-colonies/configand schema-based configuration, refactoring tracing to use the latest@map-colonies/tracingpackages, and adding Prometheus metrics support. Additionally, dependency versions are updated across the board, and Helm chart values/configuration are enhanced for improved deployment flexibility.Configuration Management Modernization:
configpackage to@map-colonies/configwith schema validation, introducing a newsrc/common/config.tsfor initialization and access, and updating all relevant usages. ([[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519L51-L85),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-9d5ba1a74fa3c1ca2e89c9b7a2c356807802c8b5be7473377ffd4d9ab348aef1R1-R29),[[3]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-3cf5fe62c6a3d0d02e22030d2bb6bf7b283684710da4a400afa91ea03c59a88dL1-R38),[[4]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-f07c42814e0913799fda32ac14d063f1ef8a04e24fb6febd873a5f161e58a8d4L13-R17)).swcrc) for TypeScript compilation performance. ([.swcrcR1-R9](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-77a5276f1f91b0001697639c96553e2e0cfc71a6741500c4d5f8752a5df5a9dbR1-R9))Tracing and Metrics Integration:
@map-colonies/tracingand@map-colonies/tracing-utils, with a new factory/getter pattern for initialization and access, and updated container registration for graceful shutdown. ([[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-74a4feeee836de44780947cc77b55a356b1f9ffdf892039dd47b16d6f879dd88L1-R30),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-3cf5fe62c6a3d0d02e22030d2bb6bf7b283684710da4a400afa91ea03c59a88dL1-R38))prom-clientand injected metrics registry into the DI container. ([[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519L51-L85),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-3cf5fe62c6a3d0d02e22030d2bb6bf7b283684710da4a400afa91ea03c59a88dL1-R38))Dependency and Build Process Updates:
@map-colonies/*packages,eslint,jest, and others, and improved build scripts to usetsc-aliasand SWC/Jest for better TypeScript and test performance. ([[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519L51-L85),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519L98-R119),[[3]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-9601a8f6c734c2001be34a2361f76946d19a39a709b5e8c624a2a5a0aade05f2R1-R7),[[4]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-77a5276f1f91b0001697639c96553e2e0cfc71a6741500c4d5f8752a5df5a9dbR1-R9))[eslint.config.mjsR1-R7](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-9601a8f6c734c2001be34a2361f76946d19a39a709b5e8c624a2a5a0aade05f2R1-R7))Helm and Deployment Enhancements:
configManagementvalues to Helm charts for more flexible configuration injection, including offline mode, version, and server URL. ([[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-81801117ec01136c8a49bfcd42af8e104f4efad1f2daccda9da9d960eaad5279R69-R74),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-bfc6a602171deb9937fdee53ff0c20b633450fe90d995958f68b1e0035175ccbR38-R43))Minor Improvements and Cleanups:
[[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-3cc03a2b35797caa9ec37b14a71692d4acda874ed457cc5e9debc04446463fd7L4-L6),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-5ed2d9b85f555c8c096ab8b933c89bd9f0324b836b9dbb55f18d4ace327a2e43L3-R10),[[3]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-5ed2d9b85f555c8c096ab8b933c89bd9f0324b836b9dbb55f18d4ace327a2e43R26-R31),[[4]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-71c1527c85f65fe2c742f1ad9cac646846489e991c5989ef653c50e3abb6cc97L112),[[5]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-118a1ed2ebf5b946c94c5dfeae1c4d13c9a57ef105b36ad323e0b7b8e368da27L10-R16),[[6]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-45db88c2ebfb3a6f4882ee7b5ac9606046947e1f9ffb409f024a19f9872d5099R10),[[7]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-45db88c2ebfb3a6f4882ee7b5ac9606046947e1f9ffb409f024a19f9872d5099R33))[openapi3.yamlR194-R199](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-2ae95c92395c47c5e356f0d3b088d7d52a5862b2354e839bcbbf4856d4fd3898R194-R199))[[1]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-fcb4e78946cab747fd7b8a40ef9365ca166ecd6423728438fb69000d6e903d1eL1-R1),[[2]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-fcb4e78946cab747fd7b8a40ef9365ca166ecd6423728438fb69000d6e903d1eL21-R28),[[3]](https://github.com/MapColonies/raster-catalog-manager/pull/105/files#diff-fcb4e78946cab747fd7b8a40ef9365ca166ecd6423728438fb69000d6e903d1eR45-R51))References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]