{"id":348,"date":"2022-03-29T14:42:00","date_gmt":"2022-03-29T14:42:00","guid":{"rendered":"https:\/\/www.simplybusiness.co.uk\/building-a-custom-cicd-system\/"},"modified":"2025-05-22T13:17:05","modified_gmt":"2025-05-22T13:17:05","slug":"building-a-custom-cicd-system","status":"publish","type":"post","link":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system","title":{"rendered":"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The engineering team at Simply Business deploy our many apps to production over 300 times a week. Until recently, we&#8217;ve used Jenkins as the main technology for our continuous integration and continuous deployment&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/CI\/CD\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">(CI\/CD)<\/a>&nbsp;needs. However, we faced some issues with Jenkins, so our DevOps engineers set about finding a better way to support our tech organisation when it came to the reliability, performance and usability of our CI\/CD system. With that in mind, we&#8217;ve developed and deployed a home-grown solution to handle our CI\/CD needs, which we refer to as&nbsp;<em>Huxley<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Continuous deployment tooling<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Our DevOps engineers have been working for many years on building our in-house continuous deployment platform. We&#8217;ve developed a collection of tools and&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Infrastructure_as_code\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">Infrastructure-as-Code<\/a>&nbsp;(IaC) scripts that provide our engineers with a toolbox for easily scaffolding and deploying applications on&nbsp;<a href=\"https:\/\/aws.amazon.com\/about-aws\/global-infrastructure\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">AWS infrastructure<\/a>. A core part of the toolbox is a&nbsp;<a href=\"https:\/\/docs.docker.com\/engine\/reference\/commandline\/image\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">Docker image<\/a>&nbsp;containing scripts and the logic to execute those scripts. The Docker image runs through a custom command-line tool called&nbsp;<code>bnw_runner<\/code>, which enables our engineers to deploy applications in any environment, whether locally or on a build agent. The criticality of our deployment toolbox will be discussed later on.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Challenges with Jenkins<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">While Jenkins is well-known as the chief deployment tool for many companies, from start-ups to enterprises, it has a number of shortcomings that are acknowledged across the industry and which for our DevOps operations are becoming more prevalent.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Many of our engineers found the Jenkins user interface to be somewhat unintuitive, and when issues diverged from the&nbsp;<em>happy path<\/em>&nbsp;of deployment, they had issues debugging the actual root cause. Jenkins was also not nearly as stable as many would expect. Engineers would often experience connectivity issues between the Jenkins built-in node and Jenkins agents. In addition, we would run into issues where the Jenkins agents would run out of disk space and were unable to free up any space. All builds would fail until agents were manually terminated and new agents were spun up. This, combined with disk space management issues on the agents themselves, would lead to frustration as engineers attempted to deploy code to customers as quickly as possible. Taking on board our engineers&#8217; experiences with Jenkins, the DevOps team started looking into building a custom solution to address these issues.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.tech.sb\/the-team\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" height=\"368\" width=\"1024\" src=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?w=1024\" alt=\"sb-tech-site-banner\" class=\"wp-image-12317\" srcset=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp 1152w, https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?resize=800,288 800w, https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?resize=768,276 768w, https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?resize=1024,368 1024w, https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?resize=150,54 150w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Our custom-built CI\/CD alternative to Jenkins<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After a year of design and development, the DevOps team created an in-house CI\/CD deployment solution, using&nbsp;<a href=\"https:\/\/docs.github.com\/en\/actions\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">GitHub Actions<\/a>&nbsp;and&nbsp;<a href=\"https:\/\/aws.amazon.com\/codebuild\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">AWS CodeBuild<\/a>, which we&#8217;ve named&nbsp;<em>Huxley<\/em>. Read our separate post to learn&nbsp;<a href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/creating-github-action-in-ruby\" data-type=\"post\" data-id=\"349\" >how to create GitHub actions in Ruby<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Simply put,&nbsp;<em>Huxley<\/em>&nbsp;is a solution that uses GitHub Actions as the front-end, while the actual CI\/CD actions are performed in AWS CodeBuild. This solution helps to solve the unintuitive nature of Jenkins by having GitHub act as the UI component &#8211; a familiar interface for all engineers. Thus our engineers no longer need to leave GitHub to debug deployment issues.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using GitHub Actions as orchestrator<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A key design component of our&nbsp;<em>Huxley<\/em>&nbsp;solution is the modularisation of the different stages in the pipeline. Each stage is treated as an autonomous event that does not necessarily need any other build stage. This means that our CI\/CD system can simply&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Orchestration_(computing)\" rel=\"noopener noreferrer\" target=\"_blank\">orchestrate<\/a>&nbsp;each stage into a functioning pipeline, based on the designed workflow.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We use GitHub Actions as the orchestration engine in&nbsp;<em>Huxley<\/em>. GitHub Actions maintains the order in which the jobs are run and when the jobs are sent to CodeBuild.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Using AWS CodeBuild as the build engine<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">On the back-end, we&#8217;re using CodeBuild as the engine to call our custom deployment scripts and determine which build artefacts are created and tested. This could be a Docker image, an&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/docs.aws.amazon.com\/AWSEC2\/latest\/UserGuide\/AMIs.html\" rel=\"noopener noreferrer\" target=\"_blank\">AMI<\/a>, a gem or anything similar. The running of the builds and deploys is handled by our deployment tooling.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CodeBuild also acts as the engine that determines which build artefact is deployed to the larger environment. This could be an internal or external application.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">CodeBuild provides us with build agents on an as-needed basis. By having all of our CI\/CD tooling in a single Docker image, we can scale to as many build agents as we need during a typical work day. As the build agents are started as-needed, they last only as long as the assigned CI\/CD action takes place. This solution allows for increased stability and usability for our engineers. We will explain this solution further down.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Build engine as builder and deployer<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Using our&nbsp;<em>toolbox<\/em>&nbsp;(described later), CodeBuild is able to act as an engine to run the build stage of the pipeline and subsequently as the deployer to deploy the artefacts it creates in the build stage. Each stage is run independently, with CodeBuild used as the runtime engine to run our build and deploy tooling. All of this is managed by Github Action acting as the Orchestrator of the overall pipeline.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Plug-and-play solution<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The tooling we use for our deployment framework is contained within a single Docker image or&nbsp;<em>toolbox<\/em>. We developed this toolbox so that it could be run locally or on a build agent. The toolbox contains all of our custom bash scripts, CLIs written in GoLang, security tools and our&nbsp;<em>secret sauce<\/em>&nbsp;that enables Simply Business to deploy reliably and securely hundreds of times per day. In terms of our CI\/CD solution, this meant that the Docker image could be run in the same way locally, on Jenkins and in CodeBuild. This made the migration from Jenkins to&nbsp;<em>Huxley<\/em>&nbsp;much easier.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Future customisation of our CI\/CD solution<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">While the adoption of our GitHub Actions and CodeBuild CI\/CD solution has improved the quality of life for engineers at Simply Business, it has also allowed for improvements in other parts of the business as well.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">By incorporating GitHub Actions, it&#8217;s opened up workflow possibilities that did not exist under the Jenkins model. We&#8217;ve built a workflow that enables security patching for our internal build systems, resulting in a decrease from two weeks to around one hour. In addition, a complex patching cycle with excessive manual touchpoints is now encompassed by another workflow that, in one click, can trigger the entire patching process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The future possibilities for customising our CI\/CD solution&nbsp;<em>Huxley<\/em>&nbsp;lies not only in further improvements in engineering but also in adopting new workflows that can transform what we can do to simplify and automate normal everyday DevOps tasks.<\/p>\n\n\n\n<div id=\"nba-upsell-001\" class=\"wp-block-group has-azure-200-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-94e519ba wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--80);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--80);padding-left:var(--wp--preset--spacing--40)\">\n<h3 class=\"wp-block-heading has-text-align-center\">Ready to start your career at Simply Business?<\/h3>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\">Want to know more about what it&#8217;s like to work in tech at Simply Business? Read about our approach to tech, then check out our current vacancies.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-a89b3969 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button has-custom-font-size has-medium-font-size\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/careers\/tech\/\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--30)\">Find out more<\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group has-azure-800-color has-azure-200-background-color has-text-color has-background has-link-color wp-elements-8e0dce3f13a2a96dffdeb7da72012999 has-global-padding is-layout-constrained wp-container-core-group-is-layout-80fb368b wp-block-group-is-layout-constrained\" style=\"border-radius:8px;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30)\">\n<p class=\"has-text-align-center has-xxs-font-size wp-block-paragraph\">We create this content for general information purposes and it should not be taken as advice. Always take professional advice.&nbsp;<a href=\"https:\/\/www.simplybusiness.co.uk\/legal\/knowledge-centre-disclaimer\/\" target=\"_blank\" rel=\"noreferrer noopener\">Read our full disclaimer<\/a><\/p>\n<\/div>\n\n\n\n<div id=\"newsletter-subscribe\" class=\"wp-block-group newsletter-subscribe is-layout-flow wp-block-group-is-layout-flow wp-block-block\" style=\"border-top-color:#cccccc;border-top-width:1px;padding-top:var(--wp--preset--spacing--80);padding-right:0;padding-bottom:var(--wp--preset--spacing--80);padding-left:0\">\n<p class=\"has-text-align-center has-dark-800-color has-text-color has-link-color has-medium-font-size wp-elements-ced002c3d2e03fde51d8880b5da0f3bb wp-block-paragraph\" style=\"margin-bottom:var(--wp--preset--spacing--50)\">A free monthly newsletter with the latest news and tools for small businesses and landlords.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-222c5d1d wp-block-buttons-is-layout-flex\" style=\"margin-bottom:var(--wp--preset--spacing--50)\">\n<div class=\"wp-block-button is-style-outline has-size-medium is-style-outline--1\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/newsletter-signup\/\">Subscribe to our newsletter<\/a><\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-social-links has-small-icon-size is-style-logos-only is-content-justification-center is-layout-flex wp-container-core-social-links-is-layout-a89b3969 wp-block-social-links-is-layout-flex\"><li class=\"wp-social-link wp-social-link-facebook  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on Facebook<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-x  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.x.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on X<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-youtube  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.youtube.com\/user\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Subscribe to Simply Business Videos on Youtube<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-linkedin  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.linkedin.com\/company\/simply-business_39914\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on LinkedIn<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-instagram  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.instagram.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on Instagram<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-tiktok  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.tiktok.com\/@simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16.708 0.027c1.745-0.027 3.48-0.011 5.213-0.027 0.105 2.041 0.839 4.12 2.333 5.563 1.491 1.479 3.6 2.156 5.652 2.385v5.369c-1.923-0.063-3.855-0.463-5.6-1.291-0.76-0.344-1.468-0.787-2.161-1.24-0.009 3.896 0.016 7.787-0.025 11.667-0.104 1.864-0.719 3.719-1.803 5.255-1.744 2.557-4.771 4.224-7.88 4.276-1.907 0.109-3.812-0.411-5.437-1.369-2.693-1.588-4.588-4.495-4.864-7.615-0.032-0.667-0.043-1.333-0.016-1.984 0.24-2.537 1.495-4.964 3.443-6.615 2.208-1.923 5.301-2.839 8.197-2.297 0.027 1.975-0.052 3.948-0.052 5.923-1.323-0.428-2.869-0.308-4.025 0.495-0.844 0.547-1.485 1.385-1.819 2.333-0.276 0.676-0.197 1.427-0.181 2.145 0.317 2.188 2.421 4.027 4.667 3.828 1.489-0.016 2.916-0.88 3.692-2.145 0.251-0.443 0.532-0.896 0.547-1.417 0.131-2.385 0.079-4.76 0.095-7.145 0.011-5.375-0.016-10.735 0.025-16.093z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on TikTok<\/span><\/a><\/li><\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>The engineering team at Simply Business deploy our many apps to production over 300 times a week. Until recently, we&#8217;ve used Jenkins as the main technology for our continuous integration and continuous deployment&nbsp;(CI\/CD)&nbsp;needs. However, we faced some issues with Jenkins, so our DevOps engineers set about finding a better way to support our tech organisation [&hellip;]<\/p>\n","protected":false},"author":14,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"sb_hreflang":"","sb_hreflang_url":"","disable_breadcrumbs":false,"sb_breadcrumbs":[],"footnotes":""},"tags":[],"hidden-category":[],"coauthors":[267],"class_list":["post-348","post","type-post","status-publish","format-standard","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How we built a custom CI\/CD system<\/title>\n<meta name=\"description\" content=\"By combining GitHub Actions with AWS CodeBuild, we&#039;ve built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild\" \/>\n<meta property=\"og:description\" content=\"By combining GitHub Actions with AWS CodeBuild, we&#039;ve built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\" \/>\n<meta property=\"og:site_name\" content=\"Simply Business UK\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/simplybusiness\" \/>\n<meta property=\"article:published_time\" content=\"2022-03-29T14:42:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-05-22T13:17:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/06\/huxley.jpeg\" \/>\n<meta name=\"author\" content=\"Drew Curd\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@simplybusiness\" \/>\n<meta name=\"twitter:site\" content=\"@simplybusiness\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Drew Curd\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\"},\"author\":{\"@type\":\"Person\",\"name\":\"Drew Curd\",\"description\":\"\"},\"headline\":\"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild\",\"datePublished\":\"2022-03-29T14:42:00+00:00\",\"dateModified\":\"2025-05-22T13:17:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\"},\"wordCount\":1189,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?w=1024\",\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\",\"name\":\"How we built a custom CI\/CD system\",\"isPartOf\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?w=1024\",\"datePublished\":\"2022-03-29T14:42:00+00:00\",\"dateModified\":\"2025-05-22T13:17:05+00:00\",\"description\":\"By combining GitHub Actions with AWS CodeBuild, we've built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp\",\"width\":1152,\"height\":414,\"caption\":\"sb-tech-site-banner\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.simplybusiness.co.uk\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#website\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/\",\"name\":\"Simply Business UK\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.simplybusiness.co.uk\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#\/schema\/person\/77f91625e7ec1b88a7fca8910ce6c69f\",\"name\":\"rishvashah\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp9df6147f02078f0218660330fdfbacf3\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp\",\"caption\":\"rishvashah\"}},{\"@type\":\"PostalAddress\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#local-main-place-address\",\"streetAddress\":\"Hylo, 105 Bunhill Row\",\"addressLocality\":\"London\",\"postalCode\":\"EC1Y 8LZ\",\"addressCountry\":\"GB\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#local-main-organization-logo\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png\",\"width\":533,\"height\":187,\"caption\":\"Simply Business UK\"}]}<\/script>\n<meta name=\"geo.placename\" content=\"London\" \/>\n<meta name=\"geo.region\" content=\"United Kingdom (UK)\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How we built a custom CI\/CD system","description":"By combining GitHub Actions with AWS CodeBuild, we've built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/","og_locale":"en_GB","og_type":"article","og_title":"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild","og_description":"By combining GitHub Actions with AWS CodeBuild, we've built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.","og_url":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/","og_site_name":"Simply Business UK","article_publisher":"https:\/\/www.facebook.com\/simplybusiness","article_published_time":"2022-03-29T14:42:00+00:00","article_modified_time":"2025-05-22T13:17:05+00:00","og_image":[{"url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/06\/huxley.jpeg","type":"","width":"","height":""}],"author":"Drew Curd","twitter_card":"summary_large_image","twitter_creator":"@simplybusiness","twitter_site":"@simplybusiness","twitter_misc":{"Written by":"Drew Curd","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#article","isPartOf":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/"},"author":{"@type":"Person","name":"Drew Curd","description":""},"headline":"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild","datePublished":"2022-03-29T14:42:00+00:00","dateModified":"2025-05-22T13:17:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/"},"wordCount":1189,"commentCount":0,"publisher":{"@id":"https:\/\/www.simplybusiness.co.uk\/#organization"},"image":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?w=1024","inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/","url":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/","name":"How we built a custom CI\/CD system","isPartOf":{"@id":"https:\/\/www.simplybusiness.co.uk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage"},"image":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp?w=1024","datePublished":"2022-03-29T14:42:00+00:00","dateModified":"2025-05-22T13:17:05+00:00","description":"By combining GitHub Actions with AWS CodeBuild, we've built a rich and custom CI\/CD deployment pipeline for an improved engineering experience.","breadcrumb":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#primaryimage","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2022\/08\/sb-tech-site-banner.webp","width":1152,"height":414,"caption":"sb-tech-site-banner"},{"@type":"BreadcrumbList","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.simplybusiness.co.uk\/"},{"@type":"ListItem","position":2,"name":"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild"}]},{"@type":"WebSite","@id":"https:\/\/www.simplybusiness.co.uk\/#website","url":"https:\/\/www.simplybusiness.co.uk\/","name":"Simply Business UK","description":"","publisher":{"@id":"https:\/\/www.simplybusiness.co.uk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.simplybusiness.co.uk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/www.simplybusiness.co.uk\/#\/schema\/person\/77f91625e7ec1b88a7fca8910ce6c69f","name":"rishvashah","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp9df6147f02078f0218660330fdfbacf3","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp","caption":"rishvashah"}},{"@type":"PostalAddress","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#local-main-place-address","streetAddress":"Hylo, 105 Bunhill Row","addressLocality":"London","postalCode":"EC1Y 8LZ","addressCountry":"GB"},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system\/#local-main-organization-logo","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png","width":533,"height":187,"caption":"Simply Business UK"}]},"geo.placename":"London","geo.region":"United Kingdom (UK)"},"parsely":{"version":"1.1.0","canonical_url":"https:\/\/simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system","smart_links":{"inbound":0,"outbound":0},"traffic_boost_suggestions_count":0,"meta":{"@context":"https:\/\/schema.org","@type":"NewsArticle","headline":"How we built a custom CI\/CD system using GitHub Actions and AWS CodeBuild","url":"http:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system","mainEntityOfPage":{"@type":"WebPage","@id":"http:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2022\/03\/building-a-custom-cicd-system"},"thumbnailUrl":"","image":{"@type":"ImageObject","url":""},"articleSection":"Uncategorised","author":[{"@type":"Person","name":"Drew Curd"}],"creator":["Drew Curd"],"publisher":{"@type":"Organization","name":"Simply Business UK","logo":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/04\/icon-512x512-1.png"},"keywords":[],"dateCreated":"2022-03-29T14:42:00Z","datePublished":"2022-03-29T14:42:00Z","dateModified":"2025-05-22T13:17:05Z"},"rendered":"<script type=\"application\/ld+json\" class=\"wp-parsely-metadata\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@type\":\"NewsArticle\",\"headline\":\"How we built a custom CI\\\/CD system using GitHub Actions and AWS CodeBuild\",\"url\":\"http:\\\/\\\/www.simplybusiness.co.uk\\\/about-us\\\/tech\\\/2022\\\/03\\\/building-a-custom-cicd-system\",\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/www.simplybusiness.co.uk\\\/about-us\\\/tech\\\/2022\\\/03\\\/building-a-custom-cicd-system\"},\"thumbnailUrl\":\"\",\"image\":{\"@type\":\"ImageObject\",\"url\":\"\"},\"articleSection\":\"Uncategorised\",\"author\":[{\"@type\":\"Person\",\"name\":\"Drew Curd\"}],\"creator\":[\"Drew Curd\"],\"publisher\":{\"@type\":\"Organization\",\"name\":\"Simply Business UK\",\"logo\":\"https:\\\/\\\/www.simplybusiness.co.uk\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2024\\\/04\\\/icon-512x512-1.png\"},\"keywords\":[],\"dateCreated\":\"2022-03-29T14:42:00Z\",\"datePublished\":\"2022-03-29T14:42:00Z\",\"dateModified\":\"2025-05-22T13:17:05Z\"}<\/script>","tracker_url":"https:\/\/cdn.parsely.com\/keys\/simplybusiness.co.uk\/p.js"},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/348","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/comments?post=348"}],"version-history":[{"count":7,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/348\/revisions"}],"predecessor-version":[{"id":37701,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/348\/revisions\/37701"}],"wp:attachment":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/media?parent=348"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/tags?post=348"},{"taxonomy":"hidden-category","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/hidden-category?post=348"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/coauthors?post=348"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}