<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Deployment on Cat in a Shell</title><link>https://catinashell.de/tags/deployment/</link><description>Recent content in Deployment on Cat in a Shell</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 03 Sep 2026 12:44:13 +1000</lastBuildDate><atom:link href="https://catinashell.de/tags/deployment/index.xml" rel="self" type="application/rss+xml"/><item><title>Deploy a Project Securely via a Ci Workflow</title><link>https://catinashell.de/posts/deploy-a-project-securely-via-a-ci-workflow/</link><pubDate>Thu, 03 Sep 2026 04:00:00 +0200</pubDate><guid>https://catinashell.de/posts/deploy-a-project-securely-via-a-ci-workflow/</guid><description>&lt;p&gt;&lt;strong&gt;So what does this in the first place?&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;It allows you to deploy everything you push to a specific branch (e.g. master) (or make a release) automatically. Normally you would need to git pull, build, upload the output to your server, set the permissions and done. Really annoying tbh if you build stuff often.&lt;/p&gt;&#10;&lt;style&gt;&#10;.heading {&#10; text-decoration: none;&#10;}&#10;.heading:hover {&#10; color: rgba(200,200,255,0.7);&#10;}&#10;.heading-anchor {&#10; margin-left: -1em;&#10; position: absolute;&#10; opacity: 0;&#10; text-decoration: none;&#10; transition: opacity 0.15s;&#10;}&#10;h1:hover .heading-anchor,&#10;h2:hover .heading-anchor,&#10;h3:hover .heading-anchor,&#10;h4:hover .heading-anchor,&#10;h5:hover .heading-anchor,&#10;h6:hover .heading-anchor {&#10; opacity: 1;&#10;}&#10;&lt;/style&gt;&#10;&#10;&lt;a href="#how-it-works" class="heading"&gt;&#10;&lt;h2 id="how-it-works"&gt;&#10; &lt;div class="heading-anchor" aria-label="Link to this section"&gt;&#10; #&#10; &lt;/div&gt;&#10; How it works&#10;&#10;&lt;/h2&gt;&#10;&lt;/a&gt;&#10;&lt;p&gt;We create a new user on our server and give it the minimum permissions it needs to deploy our site / project (for a static page, just rrsync) and then we let caddy host the thing (if its a static site).&lt;/p&gt;</description></item></channel></rss>