<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>PipeCD – Contribute</title>
    <link>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/</link>
    <description>Recent content in Contribute on PipeCD</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    
	  <atom:link href="https://pipecd.dev/docs-v0.56.x/contribution-guidelines/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs-V0.56.x: Contribute to PipeCD</title>
      <link>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing/</guid>
      <description>
        
        
        &lt;p&gt;PipeCD is an open source project that anyone in the community can use, improve, and enjoy. We&amp;rsquo;d love you to join us!&lt;/p&gt;
&lt;h2 id=&#34;code-of-conduct&#34;&gt;Code of Conduct&lt;/h2&gt;
&lt;p&gt;PipeCD follows the &lt;a href=&#34;https://github.com/cncf/foundation/blob/master/code-of-conduct.md&#34;&gt;CNCF Code of Conduct&lt;/a&gt;. Please read it to understand which actions are acceptable and which are not.&lt;/p&gt;
&lt;h2 id=&#34;ways-to-contribute&#34;&gt;Ways to Contribute&lt;/h2&gt;
&lt;p&gt;There are many ways to contribute, and many don&amp;rsquo;t involve writing code:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Use PipeCD&lt;/strong&gt; — Follow the &lt;a href=&#34;https://pipecd.dev/docs/quickstart/&#34;&gt;Quickstart&lt;/a&gt; and report issues you encounter&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Triage issues&lt;/strong&gt; — Browse &lt;a href=&#34;https://github.com/pipe-cd/pipecd/issues&#34;&gt;open issues&lt;/a&gt;, provide workarounds, ask for clarification, or suggest labels&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fix bugs&lt;/strong&gt; — Issues labeled &lt;a href=&#34;https://github.com/pipe-cd/pipecd/issues?q=is%3Aopen&amp;#43;is%3Aissue&amp;#43;label%3A%22good&amp;#43;first&amp;#43;issue%22&#34;&gt;good first issue&lt;/a&gt; are great starting points&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improve docs&lt;/strong&gt; — See &lt;a href=&#34;../contributing-documentation/&#34;&gt;Contribute to PipeCD Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Participate in discussions&lt;/strong&gt; — Share ideas in &lt;a href=&#34;https://github.com/pipe-cd/pipecd/discussions&#34;&gt;GitHub Discussions&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;development-setup&#34;&gt;Development Setup&lt;/h2&gt;
&lt;h3 id=&#34;project-structure&#34;&gt;Project Structure&lt;/h3&gt;
&lt;p&gt;PipeCD consists of several components:&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Component&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/cmd/pipecd&#34;&gt;cmd/pipecd&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Control Plane — manages deployment data and provides gRPC API&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/cmd/piped&#34;&gt;cmd/piped&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Piped agent — runs in your cluster&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/cmd/pipectl&#34;&gt;cmd/pipectl&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Command-line tool&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/cmd/launcher&#34;&gt;cmd/launcher&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Command executor for remote upgrade&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/web&#34;&gt;web&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Web UI&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/tree/master/docs&#34;&gt;docs&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Documentation&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Go (check &lt;code&gt;go.mod&lt;/code&gt; for version)&lt;/li&gt;
&lt;li&gt;Node.js and Yarn (for web development)&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;kubectl&lt;/li&gt;
&lt;li&gt;kind (Kubernetes in Docker)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;starting-a-local-environment&#34;&gt;Starting a Local Environment&lt;/h3&gt;
&lt;h4 id=&#34;1-update-dependencies&#34;&gt;1. Update Dependencies&lt;/h4&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make update/go-deps
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make update/web-deps
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;Starting a local environment may fail if dependencies are not up to date.&lt;/p&gt;&lt;/blockquote&gt;
&lt;h4 id=&#34;2-start-local-cluster-and-registry&#34;&gt;2. Start Local Cluster and Registry&lt;/h4&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make up/local-cluster
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This creates the &lt;code&gt;pipecd&lt;/code&gt; Kubernetes namespace and starts a local registry.&lt;/p&gt;
&lt;p&gt;To clean up later:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make down/local-cluster
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;3-run-control-plane&#34;&gt;3. Run Control Plane&lt;/h4&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make run/pipecd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To stop:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make stop/pipecd
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;4-port-forward&#34;&gt;4. Port Forward&lt;/h4&gt;
&lt;p&gt;In a separate terminal:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kubectl port-forward -n pipecd svc/pipecd &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;8080&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id=&#34;5-access-the-ui&#34;&gt;5. Access the UI&lt;/h4&gt;
&lt;p&gt;Open &lt;a href=&#34;http://localhost:8080?project=quickstart&#34;&gt;http://localhost:8080?project=quickstart&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Login credentials:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Username:&lt;/strong&gt; &lt;code&gt;hello-pipecd&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Password:&lt;/strong&gt; &lt;code&gt;hello-pipecd&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;running-piped-agent&#34;&gt;Running Piped Agent&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Ensure Control Plane is running and accessible.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Register a new Piped:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Go to Settings → Piped (or &lt;a href=&#34;http://localhost:8080/settings/piped?project=quickstart&#34;&gt;http://localhost:8080/settings/piped?project=quickstart&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Add a new piped and copy the generated Piped ID and base64 key&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Create &lt;code&gt;piped-config.yaml&lt;/code&gt; in the repository root:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; Create a &lt;code&gt;.dev&lt;/code&gt; folder (gitignored) for multiple config files.&lt;/p&gt;&lt;/blockquote&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;apiVersion&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;pipecd.dev/v1beta1&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;kind&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;Piped&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;spec&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;projectID&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;quickstart&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;pipedID&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;YOUR_PIPED_ID&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;pipedKeyData&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;YOUR_PIPED_BASE64_KEY&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;apiAddress&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;localhost:8080&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;repositories&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;- &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;repoId&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;example&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;remote&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;git@github.com:pipe-cd/examples.git&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;branch&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;master&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;syncInterval&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;1m&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;platformProviders&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;    &lt;/span&gt;- &lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;example-kubernetes&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;KUBERNETES&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;      &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;config&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;        &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;kubeConfigPath&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;/path/to/.kube/config&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Start the Piped agent:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make run/piped &lt;span style=&#34;color:#000&#34;&gt;CONFIG_FILE&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;path/to/piped-config.yaml &lt;span style=&#34;color:#000&#34;&gt;INSECURE&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#204a87&#34;&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;useful-commands&#34;&gt;Useful Commands&lt;/h3&gt;
&lt;p&gt;Check the &lt;a href=&#34;https://github.com/pipe-cd/pipecd/blob/master/Makefile&#34;&gt;Makefile&lt;/a&gt; for available commands. Common ones:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make check          &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Run all checks (lint, test, etc.)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make test/go        &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Run Go tests&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make test/web       &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Run web tests&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make build/go       &lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;# Build Go binaries&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;pull-request-process&#34;&gt;Pull Request Process&lt;/h2&gt;
&lt;h3 id=&#34;before-you-start&#34;&gt;Before You Start&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Find or create an issue&lt;/strong&gt; — Check if an issue exists, or open one for new features/bugs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Claim the issue&lt;/strong&gt; — Comment &amp;ldquo;I&amp;rsquo;d like to work on this&amp;rdquo; to get assigned (expected to submit PR within 7 days)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Investigate first&lt;/strong&gt; — Discuss your approach in the issue before coding to reduce back-and-forth on the PR&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Focus on one issue&lt;/strong&gt; — Especially for newcomers, work on one issue at a time&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;submitting-a-pull-request&#34;&gt;Submitting a Pull Request&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Keep PRs small&lt;/strong&gt; — Aim for ~300 lines of diff. Split larger changes into multiple PRs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Use descriptive titles&lt;/strong&gt; — Follow commit message style: present tense, capitalize first letter&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Add imports to Terraform plan result
&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Sign off commits&lt;/strong&gt; — Required for DCO compliance:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git commit -s -m &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Your commit message&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Run checks before submitting:&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make check
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Target the &lt;code&gt;master&lt;/code&gt; branch&lt;/strong&gt; — All PRs should be opened against &lt;code&gt;master&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;user-facing-changes&#34;&gt;User-Facing Changes&lt;/h3&gt;
&lt;p&gt;If your change affects users, update the PR description:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-md&#34; data-lang=&#34;md&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;**Does this PR introduce a user-facing change?**:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;-&lt;/span&gt; **How are users affected by this change**:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;-&lt;/span&gt; **Is this breaking change**:
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;-&lt;/span&gt; **How to migrate (if breaking change)**:
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;licensing&#34;&gt;Licensing&lt;/h3&gt;
&lt;p&gt;By contributing, you agree to license your contributions under the Apache License Version 2.0. Add this header to new files:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-go&#34; data-lang=&#34;go&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// Copyright 2025 The PipeCD Authors.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;//&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// Licensed under the Apache License, Version 2.0 (the &amp;#34;License&amp;#34;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// you may not use this file except in compliance with the License.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// You may obtain a copy of the License at&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;//&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;//     http://www.apache.org/licenses/LICENSE-2.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;//&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// Unless required by applicable law or agreed to in writing, software&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// distributed under the License is distributed on an &amp;#34;AS IS&amp;#34; BASIS,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// See the License for the specific language governing permissions and&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;// limitations under the License.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;reporting-issues&#34;&gt;Reporting Issues&lt;/h2&gt;
&lt;h3 id=&#34;bugs&#34;&gt;Bugs&lt;/h3&gt;
&lt;p&gt;File bugs at &lt;a href=&#34;https://github.com/pipe-cd/pipecd/issues/new?assignees=&amp;amp;labels=kind%2Fbug&amp;amp;projects=&amp;amp;template=bug-report.md&#34;&gt;GitHub Issues&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One issue, one bug&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Provide reproduction steps&lt;/strong&gt; — List all steps to reproduce the issue&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;security-issues&#34;&gt;Security Issues&lt;/h3&gt;
&lt;p&gt;Report security vulnerabilities privately via Slack or Twitter DM to maintainers listed in &lt;a href=&#34;https://github.com/pipe-cd/pipecd/blob/master/MAINTAINERS.md&#34;&gt;MAINTAINERS.md&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;feature-requests&#34;&gt;Feature Requests&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/issues/new?assignees=&amp;amp;labels=kind%2Fenhancement&amp;amp;projects=&amp;amp;template=enhancement.md&#34;&gt;Enhancement request&lt;/a&gt; — Improvements to existing features&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/pipe-cd/pipecd/issues/new?assignees=&amp;amp;labels=kind%2Ffeature&amp;amp;projects=&amp;amp;template=new-feature.md&#34;&gt;Feature request&lt;/a&gt; — Entirely new features&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;join-the-community&#34;&gt;Join the Community&lt;/h2&gt;
&lt;h3 id=&#34;slack&#34;&gt;Slack&lt;/h3&gt;
&lt;p&gt;We have a &lt;code&gt;#pipecd&lt;/code&gt; channel on &lt;a href=&#34;https://cloud-native.slack.com/&#34;&gt;CNCF Slack&lt;/a&gt; for discussions and help. You can also assist other users in the channel.&lt;/p&gt;
&lt;h3 id=&#34;community-meetings&#34;&gt;Community Meetings&lt;/h3&gt;
&lt;p&gt;We host &lt;a href=&#34;https://zoom-lfx.platform.linuxfoundation.org/meeting/96831504919?password=2f60b8ec-5896-40c8-aa1d-d551ab339d00&#34;&gt;PipeCD Development and Community Meetings&lt;/a&gt; every 2 weeks where we share project news, demos, answer questions, and triage issues. View the &lt;a href=&#34;https://bit.ly/pipecd-mtg-notes&#34;&gt;Meeting Notes and Agenda&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;become-a-member&#34;&gt;Become a Member&lt;/h3&gt;
&lt;p&gt;If you&amp;rsquo;d like to join the pipe-cd GitHub organization:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Have at least 5 PRs merged to repositories in the pipe-cd organization&lt;/li&gt;
&lt;li&gt;Attend a PipeCD public community meeting&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Membership isn&amp;rsquo;t required to contribute—it&amp;rsquo;s for those who want to contribute long-term or take ownership of features.&lt;/p&gt;
&lt;h2 id=&#34;what-happens-next&#34;&gt;What Happens Next?&lt;/h2&gt;
&lt;p&gt;The maintainers will review your PR. We&amp;rsquo;ll help with obvious issues and work with you to get it merged. Thank you for contributing!&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs-V0.56.x: Architectural overview</title>
      <link>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/architectural-overview/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/architectural-overview/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://pipecd.dev/images/architecture-overview.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p style=&#34;text-align: center;&#34;&gt;
