Skip to content

Assets Serving

Warning

Unfinished section, the diagrams are up to date, but no textual explanations yet.

Legend

GitHubCloudflareGoogle CloudVirtual MachineOther
GitHubCloudflareGoogle CloudVirtual MachineOther

Overview

userRapidMaps Metadatahttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/servingError Logshttps://log.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/logs-uploadLauncher Confighttps://launcher-config.beyondallreason.dev/config.json Source: https://github.com/p2004a/spring-launcher-config-srvFileshttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hostingPoolHosts only https://pool-init.beyondallreason.dev/data.7zRowyhttps://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloudMaps MetadataPool package buildChobbySPADS ConfigGoogle Drive MapsMain WebsiteWhat is hosted on https://www.beyondallreason.info/maps Build using WebflowworkerworkerworkerR2R2 MetadataR2 ImagesKVR2 readreadImage transformread/writeread/writesync single mapsave imagesreadwritePush commitPush commitPush metadataSync mapsPullPush dist_cfg/config.jsonhttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/serving https://log.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/logs-upload https://launcher-config.beyondallreason.dev/config.json Source: https://github.com/p2004a/spring-launcher-config-srv https://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hosting Hosts only https://pool-init.beyondallreason.dev/data.7z https://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud What is hosted on https://www.beyondallreason.info/maps Build using Webflow
userRapidMaps Metadatahttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/servingError Logshttps://log.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/logs-uploadLauncher Confighttps://launcher-config.beyondallreason.dev/config.json Source: https://github.com/p2004a/spring-launcher-config-srvFileshttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hostingPoolHosts only https://pool-init.beyondallreason.dev/data.7zRowyhttps://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloudMaps MetadataPool package buildChobbySPADS ConfigGoogle Drive MapsMain WebsiteWhat is hosted on https://www.beyondallreason.info/maps Build using WebflowworkerworkerworkerR2R2 MetadataR2 ImagesKVR2 readreadImage transformread/writeread/writesync single mapsave imagesreadwritePush commitPush commitPush metadataSync mapsPullPush dist_cfg/config.jsonhttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/serving https://log.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/logs-upload https://launcher-config.beyondallreason.dev/config.json Source: https://github.com/p2004a/spring-launcher-config-srv https://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hosting Hosts only https://pool-init.beyondallreason.dev/data.7z https://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud What is hosted on https://www.beyondallreason.info/maps Build using Webflow

Files

userFileshttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hostingSpringFilesFilesRecoil EngineworkerR2 Assets3 buckets geographically distributes across North America, Europe, and Asia.KVCache PubSubCacherMaps Upload BucketMappers have permission to directly put new map files there via web interface to upload them to CDN. https://console.cloud.google.com/storage/browser/bar-springfiles-syncer_assets-upload readreadsyncfallback lookupPubSub Upload triggertriggerwritewritereaddownload releasereadNew releasehttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hosting 3 buckets geographically distributes across North America, Europe, and Asia. Mappers have permission to directly put new map files there via web interface to upload them to CDN. https://console.cloud.google.com/storage/browser/bar-springfiles-syncer_assets-upload
userFileshttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hostingSpringFilesFilesRecoil EngineworkerR2 Assets3 buckets geographically distributes across North America, Europe, and Asia.KVCache PubSubCacherMaps Upload BucketMappers have permission to directly put new map files there via web interface to upload them to CDN. https://console.cloud.google.com/storage/browser/bar-springfiles-syncer_assets-upload readreadsyncfallback lookupPubSub Upload triggertriggerwritewritereaddownload releasereadNew releasehttps://files-cdn.beyondallreason.dev/ Source: https://github.com/beyond-all-reason/maps-hosting 3 buckets geographically distributes across North America, Europe, and Asia. Mappers have permission to directly put new map files there via web interface to upload them to CDN. https://console.cloud.google.com/storage/browser/bar-springfiles-syncer_assets-upload

Rapid

userBunny CDNUsed only for hosting Rapid repo, domain https://repos-cdn.beyondallreason.dev/. We are using https://bunny.net/Rapid Build ServerManaged with Ansible playbook: https://github.com/beyond-all-reason/rapid-hostingRapid SyncerChobbyBeyond-All-ReasonBucketEdge RulecronRapidToolsRapidTools is package that is used to actually compile git repository to Rapid format Source: https://github.com/beyond-all-reason/RapidToolsRapid RepoGit CheckoutsHTTP ServerUpdate ScriptschedulerCDN SyncerVersion Pinner invokewritetriggerreadwritereadtriggertriggerreadread/writePin latest versionGit pullGit pullTrigger build (ssh)Trigger build (ssh)triggertriggertriggertriggerUsed only for hosting Rapid repo, domain https://repos-cdn.beyondallreason.dev/. We are using https://bunny.net/ Managed with Ansible playbook: https://github.com/beyond-all-reason/rapid-hosting RapidTools is package that is used to actually compile git repository to Rapid format Source: https://github.com/beyond-all-reason/RapidTools
userBunny CDNUsed only for hosting Rapid repo, domain https://repos-cdn.beyondallreason.dev/. We are using https://bunny.net/Rapid Build ServerManaged with Ansible playbook: https://github.com/beyond-all-reason/rapid-hostingRapid SyncerChobbyBeyond-All-ReasonBucketEdge RulecronRapidToolsRapidTools is package that is used to actually compile git repository to Rapid format Source: https://github.com/beyond-all-reason/RapidToolsRapid RepoGit CheckoutsHTTP ServerUpdate ScriptschedulerCDN SyncerVersion Pinner invokewritetriggerreadwritereadtriggertriggerreadread/writePin latest versionGit pullGit pullTrigger build (ssh)Trigger build (ssh)triggertriggertriggertriggerUsed only for hosting Rapid repo, domain https://repos-cdn.beyondallreason.dev/. We are using https://bunny.net/ Managed with Ansible playbook: https://github.com/beyond-all-reason/rapid-hosting RapidTools is package that is used to actually compile git repository to Rapid format Source: https://github.com/beyond-all-reason/RapidTools

Rowy

userMaps Metadatahttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/servingRowyhttps://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloudMaps MetadataworkerR2 MetadataR2 ImagesImagorFrontendFirebase frontend, https://rowy.beyondallreason.dev/FirestoreMap ParserGithub TriggerUploaded Assets BucketParsed Maps Bucket readreadImage transformread/writereadread/writeinvokeinvokewritereadreadwritesync single mapPush metadataPullhttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/serving https://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud Firebase frontend, https://rowy.beyondallreason.dev/
userMaps Metadatahttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/servingRowyhttps://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloudMaps MetadataworkerR2 MetadataR2 ImagesImagorFrontendFirebase frontend, https://rowy.beyondallreason.dev/FirestoreMap ParserGithub TriggerUploaded Assets BucketParsed Maps Bucket readreadImage transformread/writereadread/writeinvokeinvokewritereadreadwritesync single mapPush metadataPullhttps://maps-metadata.beyondallreason.dev/ Cloudflare worker serving data from R2 bucket https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud/serving https://rowy.beyondallreason.dev/ Our own deployment of Rowy with custom patches as Firebase app on GCP. There is also a bunch of small services there to support syncing, inside https://github.com/beyond-all-reason/maps-metadata/tree/main/cloud Firebase frontend, https://rowy.beyondallreason.dev/