<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Build on OINK</title><link>https://pgsty.github.io/oink.pgsty.com/project/build/</link><description>Recent content in Build on OINK</description><generator>Hugo</generator><language>en-US</language><atom:link href="https://pgsty.github.io/oink.pgsty.com/project/build/index.xml" rel="self" type="application/rss+xml"/><item><title>CI/CD</title><link>https://pgsty.github.io/oink.pgsty.com/project/build/ci-cd/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pgsty.github.io/oink.pgsty.com/project/build/ci-cd/</guid><description>&lt;h2 id="agent-support-checks"&gt;Agent-support checks&lt;a class="td-heading-self-link" href="#agent-support-checks" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The site has an &lt;a href="https://afdocs.dev/"&gt;AFDocs&lt;/a&gt; configuration and npm script to generate a scorecard
locally:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Config: &lt;a href="https://github.com/pgsty/oink.pgsty.com/blob/main/agent-docs.config.yml"&gt;agent-docs.config.yml&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Script: &lt;code&gt;_check:afdocs&lt;/code&gt; in &lt;a href="https://github.com/pgsty/oink.pgsty.com/blob/main/package.json"&gt;package.json&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To generate a fresh scorecard, run each of these commands in separate terminals:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npm run serve &lt;span class="c1"&gt;# From one terminal&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npm run check:afdocs:dev &lt;span class="c1"&gt;# From another terminal&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The latter command saves the generated scorecard to
&lt;code&gt;docs/content/agent-support/afdocs-scorecard.txt&lt;/code&gt; under &lt;code&gt;content&lt;/code&gt;, which will be
included in &lt;a href="https://pgsty.github.io/oink.pgsty.com/docs/content/agent-support/#scorecard-examples"&gt;Scorecard examples&lt;/a&gt; on the next build.&lt;/p&gt;
&lt;p&gt;Note that the scorecard generation is not run as a part of the full CI/CD
pipeline. It needs to be run manually.&lt;/p&gt;</description></item><item><title>Git repository layout and branch model</title><link>https://pgsty.github.io/oink.pgsty.com/project/build/git-repo/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://pgsty.github.io/oink.pgsty.com/project/build/git-repo/</guid><description>&lt;h2 id="repositories"&gt;Repositories&lt;a class="td-heading-self-link" href="#repositories" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Oink uses two focused repositories:&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Repository&lt;/th&gt;
					&lt;th&gt;Responsibility&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a href="https://github.com/pgsty/oink"&gt;Oink theme&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Published Hugo Module, layouts, assets, and i18n&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;a href="https://github.com/pgsty/oink.pgsty.com"&gt;Oink project site&lt;/a&gt;&lt;/td&gt;
					&lt;td&gt;Documentation, examples, regression tests, and CI&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The theme repository has no embedded example site or npm workspace. Consumer
sites import &lt;code&gt;github.com/pgsty/oink&lt;/code&gt;; the project site is one such consumer.&lt;/p&gt;
&lt;p&gt;For local development, clone both repositories as siblings and connect them with
an ignored Go workspace:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;~/pgsty/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── oink/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── oink.pgsty.com/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; ~/pgsty/oink.pgsty.com
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go work init .
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go work edit -replace&lt;span class="o"&gt;=&lt;/span&gt;github.com/pgsty/oink&lt;span class="o"&gt;=&lt;/span&gt;../oink
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;HUGO_MODULE_WORKSPACE&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;go.work
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npm install
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npm run serve
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="branch-model"&gt;Branch model&lt;a class="td-heading-self-link" href="#branch-model" aria-label="Heading self-link"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The theme repository uses:&lt;/p&gt;</description></item></channel></rss>