Component Architecture
&lt;/p&gt;
&lt;h3 id=&#34;piped&#34;&gt;Piped&lt;/h3&gt;
&lt;p&gt;A single binary component runs in your cluster, your local network to handle the deployment tasks.
It can be run inside a Kubernetes cluster by simply starting a Pod or a Deployment.
This component is designed to be stateless, so it can also be run in a single VM or even your local machine.&lt;/p&gt;
&lt;h3 id=&#34;control-plane&#34;&gt;Control Plane&lt;/h3&gt;
&lt;p&gt;A centralized component manages deployment data and provides gRPC API for connecting &lt;code&gt;piped&lt;/code&gt;s as well as all web-functionalities of PipeCD such as
authentication, showing deployment list/details, application list/details, delivery insights&amp;hellip;&lt;/p&gt;
&lt;p&gt;Control Plane contains the following components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;server&lt;/code&gt;: a service to provide api for piped, web and serve static assets for web.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ops&lt;/code&gt;: a service to provide administrative features for Control Plane owner like adding/managing projects.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cache&lt;/code&gt;: a redis cache service for caching internal data.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;datastore&lt;/code&gt;: data storage for storing deployment, application data
&lt;ul&gt;
&lt;li&gt;this can be a fully-managed service such as &lt;code&gt;Firestore&lt;/code&gt;, &lt;code&gt;Cloud SQL&lt;/code&gt;&amp;hellip;&lt;/li&gt;
&lt;li&gt;or a self-managed such as &lt;code&gt;MySQL&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;filestore&lt;/code&gt;: file storage for storing logs, application states
&lt;ul&gt;
&lt;li&gt;this can a fully-managed service such as &lt;code&gt;GCS&lt;/code&gt;, &lt;code&gt;S3&lt;/code&gt;&amp;hellip;&lt;/li&gt;
&lt;li&gt;or a self-managed service such as &lt;code&gt;Minio&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, see &lt;a href=&#34;../../user-guide/managing-controlplane/architecture-overview/&#34;&gt;Architecture overview of Control Plane&lt;/a&gt;.&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs-V0.56.x: Contribute to PipeCD Blogs</title>
      <link>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing-blogs/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing-blogs/</guid>
      <description>
        
        
        &lt;p&gt;We welcome blog contributions from the community! Blog posts are a great way to share your experiences, tutorials, and insights about PipeCD with other users.&lt;/p&gt;
