<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>GitHub on</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/tags/github/</link><description>Recent content in GitHub on</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><copyright>Copyright (c) 2023 Chainguard</copyright><lastBuildDate>Thu, 08 Oct 2026 02:59:03 +0000</lastBuildDate><atom:link href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/tags/github/index.xml" rel="self" type="application/rss+xml"/><item><title>Chainguard Checks overview</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/overview/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/overview/</guid><description>&lt;p&gt;Chainguard Checks runs your repository&amp;rsquo;s CI on Chainguard&amp;rsquo;s infrastructure instead of on GitHub Actions runners. You define your checks, such as linting and tests, in a &lt;code&gt;.chainguard/ci.yaml&lt;/code&gt; file in your repository. On every pull request, Chainguard Checks runs each check in its own microVM, built on Chainguard OS, and reports the results on the pull request as GitHub checks.&lt;/p&gt;
&lt;p&gt;CI runners usually hold long-lived secrets and can reach the whole internet while they run untrusted code, such as a pull request&amp;rsquo;s changes or a compromised dependency. In Chainguard Checks, each check runs in a fresh VM that has no long-lived credentials, and no network access unless the check lists the hosts it needs.&lt;/p&gt;</description></item><item><title>Guardener on GitHub</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/</link><pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/</guid><description>&lt;p&gt;Guardener&amp;rsquo;s GitHub capabilities run through the &lt;strong&gt;Chainguard App&lt;/strong&gt;, a single hardened GitHub App that also backs other Chainguard products. Those capabilities are opt-in per repository through configuration files committed to a &lt;code&gt;.chainguard/&lt;/code&gt; directory, so installing the app has no effect on a repository until you enable a capability.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Guardener is in beta. Available to organizations that have installed and linked the Chainguard App.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;h2 id="getting-set-up" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Getting set up&lt;/span&gt;
&lt;a href="#getting-set-up" class="anchor" aria-label="Link to Getting set up" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/"&gt;Getting started&lt;/a&gt;&lt;/strong&gt; — Install the Chainguard App and link your Chainguard organization to your GitHub organization.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/app-connections/"&gt;App connections&lt;/a&gt;&lt;/strong&gt; — Set up, inspect, and remove the connections between your Chainguard organization and your GitHub organizations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/configuration/"&gt;Configuration&lt;/a&gt;&lt;/strong&gt; — Understand the &lt;code&gt;.chainguard/&lt;/code&gt; configuration model that all of Guardener&amp;rsquo;s GitHub capabilities share.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="capabilities" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;Capabilities&lt;/span&gt;
&lt;a href="#capabilities" class="anchor" aria-label="Link to Capabilities" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/"&gt;Hardened Actions&lt;/a&gt;&lt;/strong&gt; — Recommends and migrates your GitHub Actions to Chainguard&amp;rsquo;s hardened, SHA-pinned equivalents, through non-blocking pull request review comments or automated migration pull requests. Migration pull requests run on a schedule and can also be &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/#run-an-on-demand-migration"&gt;triggered on demand&lt;/a&gt; with &lt;code&gt;chainctl&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-suggestions/"&gt;Container Image Suggestions&lt;/a&gt;&lt;/strong&gt; — Recommends Chainguard container images for the container images a pull request adds or changes, through non-blocking review comments with one-click suggested changes where possible.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-migration/"&gt;Container Image Migration&lt;/a&gt;&lt;/strong&gt; — Replaces the container images a repository already uses with Chainguard container images through a migration pull request. Migration runs on a schedule and can also be &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-migration/#run-an-on-demand-migration"&gt;triggered on demand&lt;/a&gt; with &lt;code&gt;chainctl&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/commit-verification/"&gt;Commit Verification&lt;/a&gt;&lt;/strong&gt; — Enforces cryptographically signed commits against a policy you control, supporting both keyless (Sigstore) signatures and static keys such as GPG.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each capability is configured with its own file in the &lt;code&gt;.chainguard/&lt;/code&gt; directory.&lt;/p&gt;</description></item><item><title>Getting started with Guardener</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/</guid><description>&lt;p&gt;This guide walks you through everything you need to start using Guardener on your GitHub repositories:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/#step-1-install-the-chainguard-app"&gt;Install the Chainguard App&lt;/a&gt; on your GitHub organization.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/#step-2-link-your-chainguard-organization-to-github"&gt;Link your Chainguard organization to your GitHub organization&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/#step-3-verify-the-link"&gt;Verify the link&lt;/a&gt; and enable your first feature.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Once the app is installed, Guardener can respond on your public repositories. Linking connects that activity to your Chainguard organization and unlocks the features that require one, such as private repository coverage — there is no separate entitlement step.&lt;/p&gt;</description></item><item><title>Get started with Chainguard Checks</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/getting-started/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/getting-started/</guid><description>&lt;p&gt;This guide walks you through signing up for Chainguard Checks, adding checks to one of your GitHub repositories, and seeing them run on a pull request. It uses a Go repository as the example and takes about 15 minutes.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Chainguard Checks is in beta. Available to organizations that turn it on with &lt;code&gt;chainctl develop init&lt;/code&gt;, which comes with a free monthly compute allowance, or that arrange access with their Chainguard account team.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/p&gt;</description></item><item><title>Managing Chainguard App connections</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/app-connections/</link><pubDate>Mon, 03 Aug 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/app-connections/</guid><description>&lt;p&gt;Guardener acts on your GitHub repositories on behalf of your Chainguard organization. The bridge between the two is a &lt;strong&gt;connection&lt;/strong&gt;: a Chainguard App installation on a GitHub organization, linked to a Chainguard organization. This page explains how connections work and how to set up, inspect, change, and remove them.&lt;/p&gt;
&lt;p&gt;For a first-time walkthrough, refer to &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/getting-started/"&gt;Getting started&lt;/a&gt;. This page is the fuller reference for managing connections over time.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Guardener is in beta. Available to organizations that have installed and linked the Chainguard App.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/p&gt;</description></item><item><title>Guardener Dockerfile migration</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/dockerfile-migration/</link><pubDate>Mon, 13 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/dockerfile-migration/</guid><description>&lt;p&gt;The Dockerfile migration feature converts your Dockerfiles to use Chainguard Containers. It uses AI to iteratively translate instructions, build images, compare results, and fix issues until the migrated Dockerfile works as expected.&lt;/p&gt;
&lt;p&gt;Unlike Guardener&amp;rsquo;s &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/"&gt;Hardened Actions&lt;/a&gt; and &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/commit-verification/"&gt;Commit Verification&lt;/a&gt; features, Dockerfile migration does not run through the Chainguard App or the &lt;code&gt;.chainguard/&lt;/code&gt; configuration directory. Instead, you drive it locally through &lt;code&gt;chainctl agent dockerfile&lt;/code&gt; commands. The AI runs server-side and scans your workspace to perform its analysis, while Docker builds and file access remain local to your machine.&lt;/p&gt;</description></item><item><title>Configuring Guardener</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/configuration/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/configuration/</guid><description>&lt;p&gt;Guardener is configured entirely through files committed to a &lt;code&gt;.chainguard/&lt;/code&gt; directory — either in each repository, or once at the organization level in your &lt;code&gt;.github&lt;/code&gt; repository. This page explains the configuration model that all Guardener features share. For the specific options of each feature, refer to its dedicated page.&lt;/p&gt;
&lt;h2 id="the-chainguard-directory" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;The &lt;code&gt;.chainguard/&lt;/code&gt; directory&lt;/span&gt;
&lt;a href="#the-chainguard-directory" class="anchor" aria-label="Link to The .chainguard/ directory" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Guardener reads its configuration from the &lt;code&gt;.chainguard/&lt;/code&gt; directory at the root of each repository. Every feature has its own file:&lt;/p&gt;</description></item><item><title>Use Chainguard Checks on GitHub</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/github/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/github/</guid><description>&lt;p&gt;Chainguard Checks runs on your GitHub repositories through the Chainguard App and reports its results as GitHub checks. This page explains when Chainguard Checks runs, how its results appear on GitHub, and how to use them to protect your branches.&lt;/p&gt;
&lt;h2 id="when-checks-runs" class="heading-2" data-heading-level="2"&gt;
&lt;span class="heading-text"&gt;When Checks runs&lt;/span&gt;
&lt;a href="#when-checks-runs" class="anchor" aria-label="Link to When Checks runs" title="Link to this section"&gt;
&lt;svg width="16" height="9" viewBox="0 0 16 9" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"&gt;
&lt;path d="M6.833 8.125H4C3 8.125 2.146 7.77067 1.438 7.062C0.729333 6.354 0.375 5.5 0.375 4.5C0.375 3.5 0.729333 2.646 1.438 1.938C2.146 1.22933 3 0.875 4 0.875H6.833V1.958H4C3.30533 1.958 2.708 2.208 2.208 2.708C1.708 3.208 1.458 3.80533 1.458 4.5C1.458 5.19467 1.708 5.792 2.208 6.292C2.708 6.792 3.30533 7.042 4 7.042H6.833V8.125ZM5.208 5.042V3.958H10.792V5.042H5.208ZM9.167 8.125V7.042H12C12.6947 7.042 13.292 6.792 13.792 6.292C14.292 5.792 14.542 5.19467 14.542 4.5C14.542 3.80533 14.292 3.208 13.792 2.708C13.292 2.208 12.6947 1.958 12 1.958H9.167V0.875H12C13 0.875 13.854 1.22933 14.562 1.938C15.2707 2.646 15.625 3.5 15.625 4.5C15.625 5.5 15.2707 6.354 14.562 7.062C13.854 7.77067 13 8.125 12 8.125H9.167Z" fill="currentColor"/&gt;
&lt;/svg&gt;
&lt;/a&gt;
&lt;/h2&gt;&lt;p&gt;Chainguard Checks runs on a repository when the Chainguard App is installed on the repository, its GitHub account is linked to a Chainguard organization with access to Chainguard Checks, and the repository has a &lt;code&gt;.chainguard/ci.yaml&lt;/code&gt; file or a &lt;code&gt;.chainguard/ci/&lt;/code&gt; directory. For a pull request, Chainguard Checks looks for the configuration on the pull request&amp;rsquo;s branch and on its base branch.&lt;/p&gt;</description></item><item><title>Guardener Hardened Actions</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/</guid><description>&lt;p&gt;The Hardened Actions feature recommends and migrates your GitHub Actions to Chainguard&amp;rsquo;s hardened, SHA-pinned equivalents. Pinning actions to a specific commit SHA — rather than a mutable tag or branch — protects your workflows from supply chain attacks in which an upstream tag is moved to point at malicious code.&lt;/p&gt;
&lt;p&gt;Hardened Actions operates in two independent modes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pull request recommendations&lt;/strong&gt; — non-blocking review comments that suggest hardened action alternatives, with one-click suggestion blocks.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automated migration pull requests&lt;/strong&gt; — a periodically maintained pull request that updates workflows across your repository. You can also &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/#run-an-on-demand-migration"&gt;trigger this migration on demand&lt;/a&gt; with &lt;code&gt;chainctl&lt;/code&gt; instead of waiting for the next scheduled run.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can enable either mode on its own or both together.&lt;/p&gt;</description></item><item><title>Guardener Container Image Suggestions</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-suggestions/</link><pubDate>Fri, 02 Oct 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-suggestions/</guid><description>&lt;p&gt;Guardener reviews pull requests that add or change container image references and recommends the Chainguard container image that replaces each upstream image. Where it can, Guardener includes the replacement as a one-click suggested change.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Guardener is in beta. Available to organizations that have installed and linked the Chainguard App.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;p&gt;Guardener reads only the lines a pull request adds or changes, so it catches upstream images as they&amp;rsquo;re introduced but doesn&amp;rsquo;t review the images a repository already uses. To replace those images, turn on &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-migration/"&gt;Container Image Migration&lt;/a&gt;, which opens a pull request for the whole repository. To list replacements for every image without changing any files, run &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/containers/migration/migration-tools/images-discover/"&gt;&lt;code&gt;chainctl images discover&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Guardener Container Image Migration</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-migration/</link><pubDate>Thu, 08 Oct 2026 02:59:03 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-migration/</guid><description>&lt;p&gt;Guardener scans the default branch of a repository for container image references and opens a pull request that replaces them with Chainguard container images your organization already has. As your repository and your organization&amp;rsquo;s images change, Guardener keeps that pull request up to date.&lt;/p&gt;
&lt;p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: Guardener is in beta. Available to organizations that have installed and linked the Chainguard App.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/p&gt;
&lt;p&gt;Container Image Migration and &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/image-suggestions/"&gt;Container Image Suggestions&lt;/a&gt; work together. Image Suggestions reviews the images that each new pull request adds, and migration replaces the images the repository already uses. Each has its own setting in &lt;code&gt;.chainguard/images.yaml&lt;/code&gt;, so you can use either one or both.&lt;/p&gt;</description></item><item><title>Guardener Commit Verification</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/commit-verification/</link><pubDate>Wed, 08 Jul 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/commit-verification/</guid><description>&lt;p&gt;The Commit Verification feature verifies that every commit in a pull request is cryptographically signed by an authorized signer, according to a policy you control. This ensures that changes to your codebase come from identities you trust, and it supports both keyless (Sigstore) signatures and static keys such as GPG.&lt;/p&gt;
&lt;p&gt;Keyless commit signatures are verified using &lt;a href="https://github.com/sigstore/gitsign"&gt;gitsign&lt;/a&gt; and &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/open-source/sigstore/"&gt;Sigstore&lt;/a&gt;. Static key authorities (such as GPG) are verified directly against the key material you supply, without gitsign.&lt;/p&gt;</description></item><item><title>Migrate from GitHub Actions to Chainguard Checks</title><link>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/migrate-from-github-actions/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/checks/migrate-from-github-actions/</guid><description>&lt;p&gt;If your repository runs its pull request checks with GitHub Actions, you can move them to Chainguard Checks one workflow at a time. Chainguard Checks and GitHub Actions can run on the same pull requests, so you can compare their results before you remove a workflow.&lt;/p&gt;
&lt;p&gt;You can convert workflows by hand, or start from a draft that the &lt;code&gt;chainctl checks migrate&lt;/code&gt; command writes for you.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;d rather keep your workflows on GitHub Actions, &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/actions/overview/"&gt;Chainguard Actions&lt;/a&gt; replaces the actions they use with hardened equivalents, and Guardener&amp;rsquo;s &lt;a href="https://chainguard-docs-preview-git-fix-learning-lab-jsonld.chainguard.app/chainguard/guardener/github/actions-security/"&gt;Hardened Actions&lt;/a&gt; feature can migrate them for you.&lt;/p&gt;</description></item></channel></rss>