53 lines
5.8 KiB
XML
53 lines
5.8 KiB
XML
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||
<channel>
|
||
<title>Dev Logbook</title>
|
||
<link>https://blog.rakowskiii.com/</link>
|
||
<description>Recent content on Dev Logbook</description>
|
||
<generator>Hugo -- 0.145.0</generator>
|
||
<language>en-us</language>
|
||
<lastBuildDate>Thu, 27 Feb 2025 00:00:00 +0000</lastBuildDate>
|
||
<atom:link href="https://blog.rakowskiii.com/index.xml" rel="self" type="application/rss+xml" />
|
||
<item>
|
||
<title>Automating Hugo Deployment with Gitea Actions</title>
|
||
<link>https://blog.rakowskiii.com/posts/first-attempt/</link>
|
||
<pubDate>Thu, 27 Feb 2025 00:00:00 +0000</pubDate>
|
||
<guid>https://blog.rakowskiii.com/posts/first-attempt/</guid>
|
||
<description><p>Recently, I tried setting up <strong>Gitea Actions</strong> to automatically update my Hugo blog whenever I pushed new content. The idea was simple:</p>
|
||
<ul>
|
||
<li>Use Gitea’s built-in CI/CD to pull the repo,</li>
|
||
<li>Build the site using Hugo,</li>
|
||
<li>Deploy it to the server.</li>
|
||
</ul>
|
||
<h2 id="setting-up-gitea-actions">Setting Up Gitea Actions</h2>
|
||
<p>First, I created a <code>.gitea/workflows/deploy.yml</code> file with the following steps:</p>
|
||
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#f92672">name</span>: <span style="color:#ae81ff">Deploy Hugo Site</span>
|
||
</span></span><span style="display:flex;"><span>
|
||
</span></span><span style="display:flex;"><span><span style="color:#f92672">on</span>:
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">push</span>:
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">branches</span>:
|
||
</span></span><span style="display:flex;"><span> - <span style="color:#ae81ff">main</span>
|
||
</span></span><span style="display:flex;"><span>
|
||
</span></span><span style="display:flex;"><span><span style="color:#f92672">jobs</span>:
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">build</span>:
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">runs-on</span>: <span style="color:#ae81ff">ubuntu-latest</span>
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">steps</span>:
|
||
</span></span><span style="display:flex;"><span> - <span style="color:#f92672">name</span>: <span style="color:#ae81ff">Clone repository</span>
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">uses</span>: <span style="color:#ae81ff">actions/checkout@v3</span>
|
||
</span></span><span style="display:flex;"><span>
|
||
</span></span><span style="display:flex;"><span> - <span style="color:#f92672">name</span>: <span style="color:#ae81ff">Install Hugo</span>
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">run</span>: |<span style="color:#e6db74">
|
||
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> sudo apt update &amp;&amp; sudo apt install -y hugo</span>
|
||
</span></span><span style="display:flex;"><span>
|
||
</span></span><span style="display:flex;"><span> - <span style="color:#f92672">name</span>: <span style="color:#ae81ff">Build site</span>
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">run</span>: <span style="color:#ae81ff">hugo -D</span>
|
||
</span></span><span style="display:flex;"><span>
|
||
</span></span><span style="display:flex;"><span> - <span style="color:#f92672">name</span>: <span style="color:#ae81ff">Deploy to server</span>
|
||
</span></span><span style="display:flex;"><span> <span style="color:#f92672">run</span>: |<span style="color:#e6db74">
|
||
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74"> scp -r public/* user@server:/var/www/html/</span>
|
||
</span></span></code></pre></div><h1 id="authentication-issues-">Authentication Issues 😩</h1>
|
||
<p>To deploy, I needed SSH access to the server. Gitea doesn’t have built-in secrets management (like GitHub Actions), so I had to hardcode my SSH private key inside the workflow.</p></description>
|
||
</item>
|
||
</channel>
|
||
</rss>
|