&lt;h2 id=&#34;what-makes-a-good-blog-post&#34;&gt;What makes a good blog post?&lt;/h2&gt;
&lt;p&gt;Blog posts can cover a variety of topics, including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Announcements&lt;/strong&gt;: New features, releases, or project updates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tutorials&lt;/strong&gt;: Step-by-step guides on using PipeCD features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use cases&lt;/strong&gt;: How you or your organization uses PipeCD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Best practices&lt;/strong&gt;: Tips and tricks for getting the most out of PipeCD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integrations&lt;/strong&gt;: How to integrate PipeCD with other tools&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;where-blog-posts-live&#34;&gt;Where blog posts live&lt;/h2&gt;
&lt;p&gt;Blog posts are located in the &lt;code&gt;/docs/content/en/blog/&lt;/code&gt; directory within the &lt;a href=&#34;https://github.com/pipe-cd/pipecd&#34;&gt;pipe-cd/pipecd repository&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;blog-post-format&#34;&gt;Blog post format&lt;/h2&gt;
&lt;p&gt;Each blog post is a Markdown file with YAML front matter. Here&amp;rsquo;s the structure:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000&#34;&gt;---&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;date&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;2025-01-03&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;title&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Your Blog Post Title&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;linkTitle&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Short Title for Navigation&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;weight&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;980&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;description&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;A brief description of your post&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;author&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;Your Name ([@your-github-handle](https://github.com/your-github-handle))&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;categories&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Announcement&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;tags&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Tag1&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;Tag2&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;---&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;Your content here...&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;front-matter-fields&#34;&gt;Front matter fields&lt;/h3&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Field&lt;/th&gt;
          &lt;th&gt;Required&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;date&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;Publication date in &lt;code&gt;YYYY-MM-DD&lt;/code&gt; format&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;title&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;Full title of your blog post&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;linkTitle&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;Shorter title used in navigation menus&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;weight&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;Controls ordering (lower = newer, typically use ~980-990)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;description&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;No&lt;/td&gt;
          &lt;td&gt;Brief summary for SEO and previews&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;author&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;Your name with GitHub profile link&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;categories&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
          &lt;td&gt;One of: &lt;code&gt;Announcement&lt;/code&gt;, &lt;code&gt;Tutorial&lt;/code&gt;, &lt;code&gt;Release&lt;/code&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;tags&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;No&lt;/td&gt;
          &lt;td&gt;Relevant keywords for your post&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;content-guidelines&#34;&gt;Content guidelines&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Use clear, concise language&lt;/li&gt;
