<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="rss.xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Helm Blog</title>
        <link>https://helm.sh/fr/blog</link>
        <description>Helm Blog</description>
        <lastBuildDate>Mon, 17 Nov 2025 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>fr</language>
        <item>
            <title><![CDATA[Helm 4 Released]]></title>
            <link>https://helm.sh/fr/blog/helm-4-released</link>
            <guid>https://helm.sh/fr/blog/helm-4-released</guid>
            <pubDate>Mon, 17 Nov 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[On Wednesday November 12th, during the Helm 4 presentation at KubeCon + CloudNativeCon, Helm v4.0.0 was released. This is the first new major version of Helm in 6 years.]]></description>
            <content:encoded><![CDATA[<p>On Wednesday November 12th, during the <a href="https://sched.co/27Nme" target="_blank" rel="noopener noreferrer" class="">Helm 4 presentation at KubeCon + CloudNativeCon</a>, <a href="https://github.com/helm/helm/releases/tag/v4.0.0" target="_blank" rel="noopener noreferrer" class="">Helm v4.0.0</a> was released. This is the first new major version of Helm in 6 years. </p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="whats-new">What's New<a href="https://helm.sh/fr/blog/helm-4-released#whats-new" class="hash-link" aria-label="Lien direct vers What's New" title="Lien direct vers What's New" translate="no">​</a></h2>
<p>Helm v3 has served the Kubernetes community well for many years. During that time we saw new ways to use Helm, new applications installed via charts, the rise of <a href="https://artifacthub.io/" target="_blank" rel="noopener noreferrer" class="">Artifact Hub</a>, and numerous tools that build on top of Helm. We also saw where we wanted to add features but the internal architecture of Helm didn't provide a path forward without breaking public APIs in the SDK. Helm 4 makes those changes to enable new features now and into the future.</p>
<p>Some of the new features include:</p>
<ul>
<li class="">Redesigned plugin system that supports Web Assembly based plugins</li>
<li class="">Post-renderers are now plugins</li>
<li class="">Server side apply is now supported</li>
<li class="">Improved resource watching, to support waiting, based on kstatus</li>
<li class="">Local Content-based caching (e.g. for charts)</li>
<li class="">Logging via slog enabling SDK logging to integrate with modern loggers</li>
<li class="">Reproducible/Idempotent builds of chart archives</li>
<li class="">Updated SDK API including support for multiple chart API versions (new experimental v3 chart API version coming soon)</li>
</ul>
<p>You can learn about more of the changes in the <a class="" href="https://helm.sh/fr/docs/overview">Helm 4 Overview</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-v3-support">Helm v3 Support<a href="https://helm.sh/fr/blog/helm-4-released#helm-v3-support" class="hash-link" aria-label="Lien direct vers Helm v3 Support" title="Lien direct vers Helm v3 Support" translate="no">​</a></h2>
<p>When a major version of software comes out, it takes awhile to make the transition. Helm v3 will continue to be supported to enable a clean transition period. The dates of continued support are:</p>
<ul>
<li class="">Bug fixes until July 8th 2026.</li>
<li class="">Security fixes until November 11th 2026.</li>
</ul>
<p>Helm releases updates on Wednesdays (typically the 2nd Wednesday in a month) and these dates correspond with release schedule dates. During this time there will be <strong><em>NO</em></strong> features backported other than updates to the Kubernetes client libraries that enable support of new Kubernetes versions.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="learn-more">Learn More<a href="https://helm.sh/fr/blog/helm-4-released#learn-more" class="hash-link" aria-label="Lien direct vers Learn More" title="Lien direct vers Learn More" translate="no">​</a></h2>
<p>You can learn about the Helm changes in the <a class="" href="https://helm.sh/fr/docs/overview">overview</a> or find all the changes in the <a class="" href="https://helm.sh/fr/docs/changelog">full changelog</a>. The documentation shares many more details as you can find all the ways Helm has stayed the same and the new features you can take advantage of.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm @ KubeCon + CloudNativeCon NA '25]]></title>
            <link>https://helm.sh/fr/blog/helm-at-kubecon-na-25</link>
            <guid>https://helm.sh/fr/blog/helm-at-kubecon-na-25</guid>
            <pubDate>Tue, 04 Nov 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[The Helm team is headed to KubeCon + CloudNativeCon NA '25 in Atlanta, Georgia next week and it's truly a special one for us! This time around, as we celebrate our 10th birthday (fun fact, Helm was launched at the first KubeCon in 2015), we will also be releasing the highly anticipated Helm 4! Join us for a series of exciting activities throughout the week -- read on for more details!]]></description>
            <content:encoded><![CDATA[<p>The Helm team is headed to KubeCon + CloudNativeCon NA '25 in Atlanta, Georgia next week and it's truly a special one for us! This time around, as we celebrate our 10th birthday (fun fact, Helm was launched at the first KubeCon in 2015), we will also be releasing the highly anticipated Helm 4! Join us for a series of exciting activities throughout the week -- read on for more details!</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-booth-in-project-pavilion">Helm Booth in Project Pavilion<a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#helm-booth-in-project-pavilion" class="hash-link" aria-label="Lien direct vers Helm Booth in Project Pavilion" title="Lien direct vers Helm Booth in Project Pavilion" translate="no">​</a></h2>
<p>Don't miss out on meeting our project maintainers at the Helm booth - we'll be hanging out the second half of each day. Drop by to ask questions, learn about what's in Helm 4, and pick up special Hazel swag celebrating Helm's 10th birthday!</p>
<ul>
<li class="">
<p>TUES Nov 11 @ 03:30 PM - 07:45 PM ET</p>
</li>
<li class="">
<p>WED Nov 12 @ 02:00 PM - 05:00 PM ET</p>
</li>
<li class="">
<p>THUR Nov 13 @ 12:30 PM - 02:00 PM ET</p>
</li>
</ul>
<p>LOCATION: 8B, back side of Flux and across from Argo</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="tuesday-november-11-2025">Tuesday November 11, 2025<a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#tuesday-november-11-2025" class="hash-link" aria-label="Lien direct vers Tuesday November 11, 2025" title="Lien direct vers Tuesday November 11, 2025" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="simplifying-advanced-ai-model-serving-on-kubernetes-using-helm-charts"><a href="https://sched.co/27FVb" target="_blank" rel="noopener noreferrer" class="">Simplifying Advanced AI Model Serving on Kubernetes Using Helm Charts</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#simplifying-advanced-ai-model-serving-on-kubernetes-using-helm-charts" class="hash-link" aria-label="Lien direct vers simplifying-advanced-ai-model-serving-on-kubernetes-using-helm-charts" title="Lien direct vers simplifying-advanced-ai-model-serving-on-kubernetes-using-helm-charts" translate="no">​</a></h3>
<p>TIME: 12:00 PM - 12:30 PM ET</p>
<p>LOCATION: Building B | Level 4 | B401-402</p>
<p>SPEAKERS: <a href="https://kccncna2025.sched.com/speaker/ajayvohr" target="_blank" rel="noopener noreferrer" class="">Ajay Vohra</a> &amp; <a href="https://kccncna2025.sched.com/speaker/caronzh03" target="_blank" rel="noopener noreferrer" class="">Caron Zhang</a></p>
<p>The AI model serving landscape on Kubernetes presents practitioners with an overwhelming array of technology choices: From inference servers like Ray Serve and Triton Inference Server, inference engines like vLLM, and orchestration platforms like Ray Cluster and KServe. While this diversity drives innovation, it also creates complexity. Teams often prematurely standardize on limited technology stacks to manage this complexity.</p>
<p>This talk introduces an innovative Helm-based approach that abstracts the complexity of AI model serving while preserving the flexibility to leverage the best tools for each use case. Our solution is accelerator agnostic, and provides a consistent YAML interface for deploying and experimenting with various serving technologies.</p>
<p>We'll demonstrate this approach through two concrete examples of multi-node, multi-accelerator model serving with auto scaling: 1/ Ray Serve + vLLM + Ray Cluster, and 2/ LeaderWorkerSet + Triton Inference Server + vLLM + Ray Cluster + HPA.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="wednesday-november-12-2025">Wednesday November 12, 2025<a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#wednesday-november-12-2025" class="hash-link" aria-label="Lien direct vers Wednesday November 12, 2025" title="Lien direct vers Wednesday November 12, 2025" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="maintainer-track-introducing-helm-4"><a href="https://sched.co/27Nme" target="_blank" rel="noopener noreferrer" class="">Maintainer Track: Introducing Helm 4</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#maintainer-track-introducing-helm-4" class="hash-link" aria-label="Lien direct vers maintainer-track-introducing-helm-4" title="Lien direct vers maintainer-track-introducing-helm-4" translate="no">​</a></h3>
<p>TIME: 11:00 AM - 11:30 AM ET</p>
<p>LOCATION: Building C | Level 3 | Georgia Ballroom 1</p>
<p>SPEAKERS: <a href="https://kccncna2025.sched.com/speaker/matt812" target="_blank" rel="noopener noreferrer" class="">Matt Farina</a> &amp; <a href="https://kccncna2025.sched.com/speaker/robert_sirchia.28kd1wis" target="_blank" rel="noopener noreferrer" class="">Robert Sirchia</a> (Helm Maintainers)</p>
<p>The wait is over! After six years with Helm v3, Helm v4 is finally here. In this session you'll learn about Helm v4, why there was 6 years between major versions (from backwards compatible feature development to maintainer ups and downs), what's new in Helm v4, how long Helm v3 will still be supported, and what comes next. Could that include a Helm v5?</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="contribfest-hands-on-with-helm-4-wasm-plugins-oci-and-resource-sequencing-oh-my"><a href="https://sched.co/27Nl0" target="_blank" rel="noopener noreferrer" class="">Contribfest: Hands-On With Helm 4: Wasm Plugins, OCI, and Resource Sequencing. Oh My!</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#contribfest-hands-on-with-helm-4-wasm-plugins-oci-and-resource-sequencing-oh-my" class="hash-link" aria-label="Lien direct vers contribfest-hands-on-with-helm-4-wasm-plugins-oci-and-resource-sequencing-oh-my" title="Lien direct vers contribfest-hands-on-with-helm-4-wasm-plugins-oci-and-resource-sequencing-oh-my" translate="no">​</a></h3>
<p>TIME: 02:15pm - 03:30 PM ET</p>
<p>LOCATION: Building B | Level 2 | B207</p>
<p>SPEAKERS: <a href="https://kccncna2025.sched.com/speaker/ablock2" target="_blank" rel="noopener noreferrer" class="">Andrew Block</a>, <a href="https://kccncna2025.sched.com/speaker/r6by" target="_blank" rel="noopener noreferrer" class="">Scott Rigby</a>, &amp; <a href="https://kccncna2025.sched.com/speaker/gvjenkins" target="_blank" rel="noopener noreferrer" class="">George Jenkins</a> (Helm Maintainers)</p>
<p>Join Helm maintainers for an interactive session contributing to core Helm and building integrations with some of Helm 4's emerging features. We'll guide contributors through creating Helm 4's newest enhancements including WebAssembly plugins, enhancements to how OCI content is manged, and implementing resource sequencing for controlled deployment order. Attendees will explore how to build Download/Postrender/CLI plugins in WebAssembly, develop capabilities related to changes to Helm's management of OCI content including repository prefixes and aliases, and use approaches for sequencing chart deployments beyond Helm's traditional mechanisms.</p>
<p>This session is geared toward anyone interested in Helm development including leveraging and building upon some of the latest features associated with Helm 4!</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-4-release-party"><a class="" href="https://helm.sh/fr/helm-4-release-party/">Helm 4 Release Party</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#helm-4-release-party" class="hash-link" aria-label="Lien direct vers helm-4-release-party" title="Lien direct vers helm-4-release-party" translate="no">​</a></h3>
<p>TIME: 06:00 PM - 09:00 PM EST</p>
<p>LOCATION: <a href="https://www.google.com/maps/place/Max+Lager's+Wood-Fired+Grill+%26+Brewery/@33.7633384,-84.3869351,16z/data=!3m1!4b1!4m6!3m5!1s0x88f50479f0b45fe9:0x8c53b75958299abd!8m2!3d33.7633384!4d-84.3869351!16s%2Fm%2F01_23gr" target="_blank" rel="noopener noreferrer" class="">Max Lager's Wood-Fired Grill &amp; Brewery</a></p>
<p><a href="https://www.replicated.com/" target="_blank" rel="noopener noreferrer" class="">Replicated</a> and the <a href="https://www.cncf.io/" target="_blank" rel="noopener noreferrer" class="">CNCF</a> are throwing a Helm 4 Release Party to celebrate the release of Helm 4! Drop by for a low country boil and hang out with the Helm project maintainers for the night! See the invitation <a class="" href="https://helm.sh/fr/helm-4-release-party/">here</a>, and don't forget to save your spot – RSVP <a href="https://replicated.typeform.com/helmparty" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="thursday-november-13-2025">Thursday November 13, 2025<a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#thursday-november-13-2025" class="hash-link" aria-label="Lien direct vers Thursday November 13, 2025" title="Lien direct vers Thursday November 13, 2025" translate="no">​</a></h2>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="mission-abort-intercepting-dangerous-deletes-before-helm-hits-apply"><a href="https://sched.co/27FeJ" target="_blank" rel="noopener noreferrer" class="">Mission Abort: Intercepting Dangerous Deletes Before Helm Hits Apply</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-25#mission-abort-intercepting-dangerous-deletes-before-helm-hits-apply" class="hash-link" aria-label="Lien direct vers mission-abort-intercepting-dangerous-deletes-before-helm-hits-apply" title="Lien direct vers mission-abort-intercepting-dangerous-deletes-before-helm-hits-apply" translate="no">​</a></h3>
<p>TIME: 01:45 PM - 02:15 PM ET</p>
<p>LOCATION: Building B | Level 5 | Thomas Murphy Ballroom 4</p>
<p>SPEAKERS: <a href="https://kccncna2025.sched.com/speaker/godhanipayal" target="_blank" rel="noopener noreferrer" class="">Payal Godhani</a></p>
<p>What if your next Helm deployment silently deletes a LoadBalancer, a Gateway, or an entire namespace? We’ve lived that nightmare—multiple times. In this talk, we’ll share how we turned painful Sev1 outages into a resilient, guardrail-first deployment strategy. By integrating Helm Diff and Argo CD Diff, we built a system that scans every deployment for destructive changes—like the removal of LoadBalancers, KGateways, Services, PVCs, or Namespaces—and blocks them unless explicitly approved. This second-layer approval acts as a safety circuit for your release pipelines. No guesswork. No blind deploys. Just real-time visibility into what’s about to break—before it actually does. Whether you’re managing a single cluster or an entire fleet, this talk will show you how to stop fearing Helm and start trusting it again. Because resilience isn’t about avoiding failure—it’s about learning, adapting, and building guardrails that protect everyone.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm Turns 10]]></title>
            <link>https://helm.sh/fr/blog/helm-turns-ten</link>
            <guid>https://helm.sh/fr/blog/helm-turns-ten</guid>
            <pubDate>Sun, 19 Oct 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[Ten years ago, in a hackathon shortly after the release of Kubernetes 1.1.0, Helm was born.]]></description>
            <content:encoded><![CDATA[<p>Ten years ago, in a hackathon shortly after the release of Kubernetes 1.1.0, Helm was born.</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">commit ecad6e2ef9523a0218864ec552bbfc724f0b9d3d</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Author: Matt Butcher &lt;mbutcher@engineyard.com&gt;</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Date:   Mon Oct 19 17:43:26 2015 -0600</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    initial add</span><br></span></code></pre></div></div>
<p><a href="https://github.com/helm/helm-classic/commit/ecad6e2ef9523a0218864ec552bbfc724f0b9d3d" target="_blank" rel="noopener noreferrer" class="">The first commit</a> can be found on the helm-classic Git repository where the codebase for Helm v1 is located. This is the original Helm, before it merged with Deployment Manager and was folded into the Kubernetes project.</p>
<p>This commit was just the beginning. Helm would be shown off at the first KubeCon, just a few weeks later. From there Helm development would take off and a community of developers and charts would follow.</p>
<p>Happy 10th Birthday, Helm!</p>
<p><img decoding="async" loading="lazy" alt="Happy 10th Birthday Helm" src="https://helm.sh/fr/assets/images/happy-10th-b863841c985a524df66af7f2be6ab91e.png" width="960" height="1088" class="img_ev3q"></p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Path To Releasing Helm v4]]></title>
            <link>https://helm.sh/fr/blog/path-to-helm-v4</link>
            <guid>https://helm.sh/fr/blog/path-to-helm-v4</guid>
            <pubDate>Tue, 09 Sep 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[The first Alpha for Helm v4 has been released. Now that Helm v4 development is in the home stretch, we wanted to share the details on what's happening and how the broader community can get involved.]]></description>
            <content:encoded><![CDATA[<p>The <a href="https://github.com/helm/helm/releases/tag/v4.0.0-alpha.1" target="_blank" rel="noopener noreferrer" class="">first Alpha for Helm v4</a> has been released. Now that Helm v4 development is in the home stretch, we wanted to share the details on what's happening and how the broader community can get involved.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="alpha-period">Alpha Period<a href="https://helm.sh/fr/blog/path-to-helm-v4#alpha-period" class="hash-link" aria-label="Lien direct vers Alpha Period" title="Lien direct vers Alpha Period" translate="no">​</a></h2>
<p>With the start of September, there is a freeze on new major features for Helm v4. This begins the Alpha phase, where API breaking changes will still happen, but the focus turns to stability and making sure the existing changes work as expected.</p>
<p>If you're a Helm user, during this period you can test out the current capabilities and provide feedback where things aren't working as expected. Just remember, this is alpha quality software and changes are still occurring.</p>
<p>For Helm SDK users, now is a good time to look at the API to see if there are any concerns with the design changes along with any impacts to your efforts.</p>
<p>The Alpha period runs through the month of September.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="beta-period">Beta Period<a href="https://helm.sh/fr/blog/path-to-helm-v4#beta-period" class="hash-link" aria-label="Lien direct vers Beta Period" title="Lien direct vers Beta Period" translate="no">​</a></h2>
<p>The beta period starts in October. At this point the focus is on stability in preparation for release. API breaking changes should be complete and the focus transitions to fixing any bugs to ensure there is a stable release.</p>
<p>Testers should file bugs as they encounter any issues.</p>
<p>Per <a class="" href="https://helm.sh/fr/community/release_policy#major-releases">release schedule policy</a>, once the first beta version is available, the final 4.0.0 release date will be chosen and announced.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="release-candidates">Release Candidates<a href="https://helm.sh/fr/blog/path-to-helm-v4#release-candidates" class="hash-link" aria-label="Lien direct vers Release Candidates" title="Lien direct vers Release Candidates" translate="no">​</a></h2>
<p>At the end of October, the first release candidate will be created. This represents what we think will be released as Helm v4. If there are any major issues, they will be fixed and a new release candidate will be made.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="-release-">🎉 Release 🎉<a href="https://helm.sh/fr/blog/path-to-helm-v4#-release-" class="hash-link" aria-label="Lien direct vers 🎉 Release 🎉" title="Lien direct vers 🎉 Release 🎉" translate="no">​</a></h2>
<p>The release is planned for KubeCon + CloudNativeCon North America 2025. in mid November, which is 6 years after the release of Helm v3 and 10 years after the creation of Helm. More details on the release will come.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Debian/Ubuntu Helm Apt Repository Move]]></title>
            <link>https://helm.sh/fr/blog/debian-helm-repository-move</link>
            <guid>https://helm.sh/fr/blog/debian-helm-repository-move</guid>
            <pubDate>Tue, 19 Aug 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[If you are installing helm with Apt, be aware that the Debian/Ubuntu Helm Apt repository is moving.]]></description>
            <content:encoded><![CDATA[<p>If you are installing helm with Apt, be aware that the Debian/Ubuntu Helm Apt repository is moving.
Previously the repository was hosted at <a href="https://helm.baltorepo.com/" target="_blank" rel="noopener noreferrer" class="">Balto</a> and
now it will be hosted at <a href="https://buildkite.com/" target="_blank" rel="noopener noreferrer" class="">Buildkite</a>.</p>
<p>Update your APT key and references to the repository using the <a href="https://helm.sh/docs/intro/install/#from-apt-debianubuntu" target="_blank" rel="noopener noreferrer" class="">new installation instructions</a>.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm @ KubeCon + CloudNativeCon EU '25]]></title>
            <link>https://helm.sh/fr/blog/helm-at-kubecon-eu-25</link>
            <guid>https://helm.sh/fr/blog/helm-at-kubecon-eu-25</guid>
            <pubDate>Mon, 31 Mar 2025 00:00:00 GMT</pubDate>
            <description><![CDATA[It's that time of the year again – the Helm team is headed to KubeCon + CloudNativeCon EU '25 in London, UK this week from April 1 - 4! Helm 4 is in the works for later this year so be sure to join the conversation with our maintainers during our talk sessions and at our Helm booth in the Project Pavilion! See below for more details on all Helm-related activities throughout the week.]]></description>
            <content:encoded><![CDATA[<p>It's that time of the year again – the Helm team is headed to KubeCon + CloudNativeCon EU '25 in London, UK this week from April 1 - 4! Helm 4 is in the works for later this year so be sure to join the conversation with our maintainers during our talk sessions and at our Helm booth in the Project Pavilion! See below for more details on all Helm-related activities throughout the week.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="contribfest-expanding-the-helm-ecosystem-with-helm-4">Contribfest: <a href="https://sched.co/1tcyE" target="_blank" rel="noopener noreferrer" class="">Expanding the Helm Ecosystem With Helm 4</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-eu-25#contribfest-expanding-the-helm-ecosystem-with-helm-4" class="hash-link" aria-label="Lien direct vers contribfest-expanding-the-helm-ecosystem-with-helm-4" title="Lien direct vers contribfest-expanding-the-helm-ecosystem-with-helm-4" translate="no">​</a></h2>
<p>DATE: Wednesday April 2</p>
<p>TIME: 16:15 - 17:30 BST</p>
<p>LOCATION: Level 3 | ICC Capital Suite 17</p>
<p>Are you passionate about Helm and looking for ways to contribute? Join Helm maintainers at this ContribFest session to help shape the future of the project and its ecosystem! This session focuses on three exciting initiatives:</p>
<ul>
<li class="">Exploring the Helm Ecosystem</li>
<li class="">Building a Triage Team</li>
<li class="">Diving into Helm 4</li>
</ul>
<p>Don't miss this session with <a href="https://bsky.app/profile/r6by.bsky.social" target="_blank" rel="noopener noreferrer" class="">Scott</a>, <a href="https://bsky.app/profile/sirchia.cloud" target="_blank" rel="noopener noreferrer" class="">Robert</a>, and <a href="https://bsky.app/profile/ingydotnet.bsky.social" target="_blank" rel="noopener noreferrer" class="">Ingy</a> for your chance at contributing to Helm 4 efforts! For more details on the Contribfest session, check the <a href="https://sched.co/1tcyE" target="_blank" rel="noopener noreferrer" class="">session page</a> for the latest updates.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-maintainer-track-talk-helm-4-you">Helm Maintainer Track Talk: <a href="https://sched.co/1td0b" target="_blank" rel="noopener noreferrer" class="">Helm 4 You</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-eu-25#helm-maintainer-track-talk-helm-4-you" class="hash-link" aria-label="Lien direct vers helm-maintainer-track-talk-helm-4-you" title="Lien direct vers helm-maintainer-track-talk-helm-4-you" translate="no">​</a></h2>
<p>DATE: Thursday April 3</p>
<p>TIME: 16:45 - 17:15 BST</p>
<p>LOCATION: Level 3 | ICC Capital Suite 10-12</p>
<p>Join Helm maintainers <a href="https://bsky.app/profile/mattfarina.com" target="_blank" rel="noopener noreferrer" class="">Matt Farina</a> and <a href="https://bsky.app/profile/andyserver.com" target="_blank" rel="noopener noreferrer" class="">Andrew Block</a> as they provide an update on the next major version of Helm, the timelines, and the features being evaluated. They will also share how the community has been inspirational in helping make Helm 4 a reality. Since Helm continues to be a crucial component in the workflows of users and enterprises worldwide, a new version of Helm is only possible thanks to the continued collaboration from the Cloud Native community.</p>
<p>Full details on the talk can be found on the <a href="https://sched.co/1td0b" target="_blank" rel="noopener noreferrer" class="">session page</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-booth-in-project-pavilion">Helm Booth in Project Pavilion<a href="https://helm.sh/fr/blog/helm-at-kubecon-eu-25#helm-booth-in-project-pavilion" class="hash-link" aria-label="Lien direct vers Helm Booth in Project Pavilion" title="Lien direct vers Helm Booth in Project Pavilion" translate="no">​</a></h2>
<p>WED April 2 @ 15:30 – 19:45 BST</p>
<p>THUR April 3 @ 14:00 – 17:00 BST</p>
<p>FRI April 4 @ 12:30 – 14:00 BST</p>
<p>LOCATION: 2B, near the sticker wall + back side of Backstage</p>
<p>Our maintainers and contributors will be staffing the Helm project booth during the second half of each day. Let us know how you're using Helm, what questions you have, and learn more about what's coming in Helm 4. We'll have Helm stickers and <em>custom Helm tea towels</em> to help us all remember our time in the UK!</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-sessions-from-the-community">Helm Sessions from the Community<a href="https://helm.sh/fr/blog/helm-at-kubecon-eu-25#helm-sessions-from-the-community" class="hash-link" aria-label="Lien direct vers Helm Sessions from the Community" title="Lien direct vers Helm Sessions from the Community" translate="no">​</a></h2>
<p>Aside from sessions with our Helm maintainers, there are several talks from the cloud native ecosystem that touch on Helm – be sure to check these out as well ~</p>
<ul>
<li class=""><a href="https://sched.co/1tcvo" target="_blank" rel="noopener noreferrer" class="">Project Lightning Talk: Kubeflow Helm Chart - Krzysztof Romanowski, Maintainer</a> // Tuesday April 1, 2025 @ 12:34 - 12:39 BST // Platinum Suite | Level 3</li>
<li class=""><a href="https://sched.co/1tcws" target="_blank" rel="noopener noreferrer" class="">Project Lightning Talk: Stir to Combine: Creating Porter Mixins - Sarah Christoff, Maintainer</a> // Tuesday April 1, 2025 @ 16:07 - 16:12 BST // Platinum Suite | Level 3</li>
<li class=""><a href="https://sched.co/1txDf" target="_blank" rel="noopener noreferrer" class="">Poster Session: Helmless (PS 06): Fast Serverless Deployments Without the Overhead of Kubernetes and Terraform - Michael Reichenbach, 1KOMMA5°</a> // Wednesday April 2, 2025 @ 13:30 - 14:30 BST //  Level 1 | Hall Entrance N8-N9 | Poster Pavilion</li>
<li class=""><a href="https://sched.co/1tcyZ" target="_blank" rel="noopener noreferrer" class="">Jaeger V2: OpenTelemetry at the Core of Modern Distributed Tracing - Jonah Kowall, Paessler</a> // Wednesday April 2, 2025 @ 17:00 - 17:30 BST // Level 3 | ICC Capital Suite 10-12</li>
<li class=""><a href="https://sched.co/1txEg" target="_blank" rel="noopener noreferrer" class="">Into the Shopfloor: Moving Manufacturing Execution Systems To Kubernetes - Manuel Peuster &amp; Andrei Traian Cucuruzac, Bosch Connected Industry</a> // Friday April 4, 2025 @ 11:45 - 12:15 BST // Level 1 | Hall Entrance N10 | Room E</li>
</ul>
<p>See everyone this week!</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Experience a Helm Release: Live at KubeCon + CloudNativeCon North America 2024!]]></title>
            <link>https://helm.sh/fr/blog/experience-helm-release-kubecon-na-24</link>
            <guid>https://helm.sh/fr/blog/experience-helm-release-kubecon-na-24</guid>
            <pubDate>Fri, 08 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Have you ever wondered what it takes to perform a software release of one of the most popular tools in the Kubernetes community? While you may envision a series of complex steps or maybe even some black magic (some of which may be true), the release process is much more organized and streamlined than you may have envisioned. However, until you see it for yourself firsthand, these types of questions will continue to go unfulfilled. Seeing it really is believing it!]]></description>
            <content:encoded><![CDATA[<p>Have you ever wondered what it takes to perform a software release of one of the most popular tools in the Kubernetes community? While you may envision a series of complex steps or maybe even some black magic (some of which may be true), the release process is much more organized and streamlined than you may have envisioned. However, until you see it for yourself firsthand, these types of questions will continue to go unfulfilled. Seeing it really is believing it!</p>
<p>Join maintainers and members of the Helm community at KubeCon + CloudNativeCon North America at the Demo Theater during the booth crawl on Wednesday November 13 at 7pm MST as we review the process involved to perform a release of the latest version of Helm so that it can be made available to the entire cloud native community. Along the way, you will learn about the associated activities, individuals, and processes involved with taking source code and transforming it into a consumable artifact for all across a myriad of supported runtimes and platforms.</p>
<p>Whether you are a Helm aficionado or just have an interest in release engineering, this is a session that you certainly want to circle on your agendas!</p>
<p>Not able to make it to KubeCon + CloudNativeCon North America? Don’t fret! The session will be recorded and made available at a later date.</p>
<p>This release session is just one of several Helm related events taking place at KubeCon + CloudNativeCon North America 2024. A full overview can be found <a class="" href="https://helm.sh/fr/blog/kubecon-slc">here</a>.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm at KubeCon/CloudNativeCon SLC]]></title>
            <link>https://helm.sh/fr/blog/kubecon-slc</link>
            <guid>https://helm.sh/fr/blog/kubecon-slc</guid>
            <pubDate>Thu, 07 Nov 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[KubeCon / CloudNativeCon Logo]]></description>
            <content:encoded><![CDATA[<p><img decoding="async" loading="lazy" alt="KubeCon / CloudNativeCon Logo" src="https://helm.sh/fr/assets/images/kubecon-3105cf2ba42bc5d717dcbe6f1c26dd26.png" width="2400" height="500" class="img_ev3q"></p>
<p>Helm is going to be at KubeCon / CloudNativeCon North America in Salt Lake City. There will be something happening each day of the main conference, including:</p>
<ul>
<li class="">Wednesday:
<ul>
<li class="">At a booth in the project pavilion from 3:15pm - 8pm.</li>
<li class="">At 7pm MST we are planning to cut a release, live.</li>
</ul>
</li>
<li class="">Thursday:
<ul>
<li class="">At a project pavilion booth from 1:45pm - 5pm.</li>
<li class="">Session: <a href="https://kccncna2024.sched.com/event/1howt" target="_blank" rel="noopener noreferrer" class="">Contribfest: Helm 4: The Next Generation of the Kubernetes Package Manager</a></li>
<li class="">Session: <a href="https://kccncna2024.sched.com/event/1hoxU" target="_blank" rel="noopener noreferrer" class="">The Path to Helm 4</a></li>
</ul>
</li>
<li class="">Friday:
<ul>
<li class="">12:30pm - 2:30pm at the project pavilion</li>
</ul>
</li>
</ul>
<p>If you want to talk with a maintainer to learn about Helm or just give feedback, the project pavilion is the perfect place to do that. If you want to learn about Helm v4 the session "The Path to Helm 4" is going to give you an overview. If you want to make your first contributions to Helm, the Contribfest session is a place to get started.</p>
<p>If you're going to be in Salt Lake City, we hope to see you there.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm 2to3 is Now Unsupported]]></title>
            <link>https://helm.sh/fr/blog/helm2to3-becomes-unsupported</link>
            <guid>https://helm.sh/fr/blog/helm2to3-becomes-unsupported</guid>
            <pubDate>Tue, 16 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Over four years ago, we introduced Helm 3, a major evolution in Helm's development. And we announced at that time that Helm 2 would receive patches and security updates for a year. We also provided a migration path to Helm 3 from Helm 2 and a tool helm-2to3 to automate migration.]]></description>
            <content:encoded><![CDATA[<p>Over four years ago, we <a href="https://helm.sh/blog/helm-3-released/" target="_blank" rel="noopener noreferrer" class="">introduced Helm 3</a>, a major evolution in Helm's development. And we <a href="https://helm.sh/blog/2019-10-22-helm-2150-released/" target="_blank" rel="noopener noreferrer" class="">announced</a> at that time that Helm 2 would receive patches and security updates for a year. We also provided a <a href="https://helm.sh/docs/topics/v2_v3_migration/" target="_blank" rel="noopener noreferrer" class="">migration path to Helm 3 from Helm 2</a> and a tool <a href="https://github.com/helm/helm-2to3" target="_blank" rel="noopener noreferrer" class="">helm-2to3</a> to automate migration.</p>
<p>One year later, <a href="https://helm.sh/blog/helm-2-becomes-unsupported/" target="_blank" rel="noopener noreferrer" class="">Helm 2 became unsupported</a>.</p>
<p>Here we are, over 3 years since Helm 2 became unsupported. It would be expected that all users should be migrated to Helm 3 by this time. Following consensus among the Helm org maintainers, we are announcing today the official end of support for the <a href="https://github.com/helm/helm-2to3" target="_blank" rel="noopener noreferrer" class="">helm-2to3</a> tool.</p>
<p>In practice, this means that <strong>Helm 2to3</strong> will receive no more updates (not even security patches).</p>
<p>We strongly discourage the use of the <a href="https://github.com/helm/helm-2to3" target="_blank" rel="noopener noreferrer" class="">helm-2to3</a> tool moving forward, as it will be receiving no future security updates or patches. We hope that it has been a useful tool to aid in the migration from Helm 2 to 3.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Road to Helm 4]]></title>
            <link>https://helm.sh/fr/blog/the-road-to-helm-4</link>
            <guid>https://helm.sh/fr/blog/the-road-to-helm-4</guid>
            <pubDate>Wed, 10 Jul 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[We have been saying it for a while now – Helm is "stable software". That should not come as a surprise to anyone familiar with Kubernetes and the surrounding ecosystem as many within the Kubernetes community consider Helm to be the de-facto package manager. The use of Helm is far reaching: from open source community projects, to startups, to Fortune 500 organizations. Helm has become an essential component of build and deployment workflows that handle mission critical workloads.]]></description>
            <content:encoded><![CDATA[<p>We have been saying it for a while now – Helm is "stable software". That should not come as a surprise to anyone familiar with Kubernetes and the surrounding ecosystem as many within the Kubernetes community consider Helm to be the de-facto package manager. The use of Helm is far reaching: from open source community projects, to startups, to Fortune 500 organizations. Helm has become an essential component of build and deployment workflows that handle mission critical workloads.</p>
<p>One of the primary tenets that the Helm project takes very seriously is its policy related to <a href="https://github.com/helm/helm/blob/main/CONTRIBUTING.md#semantic-versioning" target="_blank" rel="noopener noreferrer" class="">backwards compatibility</a>. This strict adherence towards limiting impacts that could adversely affect end consumers is one of the primary reasons why Helm has become such a stable project that the community can count on. Unfortunately, Helm’s backwards compatibility policy does impose limitations to the types of changes or features that can be introduced. It is important to note that Helm is not just a CLI tool, but it is also an SDK. The Helm SDK supports an entire ecosystem of solutions that have been developed to manage Helm content. Any breaking change could negatively impact one of those integrations.</p>
<p>However, even with strong adherence to the types of changes that the project can make, Helm has been able to introduce new features over time since Helm 3 was released back in 2019. The first such feature, included in Helm 3.1.0, was <a href="https://helm.sh/docs/topics/advanced" target="_blank" rel="noopener noreferrer" class="">post rendering functionality</a>, which allows end users to customize rendered manifests before being installed or upgraded by Helm. Allowing a post rendering step in the Helm release lifecycle was a game changer for both end users and chart maintainers alike. Users no longer have to patch, fork, or manually render chart templates locally to make their custom adjustments. As a result, chart maintainers no longer need to make their charts overly complicated to fit every possible use case under the sun. Since then, minor (new feature) versions of Helm have been released on a quarterly schedule, and continue to bring ever more functionality to end users. Another important new feature introduced during Helm 3 was the support for <a href="https://helm.sh/docs/topics/registries/#using-an-oci-based-registry" target="_blank" rel="noopener noreferrer" class="">OCI registries as a distribution method</a> for charts. Functionality for this experimental feature shipped with Helm 3.0.0 and became a fully functional feature in 3.8.0. Users of the CLI as well as the SDK could now confidently store charts using the same tried and true method as they store the container images. And, because charts stored in container registries follow OCI standards, Helm users and chart maintainers can use many of the same tools made for container images – which continue to be improved every day – to accomplish those tasks with their Helm charts too. Helm helped bring greater standardization to the wider Cloud Native ecosystem as it was one of the first projects that made use of OCI as a storage mechanism, which has helped popularize the use of OCI artifacts by other projects. A complete list of new Helm features can be found in the release notes of each minor version <a href="https://github.com/helm/helm/releases" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<p>The success of Helm is partially related to the architectural changes that were introduced in Helm 3. Gone are the days of the server side component, Tiller (which limited the use of Helm within multi-tenant), and security conscious environments. Countless other enhancements were also introduced that set Helm version 3 apart from its predecessors.</p>
<p>Businessman Marcus Lemonis said it best: “If you don’t evolve, you will die”. This sentiment is very much a fact, especially in the technology industry where new tools, approaches, and architectures are introduced with each passing day. It has been 5 years since the release of Helm version 3 and it has become clear, thanks to input from the community, that more impactful changes need to be made to the project so that Helm can continue to serve as an efficient package manager for Kubernetes. That being said, the Helm community is excited to announce the initial kickoff to pave a path toward Helm version 4.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-4-contribfest-at-kubecon-eu-2024">Helm 4 ContribFest at KubeCon EU 2024<a href="https://helm.sh/fr/blog/the-road-to-helm-4#helm-4-contribfest-at-kubecon-eu-2024" class="hash-link" aria-label="Lien direct vers Helm 4 ContribFest at KubeCon EU 2024" title="Lien direct vers Helm 4 ContribFest at KubeCon EU 2024" translate="no">​</a></h2>
<p>It’s often asked: “Is Helm Popular?”. Based on responses from attendees at events, like KubeCon, who fill sessions relating to the project to maximum capacity, the answer continues to remain a resounding “YES”. At the 2024 KubeCon EU in Paris, the first steps towards soliciting feedback from the Open Source community regarding the next version of Helm occurred during the ContribFest in a session titled, “Building the Helm 4 Highway”. Clearly, there is an interest in evolving the capabilities that are part of the Helm project. Not only was the session full, but a number of compelling ideas were shared including adding support for additional templating languages other than golang, expanding the use of plugins, and increasing the level of support surrounding the secure software supply chain, such as additional methods of signing charts. The full list of ideas and topics from the ContribFest session can be found <a href="https://docs.google.com/document/d/1WJ3K96fJeldKHoKhejWHDvCOTddEvY-RCtQBUaZ57FM/edit#heading=h.2xqu5w422ice" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="getting-involved">Getting Involved<a href="https://helm.sh/fr/blog/the-road-to-helm-4#getting-involved" class="hash-link" aria-label="Lien direct vers Getting Involved" title="Lien direct vers Getting Involved" translate="no">​</a></h2>
<p>For those interested in playing a role in the next version of Helm (we’d love to have you), there are several different ways to participate!</p>
<ol>
<li class="">Join the weekly Helm 4 Roadmap meeting Fridays at 19:00 UTC where members of the community share ideas, develop solutions, and collaborate surrounding the next version of Helm.
<ol>
<li class=""><a href="https://zoom.us/j/696660622?pwd=MGsraXZ1UkVlTkJLc1B5U05KN053QT09" target="_blank" rel="noopener noreferrer" class="">Zoom Meeting</a>.</li>
</ol>
</li>
<li class="">Participate in discussions in the <a href="https://kubernetes.slack.com/archives/C51E88VDG" target="_blank" rel="noopener noreferrer" class="">#helm-dev</a> channel on the Kubernetes Slack, where members of the Helm community collaborate on Helm development efforts, including those focused on Helm version 4.</li>
<li class="">Submit an <a href="https://github.com/helm/helm/issues" target="_blank" rel="noopener noreferrer" class="">issue</a> within the Helm <a href="https://github.com/helm/helm" target="_blank" rel="noopener noreferrer" class="">GitHub repository</a>.</li>
<li class="">Follow <a href="https://x.com/HelmPack" target="_blank" rel="noopener noreferrer" class="">@HelmPack</a> on Twitter/X for project updates.</li>
</ol>
<p>Helm helped define how to package and manage software for Kubernetes. But let’s not stop there - as we update and develop new features and capabilities in Helm 4, Helm will continue to be a tool that the community can continue to leverage confidently to find, share, and run software on Kubernetes.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Response To CVE-2019-25210]]></title>
            <link>https://helm.sh/fr/blog/response-CVE-2019-25210</link>
            <guid>https://helm.sh/fr/blog/response-CVE-2019-25210</guid>
            <pubDate>Thu, 14 Mar 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[CVE-2019-25210 was recently filed against the Helm project. This action was completed without engaging the Helm project and working through the documented security process and team. The Helm project was given no notice before the disclosure was released which resulted in the inability to provide an appropriate statement beforehand. This post serves as the response from the Helm project.]]></description>
            <content:encoded><![CDATA[<p><a href="https://nvd.nist.gov/vuln/detail/CVE-2019-25210" target="_blank" rel="noopener noreferrer" class="">CVE-2019-25210</a> was recently filed against the Helm project. This action was completed without engaging the Helm project and working through the <a href="https://github.com/helm/community/blob/main/SECURITY.md" target="_blank" rel="noopener noreferrer" class="">documented security process and team</a>. The Helm project was given no notice before the disclosure was released which resulted in the inability to provide an appropriate statement beforehand. This post serves as the response from the Helm project.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="not-a-vulnerability-in-helm">Not A Vulnerability In Helm<a href="https://helm.sh/fr/blog/response-CVE-2019-25210#not-a-vulnerability-in-helm" class="hash-link" aria-label="Lien direct vers Not A Vulnerability In Helm" title="Lien direct vers Not A Vulnerability In Helm" translate="no">​</a></h2>
<p>The Helm project rejects this disclosure’s assertion of a vulnerability within Helm.</p>
<p>The <a href="https://github.com/advisories/GHSA-jw44-4f3j-q396" target="_blank" rel="noopener noreferrer" class="">advisory listing on GitHub</a> lists the categorization as <a href="https://cwe.mitre.org/data/definitions/200.html" target="_blank" rel="noopener noreferrer" class="">CWE-200</a>, which is for “Exposure of Sensitive Information to an Unauthorized Actor”. The <a href="https://cwe.mitre.org/data/definitions/200.html" target="_blank" rel="noopener noreferrer" class="">documentation for this CWE</a> notes that its use is discouraged due to frequent misuse. The description aligns with the implementation within Helm in this situation.</p>
<p>The <code>--dry-run</code> flag, when used with <code>helm install</code> and <code>helm upgrade</code>, is designed to send all of the generated chart manifests to standard out that would normally be sent to the Kubernetes API. This is useful for multiple use cases, such as debugging the development of a chart (i.e. package). These manifests are generated from the chart logic. Kubernetes <em>Secrets</em> have been designed by the Kubernetes project to be manifests, like any other resource. When generating manifests, including <em>Secrets</em>, there are times they need to be debugged in order to ensure the generated structure is correct.</p>
<p>This functionality, used in many situations including local development environments, is not an issue. The output is not exposed to an unauthorized actor. In fact, the output is needed. If this functionality is used in an environment that captures the output for unauthorized actors, such as in a CI system, then the vulnerability is in the <strong><em>use of</em></strong> a tool that outputs this information, rather than in the tool itself.</p>
<p>Consider a simple alternative situation. There is a Kubernetes manifest file containing both secret and non-secret information. <code>kubectl</code>, the Kubernetes CLI, is used in an attempt to apply the manifest to a cluster and the attempt fails. So, the <code>cat</code> utility is used to display the contents of the file containing the Secret. Is it the vulnerability in <code>cat</code> for displaying the information or in the CI setup for using <code>cat</code> to display secret information? The vulnerability is in the use of the tool rather than the tool itself.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-changes">Helm Changes<a href="https://helm.sh/fr/blog/response-CVE-2019-25210#helm-changes" class="hash-link" aria-label="Lien direct vers Helm Changes" title="Lien direct vers Helm Changes" translate="no">​</a></h2>
<p>To provide greater clarity, the Helm maintainers have made two changes.</p>
<ol>
<li class=""><a href="https://github.com/helm/helm/pull/12859" target="_blank" rel="noopener noreferrer" class="">Documentation has been updated to make the possible exposure of secret information explicit</a>.</li>
<li class=""><a href="https://github.com/helm/helm/pull/12871" target="_blank" rel="noopener noreferrer" class=""> A flag has been added</a>, which will be available in the next minor release, that will hide secret information in the dry-run output of these commands.</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-a-delay-in-response">Why A Delay In Response<a href="https://helm.sh/fr/blog/response-CVE-2019-25210#why-a-delay-in-response" class="hash-link" aria-label="Lien direct vers Why A Delay In Response" title="Lien direct vers Why A Delay In Response" translate="no">​</a></h2>
<p>When the CVE listing was released and the Helm maintainers became aware, the team went to work evaluating the potential impacts.</p>
<p>The Helm project takes security seriously. Some examples of this include:</p>
<ul>
<li class=""><a href="https://github.com/helm/community/tree/main/security-audit" target="_blank" rel="noopener noreferrer" class="">A documented security policy that enables someone to contact the security team with encrypted communications</a>.</li>
<li class=""><a href="https://github.com/helm/community/tree/main/security-audit" target="_blank" rel="noopener noreferrer" class="">Two 3rd party security audits (on versions of Helm that contained this functionality)</a>.</li>
<li class=""><a href="https://github.com/helm/community/tree/main/security-audit" target="_blank" rel="noopener noreferrer" class="">A fuzzing audit and continuous fuzzing has been set up</a>.</li>
<li class=""><a href="https://github.com/helm/community/tree/main/security-assurance-case" target="_blank" rel="noopener noreferrer" class="">Documented security assurance case</a>, which is an OpenSSF best practices requirement on the way to a silver level.</li>
<li class="">Helm releases are signed by the maintainer who produced the release.</li>
</ul>
<p>Normally, a discussion about a security issue would stay internal to the Helm project. But, this listing was public and contentious. Helm maintainers contacted security professionals from multiple organizations and sought feedback on the situation prior to publicly commenting or performing any remediation work.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="please-responsibly-contact-the-helm-security-team">Please Responsibly Contact The Helm Security Team<a href="https://helm.sh/fr/blog/response-CVE-2019-25210#please-responsibly-contact-the-helm-security-team" class="hash-link" aria-label="Lien direct vers Please Responsibly Contact The Helm Security Team" title="Lien direct vers Please Responsibly Contact The Helm Security Team" translate="no">​</a></h2>
<p>The Helm security team is responsive. In this calendar year, there have been releases to address two CVEs responsibly reported. You can learn more about reporting security issues in the <a href="https://github.com/helm/community/blob/main/SECURITY.md" target="_blank" rel="noopener noreferrer" class="">documented process</a> and participate, when necessary, to keep the Helm project and community secure.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm 3.13]]></title>
            <link>https://helm.sh/fr/blog/helm-3.13</link>
            <guid>https://helm.sh/fr/blog/helm-3.13</guid>
            <pubDate>Fri, 29 Sep 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Helm 3.13 brings some significant and useful changes for Helm users. This ranges from longtime bugs being fixed to some new features that can have an impact on performance.]]></description>
            <content:encoded><![CDATA[<p>Helm 3.13 brings some significant and useful changes for Helm users. This ranges from longtime bugs being fixed to some new features that can have an impact on performance.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="dry-run--template-can-connect-to-servers">Dry-run &amp; Template Can Connect To Servers<a href="https://helm.sh/fr/blog/helm-3.13#dry-run--template-can-connect-to-servers" class="hash-link" aria-label="Lien direct vers Dry-run &amp; Template Can Connect To Servers" title="Lien direct vers Dry-run &amp; Template Can Connect To Servers" translate="no">​</a></h2>
<p>The dry-run feature on install and upgrade, and Helm template has not been able to communicate with Kubernetes servers. This is for security and because Helm template was designed for template rendering alone.</p>
<p>With Helm 3.13, there is now an opt-in option to communicate with Kubernetes by setting <code>--dry-run=server</code>. This tells Helm to communicate with the server for gathering information but not to perform updates. This flag also works on <code>helm template</code>. If you use <code>--dry-run</code> without setting a value it works as it did before.</p>
<p>Helm SDK users will find a new property, named <code>DryRunOption</code>, that allows you to tell the SDK to communicate with the server.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="values-handling-improvements">Values Handling Improvements<a href="https://helm.sh/fr/blog/helm-3.13#values-handling-improvements" class="hash-link" aria-label="Lien direct vers Values Handling Improvements" title="Lien direct vers Values Handling Improvements" translate="no">​</a></h2>
<p>Values handling has had a number of bugs filed about it. For example, importing values was inconsistent. Some of the handling even depended on ordering. Using <code>null</code> to remove properties was inconsistent, too. It worked in some cases but not others. That's fixed in Helm 3.13.</p>
<p>The order you can expect for a value to be used is:</p>
<ol>
<li class="">User specified values (e.g CLI)</li>
<li class="">Imported values from dependencies</li>
<li class="">Parent chart values</li>
<li class="">Sub-chart values</li>
</ol>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="json-indexes">JSON Indexes<a href="https://helm.sh/fr/blog/helm-3.13#json-indexes" class="hash-link" aria-label="Lien direct vers JSON Indexes" title="Lien direct vers JSON Indexes" translate="no">​</a></h2>
<p>Helm repositories have an index in YAML containing details about the charts and versions of charts it contains. When this file grows large it can be expensive (e.g., processing time and memory) to parse. This is in part because YAML has anchors and aliases which are handy but cause more work to deal with.</p>
<p>Those <code>index.yaml</code> files can now contain JSON instead of YAML. Helm will generate them when the <code>--json</code> flag is set. The <code>index.yaml</code> file is used so the same file location can continue to be used for backwards compatibility. The structure for the data is the same. Helm going all the way back to 3.0.0 can handle parsing <code>index.yaml</code> files with JSON instead of YAML.</p>
<p>Tests were run on very large indexes to look at the perform difference. The results found that:</p>
<ul>
<li class="">Helm 3 versions before 3.13:
<ul>
<li class="">Parsed JSON in ~80% the time of parsing YAML</li>
<li class="">Used ~93% the memory parsing JSON compared to YAML</li>
</ul>
</li>
<li class="">Helm 3.13+, with special case handling to detect and handle JSON:
<ul>
<li class="">Parsed JSON in ~13% the time of parsing YAML</li>
<li class="">Used ~5% the memory parsing JSON compared to YAML</li>
</ul>
</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="get-metadata-command">Get Metadata Command<a href="https://helm.sh/fr/blog/helm-3.13#get-metadata-command" class="hash-link" aria-label="Lien direct vers Get Metadata Command" title="Lien direct vers Get Metadata Command" translate="no">​</a></h2>
<p><code>helm get</code> provides the ability to get information about a release in a cluster. It has been able to get values, notes, hooks, and the generated manifests. In addition to those it can now get information about the metadata of the chart the release is based on.</p>
<p>To illustrate this, I installed WordPress and retrieved the metadata:</p>
<div class="language-shell codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-shell codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">$ helm get metadata wp</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">NAME: wp</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">CHART: wordpress</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">VERSION: </span><span class="token number" style="color:#36acaa">17.1</span><span class="token plain">.13</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">APP_VERSION: </span><span class="token number" style="color:#36acaa">6.3</span><span class="token plain">.1</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">NAMESPACE: default</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">REVISION: </span><span class="token number" style="color:#36acaa">1</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">STATUS: deployed</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">DEPLOYED_AT: </span><span class="token number" style="color:#36acaa">2023</span><span class="token plain">-09-28T16:28:30-04:00</span><br></span></code></pre></div></div>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="and-more">And More...<a href="https://helm.sh/fr/blog/helm-3.13#and-more" class="hash-link" aria-label="Lien direct vers And More..." title="Lien direct vers And More..." translate="no">​</a></h2>
<p>These are just some of the highlights. Helm 3.13 includes even more features. You can read the details in the <a href="https://github.com/helm/helm/releases/tag/v3.13.0" target="_blank" rel="noopener noreferrer" class="">release notes</a>.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Helm OCI MediaTypes]]></title>
            <link>https://helm.sh/fr/blog/helm-oci-mediatypes</link>
            <guid>https://helm.sh/fr/blog/helm-oci-mediatypes</guid>
            <pubDate>Mon, 15 May 2023 00:00:00 GMT</pubDate>
            <description><![CDATA[Helm introduced full support for storing charts within OCI registries as a distribution method beginning in version 3.8, and while this feature has been available for some time now, there is more underneath the hood than one may realize to make this capability all possible. A number of concepts, working in unison, make it possible to store content aside from traditional container images within OCI registries. This article will explore one of these important concepts, Media Types, their purpose, and how Helm’s own set of Media Types make it possible to extend the storage of charts beyond standard chart repositories to OCI registries.]]></description>
            <content:encoded><![CDATA[<p>Helm introduced full support for storing charts within OCI registries as a distribution method beginning in version 3.8, and while this feature has been available for some time now, there is more underneath the hood than one may realize to make this capability all possible. A number of concepts, working in unison, make it possible to store content aside from traditional container images within OCI registries. This article will explore one of these important concepts, Media Types, their purpose, and how Helm’s own set of Media Types make it possible to extend the storage of charts beyond standard chart repositories to OCI registries.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="oci-artifacts">OCI Artifacts<a href="https://helm.sh/fr/blog/helm-oci-mediatypes#oci-artifacts" class="hash-link" aria-label="Lien direct vers OCI Artifacts" title="Lien direct vers OCI Artifacts" translate="no">​</a></h2>
<p>Even though the majority of content stored within OCI registries are container images, additional content types can also be stored. The <a href="https://opencontainers.org/" target="_blank" rel="noopener noreferrer" class="">Open Container Initiative (OCI)</a> defines these other assets as “Artifacts” and the ability to make use of OCI registries to store arbitrary content types has fundamentally changed how content is distributed. Instead of requiring a separate repository management tool for each type of asset, the very same registry that is already present to house container images can be reused without requiring additional software or infrastructure resources. This not only simplifies operational concerns from a hosting perspective, but provides a more uniform method of distributing content.</p>
<p>Helm has taken full advantage of the benefits of storing charts as OCI artifacts as it not only eliminates the complexity of managing a traditional chart repository, but simplifies the amount of resources that need to be maintained. When using a chart repository as a distribution and hosting solution, multiple assets need to be maintained:</p>
<ul>
<li class="">The packaged chart</li>
<li class="">An optional provenance file</li>
<li class="">A repository index file</li>
</ul>
<p>Producing a Helm chart that is stored as an OCI artifact results in an asset with all of the necessary content packaged as a single atomic unit. The structure of the OCI artifact consists of the following three (3) key resources:</p>
<ul>
<li class="">An OCI Image Config containing the contents of the Chart.yaml file</li>
<li class="">The packaged chart within an Image Layer</li>
<li class="">The provenance file (when included) as an Image Layer</li>
</ul>
<p>The composition of an OCI Helm Chart and the relationship of each of the aforementioned resources can be seen by inspecting the associated OCI Image Manifest. An example is displayed below:</p>
<div class="language-json codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-json codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"schemaVersion"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">2</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"config"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token property" style="color:#36acaa">"mediaType"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"application/vnd.cncf.helm.config.v1+json"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token property" style="color:#36acaa">"digest"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"sha256:8ec7c0f2f6860037c19b54c3cfbab48d9b4b21b485a93d87b64690fdb68c2111"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token property" style="color:#36acaa">"size"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">117</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token property" style="color:#36acaa">"layers"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">[</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"mediaType"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"application/vnd.cncf.helm.chart.content.v1.tar+gzip"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"digest"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"sha256:1b251d38cfe948dfc0a5745b7af5ca574ecb61e52aed10b19039db39af6e1617"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"size"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">2487</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">}</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"mediaType"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"application/vnd.cncf.helm.chart.provenance.v1.prov"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"digest"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"sha256:3e207b409db364b595ba862cdc12be96dcdad8e36c59a03b7b3b61c946a5741a"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">      </span><span class="token property" style="color:#36acaa">"size"</span><span class="token operator" style="color:#393A34">:</span><span class="token plain"> </span><span class="token number" style="color:#36acaa">643</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">    </span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">  </span><span class="token punctuation" style="color:#393A34">]</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><br></span></code></pre></div></div>
<p>This cross-section illustrates not only the components of an OCI based Helm Chart, but OCI based content in general. Each resource, whether it be a layer or a Config Manifest contain the same sets of properties within the Image Manifest.</p>
<ul>
<li class="">Size – Content size</li>
<li class="">Digest – Content addressable reference signifying the algorithm and hash used</li>
<li class="">Media Type – Media Type of the referenced content</li>
</ul>
<p>The Media Type property is arguably the most significant property given the purpose of this discussion. Now that we see where they are referenced within OCI Artifacts, let’s review Media Types in further detail.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="media-types-and-their-significance">Media Types and Their Significance<a href="https://helm.sh/fr/blog/helm-oci-mediatypes#media-types-and-their-significance" class="hash-link" aria-label="Lien direct vers Media Types and Their Significance" title="Lien direct vers Media Types and Their Significance" translate="no">​</a></h2>
<p>Media Types, previously known as MIME (Multipurpose Internet Mail Extensions) Types have been around since the early days of the World Wide Web era as they identify file formats and content transmitted through the internet. Their structure consists of two concise sections separated by a slash (/): types and subtypes. Only a limited number of types are defined (10 in total) as they represent a broad use of the type itself. Subtypes are much more diverse and they are organized into a tree structure to enable a hierarchy of related types.</p>
<p>A common Media Type that anyone who has experience with RESTful based communication is familiar with is <code>application/json</code> as it is used to indicate that the content being transmitted is in JSON format. By indicating a Media Type whenever content is being transferred, the format and its representation is understood by both producers and consumers.</p>
<p>The OCI Image Specification contains several Media Types that represent the various structural elements of an image. These include:</p>
<ul>
<li class=""><code>application/vnd.oci.image.index.v1+json</code> - Index Image</li>
<li class=""><code>application/vnd.oci.image.manifest.v1+json</code> - Image Manifest</li>
<li class=""><code>application/vnd.oci.image.layer.v1.tar+gzip</code> - gzip compressed Layer</li>
</ul>
<p>These provide a concrete example to aid in understanding the structural composition of a Media Type. Each of these fall within the <code>application</code> type as they are utilized by specific applications. The subtree here can be broken down into the following components:</p>
<ul>
<li class=""><code>vnd</code> - The vendor tree which are associated with specific products</li>
<li class=""><code>oci</code> - The organization or company responsible</li>
<li class=""><code>image</code> - A short name for the type</li>
<li class=""><code>index/manifest/layer</code> - an optional subcomponent of the type</li>
<li class=""><code>v1</code> - enables the versioning of the schema</li>
<li class=""><code>json/tar+gzip</code> - Optional format signifier</li>
</ul>
<p>A more detailed description of the composition of a Media Type can be found <a href="https://github.com/opencontainers/artifacts/blob/main/artifact-authors.md#defining-a-unique-artifact-type" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-media-types">Helm Media Types<a href="https://helm.sh/fr/blog/helm-oci-mediatypes#helm-media-types" class="hash-link" aria-label="Lien direct vers Helm Media Types" title="Lien direct vers Helm Media Types" translate="no">​</a></h2>
<p>The Helm community has worked with the IANA to register three new Media Types representing each of the components comprising an OCI based Helm Chart.</p>
<ul>
<li class=""><a href="https://www.iana.org/assignments/media-types/application/vnd.cncf.helm.config.v1+json" target="_blank" rel="noopener noreferrer" class="">application/vnd.cncf.helm.config.v1+json</a></li>
<li class=""><a href="https://www.iana.org/assignments/media-types/application/vnd.cncf.helm.chart.content.v1.tar+gzip" target="_blank" rel="noopener noreferrer" class="">application/vnd.cncf.helm.chart.content.v1.tar+gzip</a></li>
<li class=""><a href="https://www.iana.org/assignments/media-types/application/vnd.cncf.helm.chart.provenance.v1.prov" target="_blank" rel="noopener noreferrer" class="">application/vnd.cncf.helm.chart.provenance.v1.prov</a></li>
</ul>
<p>Similar to the OCI Media Types shown in the prior section, the Helm Media Types are also located within the vendor tree and use the abbreviation for the Cloud Native Computing Foundation (cncf) as the responsible organization. The remainder of the Media Type subtree is fairly self explanatory as it provides additional distinction to the type of content itself and the format. Anyone inspecting a resource within an OCI registry representing a Helm chart would be able to easily identify it as a Helm chart and understand how to interact with the content.</p>
<p>For those interested in learning more about the Helm Media Types, including the low level technical details, can view the registration details within IANA which provides a wealth of information including the intended use and lower level data specification.</p>
<p>Helm is certainly not alone in the use of OCI artifacts as a distribution method. Other prominent technologies, including Web Assembly (WASM) and Software Bill of Materials (SBOM’s), also leverage OCI artifacts. It is safe to say that we will see the continued adoption of OCI artifacts as a method of storing content by more and more projects and technologies moving forward.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-future-for-helms-oci-media-types">The Future for Helm’s OCI Media Types<a href="https://helm.sh/fr/blog/helm-oci-mediatypes#the-future-for-helms-oci-media-types" class="hash-link" aria-label="Lien direct vers The Future for Helm’s OCI Media Types" title="Lien direct vers The Future for Helm’s OCI Media Types" translate="no">​</a></h2>
<p>As anyone who has worked in software development, especially with regards to large, complex projects, can relate to the amount of time it takes for features to be implemented. Work surrounding OCI integration was originally introduced back in Helm version 3.5 and how OCI artifacts in general are stored and managed have evolved since that time. The OCI version 1.1 image specification provides not only additional structure, but guidance on how to manage OCI artifacts. As this specification is not only finalized, but adopted and implemented by registry providers, we will continue to see an increased adoption of the technology. The Helm project and community will continue to evolve with the rest of the industry so that Chart producers and consumers have not only the best experience possible, but can best leverage the available technology.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm Completes Fuzzing Security Audit]]></title>
            <link>https://helm.sh/fr/blog/helm-completes-fuzzing-security-audit</link>
            <guid>https://helm.sh/fr/blog/helm-completes-fuzzing-security-audit</guid>
            <pubDate>Fri, 31 Mar 2023 15:00:00 GMT</pubDate>
            <description><![CDATA[In the past year, the team at Ada Logics has worked on integrating continuous fuzzing into the Helm core project. This was an effort focused on improving the security posture of Helm and ensuring a continued good experience for Helm users. The fuzzing integration involved enrolling Helm in the OSS-Fuzz project and writing a set of fuzzers that further enriches the test coverage of Helm. In total, 38 fuzzers were written, and nine bugs were found (with eight fixed so far), demonstrating the work’s value for Helm both short term and long term. All fuzzers were implemented by way of Go-fuzz and are run daily by OSS-Fuzz against the latest Helm commit to make sure Helm is continuously fuzz tested. The full report of the engagement can be found here.]]></description>
            <content:encoded><![CDATA[<p>In the past year, the team at <a href="https://adalogics.com/" target="_blank" rel="noopener noreferrer" class="">Ada Logics</a> has worked on integrating continuous fuzzing into the <a href="https://github.com/helm/helm" target="_blank" rel="noopener noreferrer" class="">Helm core project</a>. This was an effort focused on improving the security posture of Helm and ensuring a continued good experience for Helm users. The fuzzing integration involved enrolling Helm in the <a href="https://github.com/cncf/cncf-fuzzing" target="_blank" rel="noopener noreferrer" class="">OSS-Fuzz project</a> and writing a set of fuzzers that further enriches the test coverage of Helm. In total, 38 fuzzers were written, and nine bugs were found (with eight fixed so far), demonstrating the work’s value for Helm both short term and long term. All fuzzers were implemented by way of <a href="https://github.com/dvyukov/go-fuzz" target="_blank" rel="noopener noreferrer" class="">Go-fuzz</a> and are run daily by OSS-Fuzz against the latest Helm commit to make sure Helm is continuously fuzz tested. The full report of the engagement can be found <a href="https://github.com/helm/community/tree/main/security-audit/FUZZING_AUDIT_2022.pdf" target="_blank" rel="noopener noreferrer" class="">here</a>.</p>
<p><a href="https://helm.sh/" target="_blank" rel="noopener noreferrer" class="">Helm</a> is described as the Kubernetes package manager. It helps simplify finding, sharing, and using software built for Kubernetes. Helm began as what is now known as <a href="https://github.com/helm/helm-classic" target="_blank" rel="noopener noreferrer" class="">Helm Classic</a>, a Deis project begun in 2015 and introduced at the inaugural KubeCon. In January of 2016, the project merged with a GCS tool called Kubernetes Deployment Manager, and the project was moved under Kubernetes. Helm was promoted from a Kubernetes subproject to a full-fledged CNCF project in June 2018. Helm <a href="https://www.cncf.io/announcement/2020/04/30/cloud-native-computing-foundation-announces-helm-graduation/" target="_blank" rel="noopener noreferrer" class="">graduated as a CNCF project in April 2020</a>. <a href="https://www.cncf.io/reports/cncf-annual-survey-2021" target="_blank" rel="noopener noreferrer" class="">The CNCF annual survey of 2022</a> found that around 90% of companies are either using or evaluating Kubernetes, and Helm’s performance and security are important, for the continued business operations of these users.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="what-is-fuzzing">What is fuzzing?<a href="https://helm.sh/fr/blog/helm-completes-fuzzing-security-audit#what-is-fuzzing" class="hash-link" aria-label="Lien direct vers What is fuzzing?" title="Lien direct vers What is fuzzing?" translate="no">​</a></h2>
<p><a href="https://en.wikipedia.org/wiki/Fuzzing" target="_blank" rel="noopener noreferrer" class="">Fuzzing</a> is a technique for testing software for bugs and vulnerabilities by passing it pseudo-random data. The key idea is to write a fuzzing harness similar to a unit — or integration — test that will execute the application under test with some arbitrary input. The fuzzing engine that will run the fuzzing harness uses mutational algorithms to generate new inputs - also called "testcases" - that will cause the code under test to execute uniquely, i.e., generate inputs that trigger new code execution paths. The goal is then to observe if the code under test misbehaves in the event of any of the generated inputs. Fuzzing has been effective in uncovering reliability bugs and vulnerabilities in software for more than two decades, and open source software is increasingly adopting the technique.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-fuzzing-overview">Helm fuzzing overview<a href="https://helm.sh/fr/blog/helm-completes-fuzzing-security-audit#helm-fuzzing-overview" class="hash-link" aria-label="Lien direct vers Helm fuzzing overview" title="Lien direct vers Helm fuzzing overview" translate="no">​</a></h2>
<p>In this engagement, the goal was to write a set of fuzzers that would cover a lot of the Helm codebase and integrate the setup into the open source fuzzing service OSS-Fuzz. OSS-Fuzz is a free service offered by Google for critical open source projects to run their fuzzers continuously and report any crashes. Continuous analysis is important due to fuzzing relying on genetic algorithms, which effectively means the fuzzers will improve over time, and OSS-Fuzz will run the fuzzers daily indefinitely. In addition to this, continuous analysis is crucial for capturing any regressions.</p>
<p>Helm is written in the Go programming language, making it safe from memory-corruptions. Fuzzing Go will find panics such as slice/index out of range, nil-pointer dereferences, invalid type assertions, timeouts, and out of memory. At the end of this engagement, nine issues were found, all but one of which were fixed. Refer to the report for a detailed breakdown of the issues.</p>
<p>At the end of this engagement, the fuzzers provide significant coverage of the Helm project, including critical parts such as chart handling, release storage, and repositories. To write these fuzzers, Ada Logics used <a href="https://github.com/AdaLogics/go-fuzz-headers" target="_blank" rel="noopener noreferrer" class="">go-fuzz-headers</a> to deterministically create pseudo-random structs from the data provided by libFuzzer.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="closing-thoughts">Closing thoughts<a href="https://helm.sh/fr/blog/helm-completes-fuzzing-security-audit#closing-thoughts" class="hash-link" aria-label="Lien direct vers Closing thoughts" title="Lien direct vers Closing thoughts" translate="no">​</a></h2>
<p>The Helm team is thankful to CNCF for providing the opportunity to work with Ada Logics to develop new fuzzers for Helm. The CNCF takes security seriously, and it previously funded two third-party security audits for the Helm project, <a href="https://helm.sh/blog/2019-11-04-helm-security-audit-results/" target="_blank" rel="noopener noreferrer" class="">source code for the Helm client along with the process Helm uses to handle security</a> and <a href="https://helm.sh/blog/helm-2nd-security-audit/" target="_blank" rel="noopener noreferrer" class="">source code for the Helm client along with a threat model for the use of Helm</a>. We want to thank the following Helm maintainers who participated in this endeavour and provided fixes where required: <a href="https://github.com/technosophos" target="_blank" rel="noopener noreferrer" class="">Matt Butcher</a>, <a href="https://github.com/hickeyma" target="_blank" rel="noopener noreferrer" class="">Martin Hickey</a>, <a href="https://github.com/mattfarina" target="_blank" rel="noopener noreferrer" class="">Matt Farina</a> and <a href="https://github.com/scottrigby" target="_blank" rel="noopener noreferrer" class="">Scott Rigby</a>. We would also like to mention and thank the Flux maintainers, especially <a href="https://github.com/pjbgf" target="_blank" rel="noopener noreferrer" class="">Paulo Gomes</a> for collaborating on an issue. The fuzzing findings and fixes are valuable add-ons to the previous conclusions of the security audits. The Helm project has efficient test suites, and code changes are backed by tests, but the newly developed fuzzers and findings have provided significant value to the project. During the fuzzing, only nine issues were found, which revalidated the high quality of the Helm code. The Helm team can now maintain the newly developed fuzzers and build on them to continue code quality and security.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm welcomes yxxhero as our newest helm-www repo maintainer]]></title>
            <link>https://helm.sh/fr/blog/welcome-yxxhero</link>
            <guid>https://helm.sh/fr/blog/welcome-yxxhero</guid>
            <pubDate>Mon, 14 Nov 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[The Helm project is happy to welcome yxxhero as our newest maintainer for the helm-www repo!]]></description>
            <content:encoded><![CDATA[<p>The Helm project is happy to welcome <a href="https://github.com/yxxhero" target="_blank" rel="noopener noreferrer" class="">yxxhero</a> as our newest maintainer for the helm-www repo!</p>
<p>yxxhero has been a long time contributor to the Helm project over the years. With a supermajority vote from the existing maintainers, yxxhero will be joining to help with Helm documentation. With their background, yxxhero will continue to help strengthen both our simplified and traditional Chinese docs.</p>
<p>Cheers to yxxhero!</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Helm @ KubeCon + CloudNativeCon NA '22]]></title>
            <link>https://helm.sh/fr/blog/helm-at-kubecon-na-22</link>
            <guid>https://helm.sh/fr/blog/helm-at-kubecon-na-22</guid>
            <pubDate>Fri, 14 Oct 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[The Helm maintainers are excited to be headed to KubeCon + CloudNativeCon NA '22 in Detroit, MI in a couple of weeks! As always, there will be a few different places you can find us!]]></description>
            <content:encoded><![CDATA[<p>The Helm maintainers are excited to be headed to KubeCon + CloudNativeCon NA '22 in Detroit, MI in a couple of weeks! As always, there will be a few different places you can find us!</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-maintainer-track-talk-learn-about-helm-and-its-ecosystem">Helm Maintainer Track Talk: <a href="https://sched.co/182Ns" target="_blank" rel="noopener noreferrer" class="">Learn about Helm and Its Ecosystem</a><a href="https://helm.sh/fr/blog/helm-at-kubecon-na-22#helm-maintainer-track-talk-learn-about-helm-and-its-ecosystem" class="hash-link" aria-label="Lien direct vers helm-maintainer-track-talk-learn-about-helm-and-its-ecosystem" title="Lien direct vers helm-maintainer-track-talk-learn-about-helm-and-its-ecosystem" translate="no">​</a></h2>
<p>DATE: Thursday October 27</p>
<p>TIME: 11:00am - 11:35am EDT</p>
<p>LOCATION: Room 410 A</p>
<p>Maintainers <a href="https://twitter.com/mattfarina" target="_blank" rel="noopener noreferrer" class="">Matt Farina</a>, <a href="https://twitter.com/karenaangell" target="_blank" rel="noopener noreferrer" class="">Karena Angell</a>, <a href="https://twitter.com/r6by" target="_blank" rel="noopener noreferrer" class="">Scott Rigby</a>, &amp; <a href="https://twitter.com/sabre1041" target="_blank" rel="noopener noreferrer" class="">Andrew Block</a> will be doing a <a href="https://sched.co/182Ns" target="_blank" rel="noopener noreferrer" class="">Maintainer Track talk</a> introducing Helm itself and then doing a deep dive into the ecosystem around building packages, along with using Helm packages in clusters.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="helm-booth-in-project-pavilion">Helm Booth in Project Pavilion<a href="https://helm.sh/fr/blog/helm-at-kubecon-na-22#helm-booth-in-project-pavilion" class="hash-link" aria-label="Lien direct vers Helm Booth in Project Pavilion" title="Lien direct vers Helm Booth in Project Pavilion" translate="no">​</a></h2>
<p>WED OCT 26: 15:30 – 20:00 ET</p>
<p>THUR OCT 27: 14:00 – 17:30 ET</p>
<p>FRI Oct 28: 13:00 – 16:00 ET</p>
<p>LOCATION: opposite side of the Fuzz booth, near the LitmusChaos/Flux/Cortex/Falco booths</p>
<p>Our maintainers will be hanging out at our Helm project booth the second half of each day. We'd love to learn from the community how Helm is being used, what pain points exists, and what users are looking for in the future. Help us help you by sharing your thoughts in our <a href="https://docs.google.com/forms/d/e/1FAIpQLSeR9fSlWShh49_URhAEPA88JVjlPiz1441CA1B2ySJGZg1dzQ/viewform" target="_blank" rel="noopener noreferrer" class="">Helm User Survey</a>, even if you're unable to drop by the booth.</p>
<p>Now for the fun part – the Helm booth will be giving away 3D Helm stickers, glow-in-the-dark Helm stickers, Helm bike bells, or limited edition Helm + Carhartt beanies to stay warm while in Detroit!</p>
<p>With that, we'll see the Helm community soon in-person!</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Tools You Can Use To Manage Your Helm Releases Declaratively]]></title>
            <link>https://helm.sh/fr/blog/tools-to-manage-helm-declaratively</link>
            <guid>https://helm.sh/fr/blog/tools-to-manage-helm-declaratively</guid>
            <pubDate>Tue, 19 Apr 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[We regularly get questions from people who want tools or methods to manage their Helm releases in an environment. This post provides some insight and direction to help people get started.]]></description>
            <content:encoded><![CDATA[<p>We regularly get questions from people who want tools or methods to manage their Helm releases in an environment. This post provides some insight and direction to help people get started.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="why-helm-doesnt-have-tools-to-do-this">Why Helm Doesn't Have Tools To Do This<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#why-helm-doesnt-have-tools-to-do-this" class="hash-link" aria-label="Lien direct vers Why Helm Doesn't Have Tools To Do This" title="Lien direct vers Why Helm Doesn't Have Tools To Do This" translate="no">​</a></h2>
<p>You might wonder, why doesn't Helm provide tools to do this out of the box?</p>
<p>Helm is a package manager. We often compare it to package managers for other platforms like apt, yum, zipper, homebrew, and others. All of these projects, Helm included, keep their scope within the realm of package management.</p>
<p>Managing how instances of packages are run in an environment is a separate concern and one people have varying ideas about. For example, some people use Ansible, others use Terraform, some use both, and some use something entirely different. Different tools can even use different methods (e.g. some are push based and others pull based). <em>All of these are able work with the same package managers.</em></p>
<p>The Helm project strives to provide a package manager that works well with various other tools that can use a variety of different methods to manage releases.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="declarative-and-imperative">Declarative and Imperative<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#declarative-and-imperative" class="hash-link" aria-label="Lien direct vers Declarative and Imperative" title="Lien direct vers Declarative and Imperative" translate="no">​</a></h2>
<p>In the Kubernetes space we talk about <em>declarative</em> management. If you're not familiar with the concept, here is a brief explanation.</p>
<p>With declarative management you <em>declare</em> to the <em>system</em> what you want the end state to look like. For example, that you want X number of instances of your workload to be running. The system then works to make this a reality and usually reports status on the progress of making the declared status a reality. Over time, the way the system makes the declared state a reality can change without the need for what you declare or the status of the progress to change.</p>
<p>Imperative management has to do with telling the system what to do step by step. Instead of declaring what you want you tell the system each step to take to achieve the end goal.</p>
<p>Kubernetes provides a means to do both <a href="https://kubernetes.io/docs/tasks/manage-kubernetes-objects/" target="_blank" rel="noopener noreferrer" class="">declarative and imperative management of resources</a>. As the Kubernetes community tends to prefer declarative management, when possible, the rest of this post is going to focus on declarative tools you can use with Helm.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="tools">Tools<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#tools" class="hash-link" aria-label="Lien direct vers Tools" title="Lien direct vers Tools" translate="no">​</a></h2>
<p>The Kubernetes ecosystem has produced numerous projects of various styles to help you declaratively manage your Helm releases. To illustrate the options we will look at sister projects to Helm in the Cloud Native Computing Foundation (CNCF) and some more general open source projects. You can find more options in the <a href="https://landscape.cncf.io/" target="_blank" rel="noopener noreferrer" class="">CNCF Landscape</a>.</p>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="cncf-projects">CNCF Projects<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#cncf-projects" class="hash-link" aria-label="Lien direct vers CNCF Projects" title="Lien direct vers CNCF Projects" translate="no">​</a></h3>
<p>The scope of this section is limited to <a href="https://www.cncf.io/projects/" target="_blank" rel="noopener noreferrer" class="">graduated and incubating</a> CNCF projects. There are over 100 CNCF projects and many of them are <a href="https://www.cncf.io/sandbox-projects/" target="_blank" rel="noopener noreferrer" class="">sandbox projects</a>. You can learn more about the differences between types of projects in the <a href="https://www.cncf.io/projects/#maturity-levels" target="_blank" rel="noopener noreferrer" class="">maturity level explanation</a>. The following projects are worth looking at:</p>
<ul>
<li class=""><a href="https://fluxcd.io/docs/components/helm/" target="_blank" rel="noopener noreferrer" class="">Flux Helm Controller</a> - <a href="https://fluxcd.io/" target="_blank" rel="noopener noreferrer" class="">Flux</a> is a collection of projects that enable GitOps. One of the components provides a GitOps method to manage Helm releases. Flux natively supports Helm.</li>
<li class=""><a href="https://github.com/argoproj/argo-cd" target="_blank" rel="noopener noreferrer" class="">Argo CD</a> - The <a href="https://argoproj.github.io/" target="_blank" rel="noopener noreferrer" class="">Argo</a> project defines itself as providing "Open source tools for Kubernetes to run workflows, manage clusters, and do GitOps right." Argo CD is focused on declarative continuous delivery and has the ability to work with Helm charts.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="other-projects">Other Projects<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#other-projects" class="hash-link" aria-label="Lien direct vers Other Projects" title="Lien direct vers Other Projects" translate="no">​</a></h3>
<p>There are many projects beyond the CNCF projects you can use to help you manage your Helm releases. The following set is an example and not exhaustive.</p>
<ul>
<li class=""><a href="https://github.com/helmfile/helmfile" target="_blank" rel="noopener noreferrer" class="">Helmfile</a> - A declarative spec for deploying Helm charts.</li>
<li class=""><a href="https://github.com/alauda/captain" target="_blank" rel="noopener noreferrer" class="">Captain</a> - A Helm controller.</li>
<li class=""><a href="https://github.com/hashicorp/terraform-provider-helm" target="_blank" rel="noopener noreferrer" class="">Terraform Helm provider</a> - Enables you to manage Helm charts through Terraform.</li>
<li class=""><a href="https://azure.github.io/orkestra/" target="_blank" rel="noopener noreferrer" class="">Orkestra</a> - Built on other tools in this list, Orkestra adds a robust dependency graph for a related group of Helm releases and their subcharts, as well as a reverse DAG for specifying dependency requirements for rollbacks.</li>
<li class=""><a href="https://github.com/rancher/fleet" target="_blank" rel="noopener noreferrer" class="">Fleet</a> - A GitOps tool chain that works with Kubernetes manifests, Helm charts, and Kustomize.</li>
</ul>
<h3 class="anchor anchorTargetStickyNavbar_Vzrq" id="high-level-tool-comparison">High-Level Tool Comparison<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#high-level-tool-comparison" class="hash-link" aria-label="Lien direct vers High-Level Tool Comparison" title="Lien direct vers High-Level Tool Comparison" translate="no">​</a></h3>
<p>There are some differences between the tools we've looked at so far. The following table provides some insight into their differences. This is not exhaustive and you should evaluate any tools you use yourself.</p>





























































<table><thead><tr><th></th><th>Retains Helm release info</th><th>Supports Helm hooks</th><th>OCI support</th><th>Does not require Helm binary</th></tr></thead><tbody><tr><td>Flux Helm controller</td><td>✅</td><td>✅</td><td>🚫<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-1-8e6365" id="user-content-fnref-1-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">1</a></sup></td><td>✅</td></tr><tr><td>Argo CD</td><td>🚫</td><td>⚠️<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-2-8e6365" id="user-content-fnref-2-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">2</a></sup></td><td>✅<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-3-8e6365" id="user-content-fnref-3-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">3</a></sup></td><td>🚫</td></tr><tr><td>Helmfile</td><td>✅</td><td>⚠️<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-4-8e6365" id="user-content-fnref-4-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">4</a></sup></td><td>⚠️<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-5-8e6365" id="user-content-fnref-5-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">5</a></sup></td><td>🚫<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-6-8e6365" id="user-content-fnref-6-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">6</a></sup></td></tr><tr><td>Captain</td><td>✅</td><td>✅</td><td>⚠️<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-7-8e6365" id="user-content-fnref-7-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">7</a></sup></td><td>✅</td></tr><tr><td>Terraform Helm provider</td><td>✅</td><td>⚠️<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-8-8e6365" id="user-content-fnref-8-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">8</a></sup></td><td>✅</td><td>✅</td></tr><tr><td>Orkestra</td><td>✅</td><td>✅</td><td>🚫<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-9-8e6365" id="user-content-fnref-9-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">9</a></sup></td><td>✅</td></tr><tr><td>Fleet</td><td>✅</td><td>✅</td><td>🚫<sup><a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fn-10-8e6365" id="user-content-fnref-10-8e6365" data-footnote-ref="" aria-describedby="footnote-label" class="anchorTargetStickyNavbar_Vzrq">10</a></sup></td><td>✅</td></tr></tbody></table>
<p><em>Note, this comparison is from when the blog post was published. Projects change over time and the feature set may change over time. You should evaluate the projects in their current state before choosing one.</em></p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="conclusion">Conclusion<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#conclusion" class="hash-link" aria-label="Lien direct vers Conclusion" title="Lien direct vers Conclusion" translate="no">​</a></h2>
<p>If you want to use a configuration manager with your Helm and Kubernetes configuration there are many choices. While the Helm project doesn't endorse one project over another, we do suggest using a configuration manager when it's appropriate.</p>
<!-- -->
<section data-footnotes="" class="footnotes"><h2 class="anchor anchorTargetStickyNavbar_Vzrq sr-only" id="footnote-label">Footnotes<a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#footnote-label" class="hash-link" aria-label="Lien direct vers Footnotes" title="Lien direct vers Footnotes" translate="no">​</a></h2>
<ol>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-1-8e6365">
<p>Because Flux makes full use of the Helm SDK, as of Helm v3.8.0 Flux is now unblocked to add OCI artifact integration (Flux team members helped finish bringing OCI support out of experimental into a full feature in Helm). <a href="https://github.com/fluxcd/flux2/tree/main/rfcs/0002-helm-oci" target="_blank" rel="noopener noreferrer" class="">RFC-0002</a> is now marked as implementable, and work on this is now in progress for Flux. You can follow this fluxcd/source-controller issue <a href="https://github.com/fluxcd/source-controller/issues/669" target="_blank" rel="noopener noreferrer" class="">#669</a> for progress. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-1-8e6365" data-footnote-backref="" aria-label="Back to reference 1" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-2-8e6365">
<p>Because Argo does not retain Helm release information, there is an <a href="https://argo-cd.readthedocs.io/en/stable/user-guide/helm/#helm-hooks" target="_blank" rel="noopener noreferrer" class="">attempt to map</a> Helm hooks to ArgoCD hooks, however, there are far fewer Argo hooks and unmappable concepts such as no differentiation between install and upgrade. You can work around this by writing your charts specifically for ArgoCD, however hooks in commonly used community charts will not work. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-2-8e6365" data-footnote-backref="" aria-label="Back to reference 2" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-3-8e6365">
<p>ArgoCD shells out to the Helm CLI, only to render templates. This has allowed Argo to turn on Helm CLI's OCI feature before it was finished, for the same reason that it can not support Helm features beyond templating. Because of this, OCI is not part of the ArgoCD source architecture. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-3-8e6365" data-footnote-backref="" aria-label="Back to reference 3" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-4-8e6365">
<p>Helmfile has a custom concept of hooks, not necessarily mapped to Helm hooks. See readme <a href="https://github.com/helmfile/helmfile#hooks" target="_blank" rel="noopener noreferrer" class="">hooks section</a> and <a href="https://github.com/roboll/helmfile/issues/1291" target="_blank" rel="noopener noreferrer" class="">this issue</a> for clarification and work in progress. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-4-8e6365" data-footnote-backref="" aria-label="Back to reference 4" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-5-8e6365">
<p>Helmfile has experimental OCI support, without explicitly explaining to users that it sets <code>HELM_EXPERIMENTAL_OCI=1</code> before shelling out to the Helm CLI. See <a href="https://github.com/roboll/helmfile/issues/2112" target="_blank" rel="noopener noreferrer" class="">#2112</a> and <a href="https://github.com/roboll/helmfile/issues/2111" target="_blank" rel="noopener noreferrer" class="">#2111</a>. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-5-8e6365" data-footnote-backref="" aria-label="Back to reference 5" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-6-8e6365">
<p>Helmfile parameterizes the Helm binary (default: <code>helm</code>). <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-6-8e6365" data-footnote-backref="" aria-label="Back to reference 6" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-7-8e6365">
<p>Captain relies on a related project <a href="https://github.com/alauda/oci-chartrepo" target="_blank" rel="noopener noreferrer" class="">alauda/oci-chartrepo</a> to mix concepts of using oci registry as helm chart repo. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-7-8e6365" data-footnote-backref="" aria-label="Back to reference 7" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-8-8e6365">
<p>Terraform Helm provider has <a href="https://github.com/hashicorp/terraform-provider-helm/issues/683" target="_blank" rel="noopener noreferrer" class="">some issues</a> with Helm hooks and wait configurations. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-8-8e6365" data-footnote-backref="" aria-label="Back to reference 8" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-9-8e6365">
<p>Orkestra leverages Flux Helm Controller to reconcile the releases. See the note above about Flux Helm controller OCI status. Once a full implementation is released in Flux, Orkestra will also support OCI. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-9-8e6365" data-footnote-backref="" aria-label="Back to reference 9" class="data-footnote-backref">↩</a></p>
</li>
<li class="anchorTargetStickyNavbar_Vzrq" id="user-content-fn-10-8e6365">
<p>Fleet uses the Helm SDK. Once it uses a version of the Helm SDK that supports OCI registries, Fleet will inherit support. <a href="https://helm.sh/fr/blog/tools-to-manage-helm-declaratively#user-content-fnref-10-8e6365" data-footnote-backref="" aria-label="Back to reference 10" class="data-footnote-backref">↩</a></p>
</li>
</ol>
</section>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Storing Helm Charts in OCI Registries]]></title>
            <link>https://helm.sh/fr/blog/storing-charts-in-oci</link>
            <guid>https://helm.sh/fr/blog/storing-charts-in-oci</guid>
            <pubDate>Mon, 28 Feb 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[With the release of Helm 3.8.0, Helm is able to store and work with charts in container registries, as an alternative to Helm repositories. This feature, which used to be an experimental feature, is now generally available.]]></description>
            <content:encoded><![CDATA[<p>With the release of Helm 3.8.0, Helm is able to store and work with charts in container registries, as an alternative to <a href="https://helm.sh/docs/topics/chart_repository/" target="_blank" rel="noopener noreferrer" class="">Helm repositories</a>. This feature, which used to be an experimental feature, is now generally available.</p>
<p>Over the past several years container registry developers have been working on ways to store other artifacts in container registries. To facilitate this in a cross platform manner, the Open Containers Initiative (OCI) - the organization that defines the specifications for containers - released their <a href="https://specs.opencontainers.org/distribution-spec/?v=v1.0.0" target="_blank" rel="noopener noreferrer" class="">distribution specification</a> which allowed other "artifacts" to be stored in registries.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="common-storage">Common Storage<a href="https://helm.sh/fr/blog/storing-charts-in-oci#common-storage" class="hash-link" aria-label="Lien direct vers Common Storage" title="Lien direct vers Common Storage" translate="no">​</a></h2>
<p>Since OCI artifacts now makes it possible to store more than container images, you can store charts, images, and other artifacts in a single OCI registry. Sharing a common storage standard that's not specific to Helm allows greater interoperability between tools from the wider container ecosystem for security, identity and access management, and more.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="working-with-charts-in-registries">Working With Charts In Registries<a href="https://helm.sh/fr/blog/storing-charts-in-oci#working-with-charts-in-registries" class="hash-link" aria-label="Lien direct vers Working With Charts In Registries" title="Lien direct vers Working With Charts In Registries" translate="no">​</a></h2>
<p>The combination of OCI artifact support in a registry and new functionality within Helm provides the capability to pull and push charts to and from a registry. You can also specify charts stored in OCI as a dependency in any <code>Chart.yaml</code> file. The following example illustrates logging into a registry and pushing a chart:</p>
<div class="language-text codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-text codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">$ helm create demo</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Creating demo</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">$ helm package demo</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Successfully packaged chart and saved it to: /tmp/demo-0.1.0.tgz</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">$ echo "mypass" | helm registry login r.example.com -u myuser --password-stdin</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Login Succeeded</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">$ helm push demo-0.1.0.tgz oci://r.example.com/myuser</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Pushed: r.example.com/myuser/demo:0.1.0</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">Digest: sha256:7ed393daf1ffc94803c08ffcbecb798fa58e786bebffbab02da5458f68d0ecb0</span><br></span></code></pre></div></div>
<p>More detail on <a href="https://helm.sh/docs/topics/registries/" target="_blank" rel="noopener noreferrer" class="">working with registries can be found in the Helm documentation</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="the-helm-sdk">The Helm SDK<a href="https://helm.sh/fr/blog/storing-charts-in-oci#the-helm-sdk" class="hash-link" aria-label="Lien direct vers The Helm SDK" title="Lien direct vers The Helm SDK" translate="no">​</a></h2>
<p>The Helm SDK, which is useful for those building tools to integrate with Helm, also includes support to work with registries programmatically. The following example illustrates pushing a chart to a registry:</p>
<div class="language-go codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_QJqH"><pre tabindex="0" class="prism-code language-go codeBlock_bY9V thin-scrollbar" style="color:#393A34;background-color:#f6f8fa"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token keyword" style="color:#00009f">package</span><span class="token plain"> main</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">import</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token string" style="color:#e3116c">"fmt"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token string" style="color:#e3116c">"io/ioutil"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token string" style="color:#e3116c">"helm.sh/helm/v3/pkg/registry"</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">func</span><span class="token plain"> </span><span class="token function" style="color:#d73a49">check</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">err </span><span class="token builtin">error</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token keyword" style="color:#00009f">if</span><span class="token plain"> err </span><span class="token operator" style="color:#393A34">!=</span><span class="token plain"> </span><span class="token boolean" style="color:#36acaa">nil</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">		</span><span class="token function" style="color:#d73a49">panic</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">err</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token keyword" style="color:#00009f">func</span><span class="token plain"> </span><span class="token function" style="color:#d73a49">main</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token punctuation" style="color:#393A34">{</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	client</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> err </span><span class="token operator" style="color:#393A34">:=</span><span class="token plain"> registry</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">NewClient</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token function" style="color:#d73a49">check</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">err</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	b</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> err </span><span class="token operator" style="color:#393A34">:=</span><span class="token plain"> ioutil</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">ReadFile</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"demo-0.1.0.tgz"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token function" style="color:#d73a49">check</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">err</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	info</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> err </span><span class="token operator" style="color:#393A34">:=</span><span class="token plain"> client</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">Push</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">b</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> </span><span class="token string" style="color:#e3116c">"r.example.com/myuser/demo:0.1.0"</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	</span><span class="token function" style="color:#d73a49">check</span><span class="token punctuation" style="color:#393A34">(</span><span class="token plain">err</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain" style="display:inline-block"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	fmt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">Printf</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"Pushed: %s\n"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> info</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Ref</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">	fmt</span><span class="token punctuation" style="color:#393A34">.</span><span class="token function" style="color:#d73a49">Printf</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">"Digest: %s\n"</span><span class="token punctuation" style="color:#393A34">,</span><span class="token plain"> info</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Manifest</span><span class="token punctuation" style="color:#393A34">.</span><span class="token plain">Digest</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"></span><br></span><span class="token-line" style="color:#393A34"><span class="token plain"></span><span class="token punctuation" style="color:#393A34">}</span><br></span></code></pre></div></div>
<p>More detail can be found in the <a href="https://pkg.go.dev/helm.sh/helm/v3/pkg/registry" target="_blank" rel="noopener noreferrer" class="">documentation for the registry package</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="limitations">Limitations<a href="https://helm.sh/fr/blog/storing-charts-in-oci#limitations" class="hash-link" aria-label="Lien direct vers Limitations" title="Lien direct vers Limitations" translate="no">​</a></h2>
<p>There are some limitations when using registries to store charts compared to Helm repositories or storing container images in registries.</p>
<p>Helm repositores can be added and searched from the local Helm client. This is similar to how repositories work with other package managers such as zypper or apt. When working with OCI registries, this is not an option. OCI based registries don't provide standard APIs to facilitate searching.</p>
<p>While the OCI specification provides support for artifacts, not all registries support storing Helm charts or other artifacts that are not container images. Before choosing a registry, you should confirm whether it supports storing Helm charts.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="artifact-hub-support">Artifact Hub Support<a href="https://helm.sh/fr/blog/storing-charts-in-oci#artifact-hub-support" class="hash-link" aria-label="Lien direct vers Artifact Hub Support" title="Lien direct vers Artifact Hub Support" translate="no">​</a></h2>
<p><a href="https://artifacthub.io/" target="_blank" rel="noopener noreferrer" class="">Artifact Hub</a>, another CNCF project, provides a means to search and discover cloud native assets, including charts. Helm charts stored in OCI based registries can be listed on Artifact Hub, which already knows how to work with them. More details on working with Artifact Hub and Helm charts in container registries can be found in their <a href="https://artifacthub.io/docs/topics/repositories/#helm-charts-repositories" target="_blank" rel="noopener noreferrer" class="">documentation</a>.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="oras">ORAS<a href="https://helm.sh/fr/blog/storing-charts-in-oci#oras" class="hash-link" aria-label="Lien direct vers ORAS" title="Lien direct vers ORAS" translate="no">​</a></h2>
<p>The <a href="https://oras.land/" target="_blank" rel="noopener noreferrer" class="">OCI Registry as Storage (ORAS) project</a>, another CNCF project, is used by Helm as the underlying library for working with registries. The ORAS project bills itself as:</p>
<blockquote>
<p>Registries are evolving as generic artifact stores. To enable this goal, the ORAS project provides a way to push and pull OCI Artifacts to and from OCI Registries.</p>
</blockquote>
<p>If you want to work with other artifacts in registries the ORAS project may provide some tools to help you.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="thanks-and-help-us-keep-improving">Thanks and Help Us Keep Improving<a href="https://helm.sh/fr/blog/storing-charts-in-oci#thanks-and-help-us-keep-improving" class="hash-link" aria-label="Lien direct vers Thanks and Help Us Keep Improving" title="Lien direct vers Thanks and Help Us Keep Improving" translate="no">​</a></h2>
<p>Thanks to everyone who worked on adding support for Helm charts and OCI registries, from the initial experiment to bringing this to a full feature. Thanks especially for end user testing, bug reports and feature requests, and coordination between community members and maintainers across several CNCF projects.</p>
<p>We hope this post helps give a good intro, and some things to consider when evaluating storing your Helm charts in OCI. See if it fits your needs, take it for a spin, and let us know what you think!</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Karen Chu Joins Helm Org Maintainers]]></title>
            <link>https://helm.sh/fr/blog/welcome-karen-chu</link>
            <guid>https://helm.sh/fr/blog/welcome-karen-chu</guid>
            <pubDate>Tue, 11 Jan 2022 00:00:00 GMT</pubDate>
            <description><![CDATA[The Helm organization is thrilled to introduce Karen Chu as the latest member of the Helm org maintainers. She will be the ninth committee member. Karen has been active in the Helm ecosystem since day one when Rimas, Jack, and I first started the project. She was instrumental in Helm's early branding, organized both of the Helm Summits, and leads Helm's community management team. You may also know her from her Helm-adjacent work as the co-creator of the Illustrated Children's Guide to Kubernetes series or her role as a CNCF ambassador.]]></description>
            <content:encoded><![CDATA[<p>The Helm organization is thrilled to introduce <a href="https://twitter.com/karenhchu" target="_blank" rel="noopener noreferrer" class="">Karen Chu</a> as the latest member of the <a href="https://github.com/helm/community/blob/main/governance/governance.md#helm-org-maintainers" target="_blank" rel="noopener noreferrer" class="">Helm org maintainers</a>. She will be the <a href="https://github.com/helm/community/blob/main/MAINTAINERS.md" target="_blank" rel="noopener noreferrer" class="">ninth committee member</a>. Karen has been active in the Helm ecosystem since day one when Rimas, Jack, and I first started the project. She was instrumental in Helm's early branding, organized both of the Helm Summits, and leads Helm's community management team. You may also know her from her Helm-adjacent work as the co-creator of the <a href="https://www.cncf.io/phippy/" target="_blank" rel="noopener noreferrer" class="">Illustrated Children's Guide to Kubernetes</a> series or her role as a CNCF ambassador.</p>
<p>Last week, the Helm project maintainers voted to elect Karen onto the Helm org maintainers board. In this role, Karen will help shape the many projects that are hosted under the Helm umbrella, bringing her insights from the wider ecosystem to her leadership of the Helm organization.</p>
<p>Congratulations to Karen!</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Martin Hickey Joins Helm Org Maintainers]]></title>
            <link>https://helm.sh/fr/blog/welcome-martin-hickey</link>
            <guid>https://helm.sh/fr/blog/welcome-martin-hickey</guid>
            <pubDate>Thu, 24 Jun 2021 00:00:00 GMT</pubDate>
            <description><![CDATA[Meet Helm's newest org maintainer: Martin Hickey. Martin has been a longtime Helm project maintainer. He was instrumental in the development of Helm 3, and has been one of the most active maintainers on the project. He is also one of the creators of the Helm 2-to-3 migration plugin.]]></description>
            <content:encoded><![CDATA[<p>Meet Helm's newest org maintainer: <a href="https://hickeyma.github.io/" target="_blank" rel="noopener noreferrer" class="">Martin Hickey</a>. Martin has been a longtime Helm project maintainer. He was instrumental in the development of Helm 3, and has been one of the most active maintainers on the project. He is also one of the creators of the <a href="https://github.com/helm/helm-2to3" target="_blank" rel="noopener noreferrer" class="">Helm 2-to-3 migration plugin</a>.</p>
<p>This week, the Helm maintainers voted to elect Martin onto the Helm Org Maintainers board. In this new role, Martin will help shape not just Helm, but the many projects that are hosted together with Helm. As a first order of business, Martin will be migrating the <a href="https://github.com/hickeyma/helm-mapkubeapis" target="_blank" rel="noopener noreferrer" class="">Map KubeAPIs plugin</a> to the Helm organization.</p>
<p>Congratulations to Martin!</p>]]></content:encoded>
        </item>
    </channel>
</rss>