SShortSingh.
Back to feed

How Argo Rollouts and Prometheus SLIs Can Prevent Bad Deploys Reaching All Users

0
·4 views

A team using Argo CD discovered that its default health checks only confirm pods are running, not that the application is functioning correctly, after a broken checkout service reached 100% of pods before anyone noticed the surge in 500 errors. The incident revealed the danger of auto-sync with no canary gating, where a faulty image can roll out to every replica in a single sync cycle. To fix this, the team replaced their standard Kubernetes Deployment with an Argo Rollouts canary configuration that gradually shifts traffic — starting at 10% — before allowing further progression. Rollout advancement is gated by real Prometheus SLIs measuring error rate and p99 latency, so a degraded build is caught before it reaches all users. Under this setup, Argo CD handles Git-to-cluster sync while Argo Rollouts takes responsibility for health judgment and automated rollback decisions.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

SOCKS5 Proxies Explained: Use Cases, Technical Features, and Provider Comparison

SOCKS5 proxies are network intermediaries that operate at the transport layer, supporting any TCP or UDP protocol — making them more versatile than standard HTTP proxies. They are widely used by developers, marketers, and businesses for tasks such as web scraping, geolocation testing, load testing, and application-specific IP masking. Unlike VPNs, SOCKS5 proxies route only selected application traffic through the proxy server, leaving other system traffic unaffected. Key providers in the market include Bright Data, Oxylabs, Smartproxy, and Proxies.com, which differ in pricing, uptime guarantees, and IP pool types. Choosing the right provider depends on factors such as residential IP availability, SOCKS5 support, cost per gigabyte, and uptime SLA commitments.

0
ProgrammingDEV Community ·

How to Iterate Over Strings in Dart Using ASCII and UTF-8 Encoding

Dart strings are not natively iterable and must be converted to a list or iterable class before character-by-character traversal. The dart:convert module provides ascii.encode() and utf8.encode() methods to handle this conversion. However, using utf8.encode() directly on a string splits multi-byte Unicode characters into individual bytes, producing fragmented output. A simpler workaround is to use the built-in String.split('') method, which correctly preserves each Unicode character as a single element in the resulting list. This approach is especially useful when working with non-ASCII characters such as Chinese glyphs or special symbols.

0
ProgrammingDEV Community ·

GitHub Agentic Workflows Let Developers Automate CI Triage Using Markdown

GitHub Agentic Workflows, currently in public preview, allow developers to define automation logic in Markdown with natural-language instructions that compile into standard GitHub Actions YAML. A tutorial published on DEV Community demonstrates building a CI failure triage workflow that reads failed runs, analyses logs and jobs, and proposes a diagnostic issue for maintainer review. The workflow operates with read-only permissions and uses a staged mode that previews proposed changes in the Actions step summary without writing anything to the repository. Multiple guardrails — including scoped triggers, failure-only conditions, and restricted tool access — keep the agent's reach bounded and protect against risks like prompt injection. The sample was validated using gh-aw v0.86.2 on 25 August 2026, and the feature remains subject to change while in preview.

0
ProgrammingDEV Community ·

Baklava Library Generates API Docs and Type-Safe Clients from Scala Routing Tests

Baklava is an open-source Scala library by Iterators that generates API documentation directly from routing tests, eliminating the common problem of documentation drifting out of sync with actual code. When tests run, Baklava observes each request and response to infer the API surface and produce documentation as a test output rather than a separately maintained file. If a route changes and the test breaks, the documentation will not publish until the test is corrected, making drift structurally impossible. The library supports Pekko HTTP and http4s frameworks, integrates with ScalaTest, Specs2, and MUnit, and can output in seven formats including OpenAPI, TypeScript clients, Postman collections, and an sttp Scala client. Baklava v1.4.0 was released in May 2026 under the Apache 2.0 license and is actively maintained by Iterators.