&lt;li&gt;Include code examples where appropriate (use fenced code blocks with language identifiers)&lt;/li&gt;
&lt;li&gt;Add images to &lt;code&gt;/docs/static/images/&lt;/code&gt; and reference them as &lt;code&gt;![alt text](/images/your-image.png)&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Structure your post with headings (&lt;code&gt;##&lt;/code&gt;, &lt;code&gt;###&lt;/code&gt;) for readability&lt;/li&gt;
&lt;li&gt;Include a conclusion or summary section&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;how-to-submit-your-blog-post&#34;&gt;How to submit your blog post&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Fork and clone&lt;/strong&gt; the &lt;a href=&#34;https://github.com/pipe-cd/pipecd&#34;&gt;pipecd repository&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a branch&lt;/strong&gt; for your blog post:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git checkout -b blog/your-post-title
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create your blog post&lt;/strong&gt; file in &lt;code&gt;/docs/content/en/blog/&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;touch docs/content/en/blog/your-post-title.md
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Add any images&lt;/strong&gt; to &lt;code&gt;/docs/static/images/&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Preview locally&lt;/strong&gt; by running:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make run/site
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Then visit &lt;code&gt;http://localhost:1313/blog/&lt;/code&gt; to see your post.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Commit and push&lt;/strong&gt; your changes:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git add .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git commit -s -m &lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;blog: add post about your-topic&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git push origin blog/your-post-title
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Open a Pull Request&lt;/strong&gt; against the &lt;code&gt;master&lt;/code&gt; branch&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;review-process&#34;&gt;Review process&lt;/h2&gt;
&lt;p&gt;A maintainer will review your blog post for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Technical accuracy&lt;/li&gt;
&lt;li&gt;Clarity and readability&lt;/li&gt;
&lt;li&gt;Adherence to the format guidelines&lt;/li&gt;
&lt;li&gt;Appropriate use of images and code examples&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Feel free to reach out on the &lt;a href=&#34;https://cloud-native.slack.com/&#34;&gt;#pipecd Slack channel&lt;/a&gt; if you have questions or want feedback on your draft before submitting.&lt;/p&gt;
&lt;p&gt;Thank you for contributing to the PipeCD blog!&lt;/p&gt;

      </description>
    </item>
    
    <item>
      <title>Docs-V0.56.x: Contribute to PipeCD Documentation</title>
      <link>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing-documentation/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://pipecd.dev/docs-v0.56.x/contribution-guidelines/contributing-documentation/</guid>
      <description>
        
        
        &lt;p&gt;Welcome! We are so happy you&amp;rsquo;re interested in helping improve our documentation. Your contributions make the project better for everyone.&lt;/p&gt;
&lt;p&gt;This guide explains how you can contribute to the PipeCD Documentation, which resides on our official website, &lt;a href=&#34;https://pipecd.dev&#34;&gt;https://pipecd.dev&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;where-to-find-the-docs&#34;&gt;Where to find the docs&lt;/h2&gt;
&lt;p&gt;Our documentation is located in the &lt;code&gt;/docs&lt;/code&gt; folder within the &lt;a href=&#34;https://github.com/pipe-cd/pipecd&#34;&gt;pipe-cd/pipecd repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The content files are written in Markdown and live inside &lt;code&gt;/docs/content/en/&lt;/code&gt;. You&amp;rsquo;ll notice two types of documentation folders:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;/docs-dev/&lt;/code&gt;: This is for documentation related to unreleased, in-development features.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/docs-v0.x.x/&lt;/code&gt; (and &lt;code&gt;/docs-v1.0.x/&lt;/code&gt;): These folders contain the documentation for specific released versions of PipeCD.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;how-to-build-the-docs-locally&#34;&gt;How to build the docs locally&lt;/h2&gt;
&lt;p&gt;To preview your changes as you work, you must run the documentation website on your local machine.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Install Prerequisite:&lt;/strong&gt; You must have the &lt;strong&gt;extended&lt;/strong&gt; version of &lt;a href=&#34;https://gohugo.io/getting-started/installing/&#34;&gt;Hugo (v0.92.1 or higher)&lt;/a&gt; installed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Run the Server:&lt;/strong&gt; From the root of the &lt;code&gt;pipecd&lt;/code&gt; repository, run the following command:
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make run/site
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Preview:&lt;/strong&gt; Open your browser and go to &lt;code&gt;http://localhost:1313&lt;/code&gt; to see the live-reloading site.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;how-to-submit-your-changes-the-pr-process&#34;&gt;How to submit your changes (The PR Process)&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Create a Branch:&lt;/strong&gt; Create a new branch for your changes (e.g., &lt;code&gt;git checkout -b my-docs-fix&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Make Your Changes:&lt;/strong&gt; Edit the necessary documentation files. If you are fixing an issue in the current documentation, remember to edit the file in both the &lt;code&gt;/docs-dev/&lt;/code&gt; and the latest &lt;code&gt;/docs-vx.y.z/&lt;/code&gt; folders.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Commit and Push:&lt;/strong&gt; Commit your changes with a clear message and push your branch to your fork.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Open a Pull Request:&lt;/strong&gt; Go to the PipeCD repository and open a Pull Request. In the description, please link to the issue you are fixing (e.g., &lt;code&gt;Addresses #6124&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Review:&lt;/strong&gt; A maintainer will review your PR, provide feedback, and merge it.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thank you for contributing!&lt;/p&gt;

      </description>
    </item>
    
  </channel>
</rss>
