Update operating system docs for Ubuntu 26.04 and document Deploy v3 path routing - #28
Open
lvangool wants to merge 3 commits into
Open
Update operating system docs for Ubuntu 26.04 and document Deploy v3 path routing#28lvangool wants to merge 3 commits into
lvangool wants to merge 3 commits into
Conversation
Ubuntu 26.04 is now the default for newly provisioned servers, so a number of OS references across the docs were out of date or incorrect. Corrections: - Remove the "two most recent releases of Ubuntu" claim from the applying-upgrades and server-monitoring pages. We support more than two, and hardcoding a count goes stale every release, so both now link to the technical specifications page instead. This also supplies the link that the applying-upgrades sentence was missing entirely. - Rewrite the Ruby and Ubuntu versions section. Ruby below 2.5.0 is no longer supported at all rather than being capped at Ubuntu 18.04, and the claimed Ubuntu 20.04 cap for Ruby below 3.1.0 no longer applies. - Update the manifest operating_system example to ubuntu2604 and the server metadata sample payload to 26.04. New content: - Add "How we choose your server's operating system" to the technical specifications page, covering why a new server on an established application matches its existing servers rather than jumping to the latest release, and why MongoDB servers stay on Ubuntu 24.04. Scoped to exclude Deploy v3, whose nodes run Flatcar. - Add an LTS end-of-life table to the out-of-LTS guide covering 20.04 through 26.04, replacing a worked example based on 18.04 and 2023. Verified with validate:mdx, validate:smart-links and validate:links.
Traffic sources in Deploy v3 now take an optional URL path alongside the domain, so several services in one application can share a domain. Adds a Deploy v3 traffic matching section to the service networking guide covering how path routing works, how to add a traffic source from the cluster Traffic page, and the rules that apply: - matching is segment-exact, so /api matches /api and /api/v2 but not /api-internal - the matched path is stripped before the request reaches the service - paths require a service exposing an external HTTP or HTTPS port; TCP and UDP are matched on domain alone - a domain is owned by one application and each domain/path pair must be unique across the cluster The existing traffic_matches documentation describes the service.yml array, which Deploy v3 does not use, but the page carried no version scoping so it rendered on v3 as well. It is now scoped to exclude v3 so the two sections no longer contradict each other for v3 readers. Verified with validate:mdx, validate:smart-links and validate:links.
The previous wording claimed Ruby 2.5.0 and above runs on every version of Ubuntu we support. That is true of 22.04 and 24.04 but not of 26.04, where precompiled Ruby is published from 3.2.0 upwards only. Older versions fall back to a source compile that is not expected to succeed on that toolchain. Replace the claim with the actual boundary, and show how to pin the operating system for applications that cannot move off an older Ruby.
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.
Summary
Two documentation updates: one following the Ubuntu 26.04 release, one covering path-based routing in Deploy v3.
Ubuntu 26.04
Ubuntu 26.04 is now the default for newly provisioned servers, which left a number of operating system references out of date or incorrect.
Corrections
servers/applying-upgrades.mdxandservers/server-monitoring.mdxboth claimed we support "the two most recent" releases of Ubuntu. We support more than two, and hardcoding a count goes stale every release, so both now link to the technical specifications page instead. This also supplies a link that the applying-upgrades sentence was missing entirely — "You can check what we currently support here" pointed nowhere.build-and-config/managing-and-upgrading-ruby-versions.mdx— the Ruby and Ubuntu versions section listed two rules that no longer apply. Ruby below 2.5.0 is no longer supported at all rather than being capped at Ubuntu 18.04, and the claimed Ubuntu 20.04 cap for Ruby below 3.1.0 no longer applies.manifest/_server-definitions.mdx—operating_systemexample updated toubuntu2604.servers/querying-server-metadata.mdx— sample response updated from 18.04 to 26.04.New content
specs-and-policies/technical-specifications.mdxgains "How we choose your server's operating system". This covers why a newly scaled server on an established application matches its existing servers rather than jumping to the latest release, and why MongoDB servers stay on Ubuntu 24.04. Scoped to exclude Deploy v3, whose nodes run Flatcar.servers/out-of-ubuntu-lts.mdxgains an LTS end-of-life table covering 20.04 through 26.04, replacing a worked example based on 18.04 and 2023.A companion change to the documentation site handles rendering of the new version.
Deploy v3 path-based routing
Traffic sources in Deploy v3 now take an optional URL path alongside the domain, so several services in one application can share a domain.
networking/service-networking.mdxgains a Deploy v3 traffic matching section covering how path routing works, how to add a traffic source from the cluster Traffic page, and the rules that apply:/apimatches/apiand/api/v2but not/api-internalNote for reviewers
The existing
traffic_matchesdocumentation on that page describes theservice.ymlarray, which Deploy v3 does not use — but the page carried no version scoping, so it rendered on v3 as well. It is now scoped to exclude v3 so the two sections no longer contradict each other for v3 readers.The rest of that page (port mapping,
dns_behaviour,load_balancing) is still unscoped and still renders on v3. Left alone here, but worth a follow-up.Validation
validate:mdx(378 files),validate:smart-linksandvalidate:links --skip-anchorsall pass. New anchors were checked by hand, since the build does not validate them.