{"id":2627,"date":"2020-07-16T16:31:10","date_gmt":"2020-07-16T14:31:10","guid":{"rendered":"https:\/\/geko2.factoryfy.com\/jenkins-x-preview-environments\/"},"modified":"2021-11-03T18:27:25","modified_gmt":"2021-11-03T17:27:25","slug":"jenkins-x-preview-environments","status":"publish","type":"post","link":"https:\/\/geko.cloud\/en\/jenkins-x-preview-environments\/","title":{"rendered":"Jenkins X preview environments"},"content":{"rendered":"<div style=\"display: none;\"><\/div>\n<p>This is the second post about Jenkins X of a series of posts that we will write. Some weeks ago we wrote an introductory post talking about <a href=\"https:\/\/geko.cloud\/en\/jenkins-x\/\" target=\"_blank\" rel=\"noopener noreferrer\">what is Jenkins X<\/a> and how can help you to deploy your application into a kubernetes cluster.<\/p>\n<p>This time we will talk about a <strong>Jenkins X feature called preview environments<\/strong> and how useful is in order to test new features before merge them to another branch.<\/p>\n<p>If you are using gitflow in your company, Jenkins X can help you to manage all the flow that this methodology proposes. Recently, we have been invited to be speakers in a meetup organized by <a href=\"https:\/\/www.spainclouds.com\" target=\"_blank\" rel=\"noopener noreferrer\">Spainclouds<\/a> community where we talked about Gitflow and Jenkins X. <a href=\"https:\/\/geko.cloud\/en\/meetup-spainclouds-gitflow-gitops-plus-labs-jenkins-x-y-kubernetes\/\" target=\"_blank\" rel=\"noopener noreferrer\">Here you can watch the recorded session<\/a>.<\/p>\n<h2>Jenkins X environments<\/h2>\n<p>Jenkins X, out of the box, comes with 3 kinds of environments divided in two flavors:<\/p>\n<ul>\n<li>Static environments\n<ul>\n<li>Staging<\/li>\n<li>Production<\/li>\n<\/ul>\n<\/li>\n<li>Ephemeral or dynamic environments\n<ul>\n<li>Preview environments<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Of course you <strong>can create as many static environments as you need<\/strong> to satisfy your team\/company requirements (for example, to implement gitflow branch structure) but this time we will talk about preview environments; how they work and how can help us.<\/p>\n<p>Preview environments are <strong>ephemeral<\/strong>. That means that they are dynamically created for each PR and they are destroyed when this PR is closed. Doing this, all the necessary resources are only created and used strictly when we need them.<\/p>\n<h2>Preview environments<\/h2>\n<p>To explain this Jenkins X feature we will assume that we have only Staging and Production environments.<\/p>\n<p>Let&#8217;s imagine that you need to develop a new feature. These are the steps that you&#8217;ll probably do:<\/p>\n<ol>\n<li>Create a new branch to implement the new feature<\/li>\n<li>Make all necessary commits to this new branch<\/li>\n<li>Once you think that you&#8217;ve finished developing the new feature you will create a new PR in order to merge to a branch (develop, master,&#8230;)<\/li>\n<li>After some code review, unit testing,.. and so on, you will finally able to merge into the desired branch.<\/li>\n<\/ol>\n<p>Nice! Let&#8217;s explain to you what Jenkins X does in order to create the preview environment:<\/p>\n<figure id=\"attachment_1882\" aria-describedby=\"caption-attachment-1882\" style=\"width: 849px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1882 size-full\" src=\"https:\/\/geko2.factoryfy.com\/wp-content\/uploads\/jenkinsx-preview-environment.png\" alt=\"JenkinsX preview environment creation\" width=\"849\" height=\"347\" \/><figcaption id=\"caption-attachment-1882\" class=\"wp-caption-text\">Figure 1: JenkinsX preview environment creation<\/figcaption><\/figure>\n<p>When Jenkins X detects that you&#8217;ve created a new PR to merge your branch, JenkinsX starts a pipeline that creates an specific namespace in your <a href=\"https:\/\/geko.cloud\/en\/what-is-kubernetes\/\">kubernetes<\/a> cluster with all the necessary resources to execute and expose your pod with the content of the branch.<\/p>\n<p>The pipeline that Jenkins X executes is a predefined pipeline defined in <a href=\"https:\/\/jenkins-x.io\/docs\/reference\/components\/build-packs\/\" target=\"_blank\" rel=\"noopener noreferrer\">Jenkins X buildpacks<\/a> and depends on the language your app is written. Of course, you can modify these out-of-the-box pipelines to satisfy your needs (adding or modifying steps, testing,&#8230;) but we will talk about that in another post. \ud83d\ude09<\/p>\n<p>When Jenkins X finishes you can see something like this in your <a href=\"https:\/\/geko.cloud\/en\/what-is-kubernetes\/\">kubernetes<\/a> cluster:<\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">bash~$ kubectl get pod -A | grep preview\r\nNAMESPACE                   NAME                               READY   STATUS      RESTARTS   AGE\r\njx-mycompany-jxqsapp-pr-16  preview-preview-7d48fd5f6-9fjlz    1\/1     Running     0          23m\r\n<\/pre>\n<\/div>\n<p>And these are all the resources created inside this ephemeral namespace.<\/p>\n<div class=\"wp-block-codemirror-blocks code-block \">\n<pre class=\"CodeMirror\" data-setting=\"{\">bash~$ kubectl get all -n jx-mycompany-jxqsapp-pr-16\r\nNAME                                  READY   STATUS    RESTARTS   AGE\r\npod\/preview-preview-7d48fd5f6-9fplz   1\/1     Running   0          31m\r\n\r\nNAME              TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)   AGE\r\nservice\/jxqsapp   ClusterIP   10.110.76.143                  80\/TCP    31m\r\n\r\nNAME                              READY   UP-TO-DATE   AVAILABLE   AGE\r\ndeployment.apps\/preview-preview   1\/1     1            1           31m\r\n\r\nNAME                                        DESIRED   CURRENT   READY   AGE\r\nreplicaset.apps\/preview-preview-7d48fd5f6   1         1         1       31m<\/pre>\n<\/div>\n<p>When the preview pipeline finishes, Jenkins X exposes your preview environment configuring the ingress controller and creates a comment on your Github PR with this information:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1887 size-full\" src=\"https:\/\/geko2.factoryfy.com\/wp-content\/uploads\/screenshot-20200508112942-738x99-1.png\" alt=\"\" width=\"738\" height=\"99\" \/><\/p>\n<p>Jenkins X creates a link pointing to the preview environment URL created for this PR.<\/p>\n<p>Once the PR is merged to master, Jenkins X deploys this version into Staging environment to finish all the testing\/integration steps. Finally, the last step,\u00a0 will be promote to Production environment.<\/p>\n<p>Preview environment main benefits:<\/p>\n<ul>\n<li>Enable developers to collaborate and validate changes before they are integrated back into the codebase<\/li>\n<li>Test the PR deployed in a real <a href=\"https:\/\/geko.cloud\/en\/what-is-kubernetes\/\">kubernetes<\/a> cluster before merge<\/li>\n<li>Raise confidence before promoting code to production<\/li>\n<li>Create an accessible URL to allow UAT before merge<\/li>\n<li>Adhere to testing best practices<\/li>\n<\/ul>\n<p>Would you like to implement Jenkins X in your Company? We can help you. <a href=\"https:\/\/geko.cloud\/en\/contact\/\">Contact us<\/a> and feel the Geko Way! \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is the second post about Jenkins X of a series of posts that we will write. Some weeks ago we wrote an introductory post talking about what is Jenkins X and how can help you to deploy your application into a kubernetes cluster. This time we will talk about a Jenkins X feature called [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":2255,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[67],"tags":[73,83,90],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Jenkins X preview environments - Geko Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Jenkins X preview environments - Geko Cloud\" \/>\n<meta property=\"og:description\" content=\"This is the second post about Jenkins X of a series of posts that we will write. Some weeks ago we wrote an introductory post talking about what is Jenkins X and how can help you to deploy your application into a kubernetes cluster. This time we will talk about a Jenkins X feature called [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\" \/>\n<meta property=\"og:site_name\" content=\"Geko Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-16T14:31:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-03T17:27:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png\" \/>\n\t<meta property=\"og:image:width\" content=\"696\" \/>\n\t<meta property=\"og:image:height\" content=\"398\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jose Luis S\u00e1nchez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@geko_cloud\" \/>\n<meta name=\"twitter:site\" content=\"@geko_cloud\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\"},\"author\":{\"name\":\"Jose Luis S\u00e1nchez\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d06aff498ebfbc75b5010ebe92af41ed\"},\"headline\":\"Jenkins X preview environments\",\"datePublished\":\"2020-07-16T14:31:10+00:00\",\"dateModified\":\"2021-11-03T17:27:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\"},\"wordCount\":628,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png\",\"keywords\":[\"cicd\",\"Jenkins\",\"Kubernetes\"],\"articleSection\":[\"Labs\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\",\"url\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\",\"name\":\"Jenkins X preview environments - Geko Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/geko.cloud\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png\",\"datePublished\":\"2020-07-16T14:31:10+00:00\",\"dateModified\":\"2021-11-03T17:27:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png\",\"width\":696,\"height\":398,\"caption\":\"jenkins x logo\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/geko.cloud\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Jenkins X preview environments\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/geko.cloud\/es\/#website\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"name\":\"Geko Cloud\",\"description\":\"Servicios de consultor\u00eda cloud y devops\",\"publisher\":{\"@id\":\"https:\/\/geko.cloud\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/geko.cloud\/es\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/geko.cloud\/es\/#organization\",\"name\":\"Geko Cloud\",\"url\":\"https:\/\/geko.cloud\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"contentUrl\":\"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png\",\"width\":1650,\"height\":809,\"caption\":\"Geko Cloud\"},\"image\":{\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/geko_cloud\",\"https:\/\/www.instagram.com\/gekocloud\/\",\"https:\/\/www.linkedin.com\/company\/gekocloud\",\"https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/d06aff498ebfbc75b5010ebe92af41ed\",\"name\":\"Jose Luis S\u00e1nchez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ebfd055d4dba456220c682523fcc237c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ebfd055d4dba456220c682523fcc237c?s=96&d=mm&r=g\",\"caption\":\"Jose Luis S\u00e1nchez\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Jenkins X preview environments - Geko Cloud","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:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/","og_locale":"en_US","og_type":"article","og_title":"Jenkins X preview environments - Geko Cloud","og_description":"This is the second post about Jenkins X of a series of posts that we will write. Some weeks ago we wrote an introductory post talking about what is Jenkins X and how can help you to deploy your application into a kubernetes cluster. This time we will talk about a Jenkins X feature called [&hellip;]","og_url":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/","og_site_name":"Geko Cloud","article_published_time":"2020-07-16T14:31:10+00:00","article_modified_time":"2021-11-03T17:27:25+00:00","og_image":[{"width":696,"height":398,"url":"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png","type":"image\/png"}],"author":"Jose Luis S\u00e1nchez","twitter_card":"summary_large_image","twitter_creator":"@geko_cloud","twitter_site":"@geko_cloud","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#article","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/"},"author":{"name":"Jose Luis S\u00e1nchez","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d06aff498ebfbc75b5010ebe92af41ed"},"headline":"Jenkins X preview environments","datePublished":"2020-07-16T14:31:10+00:00","dateModified":"2021-11-03T17:27:25+00:00","mainEntityOfPage":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/"},"wordCount":628,"commentCount":0,"publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"image":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png","keywords":["cicd","Jenkins","Kubernetes"],"articleSection":["Labs"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/","url":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/","name":"Jenkins X preview environments - Geko Cloud","isPartOf":{"@id":"https:\/\/geko.cloud\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage"},"image":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage"},"thumbnailUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png","datePublished":"2020-07-16T14:31:10+00:00","dateModified":"2021-11-03T17:27:25+00:00","breadcrumb":{"@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#primaryimage","url":"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/jx.png","width":696,"height":398,"caption":"jenkins x logo"},{"@type":"BreadcrumbList","@id":"https:\/\/geko.cloud\/es\/entornos-vista-previa-jenkins-x\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/geko.cloud\/en\/"},{"@type":"ListItem","position":2,"name":"Jenkins X preview environments"}]},{"@type":"WebSite","@id":"https:\/\/geko.cloud\/es\/#website","url":"https:\/\/geko.cloud\/es\/","name":"Geko Cloud","description":"Servicios de consultor\u00eda cloud y devops","publisher":{"@id":"https:\/\/geko.cloud\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/geko.cloud\/es\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/geko.cloud\/es\/#organization","name":"Geko Cloud","url":"https:\/\/geko.cloud\/es\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/","url":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","contentUrl":"https:\/\/geko.cloud\/wp-content\/uploads\/2021\/10\/geko_logo-positivo.png","width":1650,"height":809,"caption":"Geko Cloud"},"image":{"@id":"https:\/\/geko.cloud\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/geko_cloud","https:\/\/www.instagram.com\/gekocloud\/","https:\/\/www.linkedin.com\/company\/gekocloud","https:\/\/www.youtube.com\/channel\/UC5EFLCqUM7fEaXSa_0nWowQ"]},{"@type":"Person","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/d06aff498ebfbc75b5010ebe92af41ed","name":"Jose Luis S\u00e1nchez","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/geko.cloud\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ebfd055d4dba456220c682523fcc237c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ebfd055d4dba456220c682523fcc237c?s=96&d=mm&r=g","caption":"Jose Luis S\u00e1nchez"}}]}},"_links":{"self":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2627"}],"collection":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/comments?post=2627"}],"version-history":[{"count":3,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2627\/revisions"}],"predecessor-version":[{"id":5237,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/posts\/2627\/revisions\/5237"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media\/2255"}],"wp:attachment":[{"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/media?parent=2627"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/categories?post=2627"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/geko.cloud\/en\/wp-json\/wp\/v2\/tags?post=2627"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}