<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Automation on Sander Knape</title>
    <link>https://sanderknape.com/tags/automation/</link>
    <description>Recent content in Automation on Sander Knape</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Wed, 13 Jan 2021 16:32:12 +0200</lastBuildDate>
    <atom:link href="https://sanderknape.com/tags/automation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Go crazy with GitHub Actions</title>
      <link>https://sanderknape.com/2021/01/go-crazy-github-actions/</link>
      <pubDate>Wed, 13 Jan 2021 16:32:12 +0200</pubDate>
      <guid>https://sanderknape.com/2021/01/go-crazy-github-actions/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/features/actions&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;GitHub Actions&lt;/a&gt; is a component of GitHub that allows you to create automated workflows. Through the many different &lt;a href=&#34;https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;events&lt;/a&gt; that can trigger workflows you are free to build whatever automation you want. While the most common use case is building CI/CD pipelines, the possibilities are pretty much endless. Check out this list of &lt;a href=&#34;https://github.com/sdras/awesome-actions&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;awesome actions&lt;/a&gt; to get some inspiration.&lt;/p&gt;&#xA;&lt;p&gt;Having spent quite a bit of time with GitHub Actions in the last few months I came across some features that aren&amp;rsquo;t very well documented. It&amp;rsquo;s therefore very well possible that not everyone is familiar with these capabilities. Let&amp;rsquo;s dive into five neat features that you can go crazy with.&lt;/p&gt;</description>
    </item>
    <item>
      <title>From toil to self-service: automate what matters</title>
      <link>https://sanderknape.com/2020/06/from-toil-self-service-automate-matters/</link>
      <pubDate>Mon, 22 Jun 2020 11:44:02 +0200</pubDate>
      <guid>https://sanderknape.com/2020/06/from-toil-self-service-automate-matters/</guid>
      <description>&lt;p&gt;There are a few reasons that I love my job. One of the most important ones is the variety of work. As a cloud/platform engineer, every day is different. Work goes from writing automation in some programming language, setting up a dashboard in a monitoring/logging tool, hardening Linux machines, writing Infrastructure as Code, building (standardized) CI/CD pipelines, giving workshops, analyzing costs, and more.&lt;/p&gt;&#xA;&lt;p&gt;This wide variety of work wouldn&amp;rsquo;t be possible without automation. You have more time to spend on all these things when manual, repetitive work is automated. SRE &lt;a href=&#34;https://landing.google.com/sre/sre-book/chapters/eliminating-toil/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;defines toil&lt;/a&gt; as follows:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Automated deployments to Kubernetes with GitLab</title>
      <link>https://sanderknape.com/2019/02/automated-deployments-kubernetes-gitlab/</link>
      <pubDate>Thu, 28 Feb 2019 13:47:02 +0200</pubDate>
      <guid>https://sanderknape.com/2019/02/automated-deployments-kubernetes-gitlab/</guid>
      <description>&lt;p&gt;In this blog post we&amp;rsquo;ll go through the steps of creating an automated deployment pipeline for Kubernetes using GitLab. In the end we&amp;rsquo;ll have a simple Go application running that very excitingly returns &amp;ldquo;Hello, World!&amp;rdquo;.&lt;/p&gt;&#xA;&lt;h1 id=&#34;prerequisites&#34; class=&#34;relative group&#34;&gt;Prerequisites &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#prerequisites&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p&gt;Before we can begin our quest for automation, we&amp;rsquo;ll need to set up some tools. Many alternatives of course exist to the tools that I pick. Feel free to use any other option, but make sure to make any necessary changes if you are following along with this post.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A custom CloudFormation resource example for CodeDeploy</title>
      <link>https://sanderknape.com/2017/08/custom-cloudformation-resource-example-codedeploy/</link>
      <pubDate>Thu, 17 Aug 2017 21:25:02 +0200</pubDate>
      <guid>https://sanderknape.com/2017/08/custom-cloudformation-resource-example-codedeploy/</guid>
      <description>&lt;p&gt;CloudFormation is the AWS product for Infrastructure as Code. It allows you to provision AWS resources through a template that describes how to configure that resource. Unfortunately, CloudFormation will sometimes be behind on new features released by AWS. Where the AWS console and API will allow you to deploy resources with a certain configuration, in CloudFormation specific settings might simply not yet be available. If its your goal to deploy your AWS environment completely through Infrastructure as Code, this will block you from doing that. Luckily, through &lt;a href=&#34;http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;custom resources&lt;/a&gt;, CloudFormation allows you to extend the templating language and still give you the option to provision resources entirely through CloudFormation.&lt;/p&gt;</description>
    </item>
    <item>
      <title>CloudFormation StackSets: automated cross-account/region deployments</title>
      <link>https://sanderknape.com/2017/07/cloudformation-stacksets-automated-cross-account-region-deployments/</link>
      <pubDate>Wed, 26 Jul 2017 19:53:02 +0200</pubDate>
      <guid>https://sanderknape.com/2017/07/cloudformation-stacksets-automated-cross-account-region-deployments/</guid>
      <description>&lt;p&gt;Yesterday, AWS released &lt;a href=&#34;https://aws.amazon.com/blogs/aws/use-cloudformation-stacksets-to-provision-resources-across-multiple-aws-accounts-and-regions/&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;CloudFormation StackSets&lt;/a&gt;. A StackSet is a set of CloudFormation stacks that can easily be deployed to multiple AWS accounts and/or multiple AWS regions. Before, each stack had to be deployed separately and custom scripts were required to orchestrate deploying to multiple accounts/regions. Therefore, this feature is bound to make the lives of AWS administrators a bit easier.&lt;/p&gt;&#xA;&lt;p&gt;There are loads of use cases for deploying stacks to multiple locations. For example, it&amp;rsquo;s considered a best practice to &lt;a href=&#34;https://www.slideshare.net/AmazonWebServices/aws-security-best-practices&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;enable AWS Config in every region&lt;/a&gt;. This service keeps track of resources in an AWS account and changes to those resources. AWS Config needs to be enabled in every region separately, so a CloudFormation stack is required for every region.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Integration tests with Travis CI</title>
      <link>https://sanderknape.com/2016/09/integration-tests-travis-ci/</link>
      <pubDate>Tue, 20 Sep 2016 19:46:02 +0200</pubDate>
      <guid>https://sanderknape.com/2016/09/integration-tests-travis-ci/</guid>
      <description>&lt;p&gt;Do you write integration tests? What about unit tests? I believe that more people say &amp;ldquo;Yes&amp;rdquo; to the second question than to the first. Which is kinda weird - for many applications, it really isn&amp;rsquo;t that hard to write integration tests. It might not even be necessary to setup your own infrastructure to run these tests. Many CI tools these days allow you to install databases, queues and such on their build agents. With your external dependencies available on your build server, a complementary sets of tests can be run next to your unit tests.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using Let&#39;s Encrypt for free automated SSL certificates</title>
      <link>https://sanderknape.com/2016/09/lets-encrypt-automated-ssl-certificates/</link>
      <pubDate>Thu, 01 Sep 2016 13:07:02 +0200</pubDate>
      <guid>https://sanderknape.com/2016/09/lets-encrypt-automated-ssl-certificates/</guid>
      <description>&lt;p&gt;If you maintain your own server or servers with SSL certicates, you might know how annoying it can be to keep those certificates up to date. Especially when you have a multitude of servers, some possibly even serving the same certificates, this is a hassle to manage. Luckily, there is a solution, and its called Let&amp;rsquo;s Encrypt.&lt;/p&gt;&#xA;&lt;h1 id=&#34;introducing-lets-encrypt&#34; class=&#34;relative group&#34;&gt;Introducing Let&amp;rsquo;s Encrypt &lt;span class=&#34;absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100&#34;&gt;&lt;a class=&#34;group-hover:text-primary-300 dark:group-hover:text-neutral-700&#34; style=&#34;text-decoration-line: none !important;&#34; href=&#34;#introducing-lets-encrypt&#34; aria-label=&#34;Anchor&#34;&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p&gt;Let&amp;rsquo;s Encrypt is a Certificate Authority (CA) that provides an automated method for requesting and renewing free Domain Validated (DV) SSL certificates. It is not possible to request the other certificate types (Organization Validation (OV) and Extended Validation (EV)) through Let&amp;rsquo;s Encrypt. These certificate types require some manual work from the CA and can thus not be automated. If you have good reason to go for an OV or EV certificate, Let&amp;rsquo;s Encrypt is not an option for you. Remember though: each certificate type is equally secure for your website visitors.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Multi-datacenter container orchestration with Nomad and Consul</title>
      <link>https://sanderknape.com/2016/08/nomad-consul-multi-datacenter-container-orchestration/</link>
      <pubDate>Fri, 26 Aug 2016 19:17:02 +0200</pubDate>
      <guid>https://sanderknape.com/2016/08/nomad-consul-multi-datacenter-container-orchestration/</guid>
      <description>&lt;p&gt;Nomad is a distributed, multi-datacenter scheduler for containers, virtual machines and more. It&amp;rsquo;s a tool from Hashicorp, the company that also brings us Consul, a service-discovery tool that allows you to register and discover services. With the latest big release of Nomad (version 0.4), integration with Consul is improved which promises to significantly simplify the creation of a (multi-datacenter) Nomad cluster. You can read more about this release on Hashicorp&amp;rsquo;s &lt;a href=&#34;https://www.hashicorp.com/blog/nomad-0-4.html#clustering&#34; target=&#34;_blank&#34; rel=&#34;noreferrer&#34;&gt;blog&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
