<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>filesystem on SOW</title>
    <link>https://sow.pgsty.com/tags/filesystem/</link>
    <description>Recent content in filesystem on SOW</description>
    <generator>Hugo</generator>
    <language>en</language>
    
    
    
      <lastBuildDate>Fri, 28 Aug 2026 18:32:04 +0800</lastBuildDate>
    
    
      <atom:link href="https://sow.pgsty.com/tags/filesystem/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>Serve and Publish Repositories</title>
        <link>https://sow.pgsty.com/docs/tutorial/serving/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/docs/tutorial/serving/</guid>
        <description>&lt;p&gt;SOW writes static files; it is not an HTTP server. This guide keeps the writable Workspace&#xA;separate from the path Nginx serves.&lt;/p&gt;&#xA;&lt;h2 id=&#34;public-and-private-paths&#34;&gt;Public and private paths&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Mode&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Public unit&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Never serve&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Plain&lt;/td&gt;&#xA;      &lt;td&gt;the directory passed to &lt;code&gt;sow create&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;transient &lt;code&gt;.sow-plain-stage-*&lt;/code&gt; output; no durable journal&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Managed&lt;/td&gt;&#xA;      &lt;td&gt;one Repository&amp;rsquo;s complete &lt;code&gt;pool/ + dists/&lt;/code&gt; tree&lt;/td&gt;&#xA;      &lt;td&gt;Workspace &lt;code&gt;sow.yml&lt;/code&gt;, &lt;code&gt;.sow/&lt;/code&gt;, SQLite, locks, journals, staging&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;For the workspace in &lt;a href=&#34;https://sow.pgsty.com/docs/start/workspace/&#34;&gt;First Workspace&lt;/a&gt;, the source Repository is&#xA;&lt;code&gt;/srv/sow/local&lt;/code&gt;. Do not make &lt;code&gt;/srv/sow&lt;/code&gt; the document root.&lt;/p&gt;</description>
      </item>
    <item>
        <title>sow publish</title>
        <link>https://sow.pgsty.com/docs/command/publish/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/docs/command/publish/</guid>
        <description>&lt;p&gt;&lt;code&gt;sow publish&lt;/code&gt; delivers one Repository&amp;rsquo;s current Built Generation to a named target from the&#xA;&lt;code&gt;targets:&lt;/code&gt; map in &lt;code&gt;sow.yml&lt;/code&gt;. The target binds its Repository and provider; the command does not accept&#xA;&lt;code&gt;--repo&lt;/code&gt; or &lt;code&gt;--dist&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;synopsis&#34;&gt;Synopsis&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-8c0c3742-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;text&#34; data-td-line-count=&#34;1&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-8c0c3742-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sow publish TARGET [--abort | --rebind] [-C|--workdir DIR] [-T|--timeout DUR | -N|--no-wait] [--json]&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Flag&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Meaning&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Default&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--abort&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Abandon a reconciled attempt that has not reached durable commit intent&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--rebind&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Confirm and record permitted target name/public endpoint/cache-TTL changes&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-C, --workdir DIR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Workspace discovery start directory&lt;/td&gt;&#xA;      &lt;td&gt;current directory&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-T, --timeout DUR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Maximum Repository-lock wait; &lt;code&gt;0&lt;/code&gt; waits indefinitely&lt;/td&gt;&#xA;      &lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-N, --no-wait&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Fail immediately when the lock is held&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--json&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;Emit the &lt;code&gt;sow.cli/v1&lt;/code&gt; envelope&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;code&gt;TARGET&lt;/code&gt; must name a configured &lt;code&gt;filesystem&lt;/code&gt; or &lt;code&gt;r2&lt;/code&gt; publication target. &lt;code&gt;--abort&lt;/code&gt; and&#xA;&lt;code&gt;--rebind&lt;/code&gt; are mutually exclusive.&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
