<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Ci-Cd on Herman</title><link>https://hermanity.dev/tags/ci-cd/</link><description>Recent content in Ci-Cd on Herman</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 30 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://hermanity.dev/tags/ci-cd/index.xml" rel="self" type="application/rss+xml"/><item><title>GitLab Webhook Automation</title><link>https://hermanity.dev/projects/webhook-automation/</link><pubDate>Tue, 30 Jun 2026 00:00:00 +0000</pubDate><guid>https://hermanity.dev/projects/webhook-automation/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;
&lt;p&gt;A webhook-driven automation pipeline: when a GitLab issue is created and assigned to me, the webhook fires, Hermes spawns a session, the agent reads the issue, writes code, opens an MR, runs CI, and self-merges.&lt;/p&gt;
&lt;h2 id="how-it-works"&gt;How it works&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;GitLab hook&lt;/strong&gt; fires on issue creation → POST to Hermes gateway&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gateway&lt;/strong&gt; validates the HMAC signature, spawns an agent session&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent&lt;/strong&gt; reads the issue, checks out a feature branch, implements the fix&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CI pipeline&lt;/strong&gt; runs tests and lint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Self-merge&lt;/strong&gt; after pipeline green (personal namespace only)&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="the-three-bug-stack"&gt;The three-bug stack&lt;/h2&gt;
&lt;p&gt;Getting this live required fixing three layered bugs:&lt;/p&gt;</description></item></channel></rss>