PageSourceSearch

https://pixelpoint.io/component---src-templates-blog-post-jsx-cont…-ci-better-index-md-7a2ae375606d076bc359.js

js pixelpoint.io collected 2026-10-03 22:10:20 UTC 29,019 bytes, 2 lines download raw bytes

1"use strict";(self.webpackChunkpixelpoint_website=self.webpackChunkpixelpoint_website||[]).push([[610],{6185:function(e,a,n){n.r(a),n.d(a,{Head:function(){return w},default:function(){return u}});var t=n(8453),i=n(6540);function s(e){const a=Object.assign({p:"p",h2:"h2",a:"a",span:"span",h3:"h3",ul:"ul",li:"li",img:"img"},(0,t.RP)(),e.components);return i.createElement(i.Fragment,null,i.createElement(a.p,null,"In this article, we talk about Drone CI, a very powerful, lightweight, docker-based, multi-pipeline, multi-platform, open-source CI/CD tool. Drone launched in 2012 and, like many other open source tools, was made by and for developers, so lacked a user-friendly interface."),"\n",i.createElement(a.h2,{id:"i-hope-we-finally-changed-it"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#i-hope-we-finally-changed-it"},i.createElement(a.span,{className:"icon icon-link"})),"I hope we finally changed it…"),"\n",i.createElement(a.p,null,"We at ",i.createElement(a.a,{href:"https://pixelpoint.io/"},"Pixel Point")," use Drone on a lot of different projects, on a day-to-day basis, so we decided to improve it. After months of work, we’re happy to announce new Drone v1.0.0, which is ready to use now."),"\n",i.createElement(a.h3,{id:"new-version"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#new-version"},i.createElement(a.span,{className:"icon icon-link"})),"New version"),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 75.86206896551725%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAABYlAAAWJQFJUiTwAAAChUlEQVR42p2T208TQRTGG1989H550aIVMVzEYIwWAYvYEE1VoFhMC9g2LQaINAqKD4pELPBAoomYKD4RE33yhVf/AP8PL5HQ6263e+lu+3lmtm2gYk3c5MuZzJz5zfnO7FhGHr+Cy/+U63qQFDDHN4Iz8N5bwODEInwTCxgYe4H+0Tl4KN4MPYMrYOZuzg+MzcKS0w3k83nIqo6UqEGUNAiSjqyiQ8vp0PW8KaMoGitqDqpmrquqmWPQmkZzFjbJoKIo49vPGH6sJ2gDJWoG31QpWdEQTwpIpTMQxCwSqQw/gHGYLPw0UkZVERcylCAiK6u0mZJIbL1SvDItZ+bQePNaEUh2FQmxRAKJpIjv62mkMhqMAqp+hQJTgTuUK4FJhcoXBeqHgRz1I05WllY+Yyq6gkfz7zE59w4Pnr/dIjY3/mQZa1++cniW2mFhZI2AvxQRMUlEgWDsi1GfzrnGsb/ZjYNnbmHf6T7sbeorx131PTzusHZjZmmV75GoVbxCBozLEjYEgZqucgsbiTS6bj9E/eUQWq6OouFKiBRGQ1cIJ9rvoMY+CNvFYTrAjfnlTxyYLQFLtrXiLTIguz2HZxInLwVwyhFEbYcfte1+HhnQesEHK0F3N/Yi+vrj1gqZSk3lwJxBPRTROTDFYY3OMGxtw7yqI+e9ZdVUAyrbAB0eAnYG0eQcQZ0jgONk0Wr3/QeQLMfp93F6p3l1zd13CRom+34cJaslHWsdwh66mGixh/8Edrjv86rqyDYDHD7rwYHmfrp5U4daPNhpu4bZlx+qAzWynKSnNRRZ5FU6fdNo7Y3A3hPhsaQ2OpBV/2Z17c9b3k5CRkaa3iuLf1OaJGXV8tP7DdJyramsSgQuAAAAAElFTkSuQmCC\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/5426180de6376daa6a6fcb4e023d506c/09400/drone1.webp 174w,\n/static/5426180de6376daa6a6fcb4e023d506c/3266f/drone1.webp 348w,\n/static/5426180de6376daa6a6fcb4e023d506c/657d2/drone1.webp 696w,\n/static/5426180de6376daa6a6fcb4e023d506c/e644e/drone1.webp 1044w,\n/static/5426180de6376daa6a6fcb4e023d506c/8daba/drone1.webp 1392w,\n/static/5426180de6376daa6a6fcb4e023d506c/7394c/drone1.webp 2022w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/5426180de6376daa6a6fcb4e023d506c/88093/drone1.png 174w,\n/static/5426180de6376daa6a6fcb4e023d506c/91d18/drone1.png 348w,\n/static/5426180de6376daa6a6fcb4e023d506c/871fd/drone1.png 696w,\n/static/5426180de6376daa6a6fcb4e023d506c/4e07d/drone1.png 1044w,\n/static/5426180de6376daa6a6fcb4e023d506c/aeb15/drone1.png 1392w,\n/static/5426180de6376daa6a6fcb4e023d506c/3ce64/drone1.png 2022w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/5426180de6376daa6a6fcb4e023d506c/871fd/drone1.png"\n            alt="New version"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">New version</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h3,{id:"old-version"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#old-version"},i.createElement(a.span,{className:"icon icon-link"})),"Old version"),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 49.42528735632184%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAABYlAAAWJQFJUiTwAAABQ0lEQVR42qWS62qDMBzF+/4vMdheYV/3fWxjrfVutTd6wRiNGrXqrGf/OCiM2a2wwCEhIT/OOckkygV2CcNecLAig+wa9Pg5+hs1eWIeHravuN++4G7zjMejgTSXWO/2OIQRjozjwCKEcYKE9q8pznKkssAkzTNEnENKie58HtyEscDbTINmWJibNqa6AccPEKU5mMhGFSYpgQlYliU4j1E3X1HPfQ9GwKluQrcc6LaDGa3tRQBOwIguj4kRUCiHVVWhKItLV13X0aEYYJa7gO35MBwP3nL9N1A5LMhh3bZoPzo0TYuibQagiqtAJkmj2F6wug1YViec6oYit8NcUnQV+V3TCUQdWvYQ2fWXtwFHfsjgcKaTQ9sdpB5GRb4G+9bhGDCiwzl1aF46dOGvNv90SB2ayiHBFNwNKLLIf3WZ5RKf/EPxfw1NYsYAAAAASUVORK5CYII=\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/8614ae783017378c085341ded84e2baa/09400/drone2.webp 174w,\n/static/8614ae783017378c085341ded84e2baa/3266f/drone2.webp 348w,\n/static/8614ae783017378c085341ded84e2baa/657d2/drone2.webp 696w,\n/static/8614ae783017378c085341ded84e2baa/e644e/drone2.webp 1044w,\n/static/8614ae783017378c085341ded84e2baa/8daba/drone2.webp 1392w,\n/static/8614ae783017378c085341ded84e2baa/599e6/drone2.webp 2878w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/8614ae783017378c085341ded84e2baa/88093/drone2.png 174w,\n/static/8614ae783017378c085341ded84e2baa/91d18/drone2.png 348w,\n/static/8614ae783017378c085341ded84e2baa/871fd/drone2.png 696w,\n/static/8614ae783017378c085341ded84e2baa/4e07d/drone2.png 1044w,\n/static/8614ae783017378c085341ded84e2baa/aeb15/drone2.png 1392w,\n/static/8614ae783017378c085341ded84e2baa/7d5a9/drone2.png 2878w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/8614ae783017378c085341ded84e2baa/871fd/drone2.png"\n            alt="Old version"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">Old version</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h2,{id:"research-previous-solution"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#research-previous-solution"},i.createElement(a.span,{className:"icon icon-link"})),"Research Previous Solution"),"\n",i.createElement(a.p,null,"The main purpose of the changes was to improve the UX, then the UI. We reviewed existing issues with Drone found on Github, then gathered feedback from our developers and the founder of Drone, Brad Rydzewski."),"\n",i.createElement(a.p,null,"Based on this, we compiled a list of main issues:"),"\n",i.createElement(a.ul,null,"\n",i.createElement(a.li,null,"Complicated and obscure navigation"),"\n",i.createElement(a.li,null,"A confusing cancel build action"),"\n",i.createElement(a.li,null,"A lack of user interaction during repository activation"),"\n",i.createElement(a.li,null,"A lack of responsive design support for mobile and tablet devices"),"\n",i.createElement(a.li,null,"No clearly defined home page"),"\n",i.createElement(a.li,null,"Interface scalability problems and no space for new features"),"\n",i.createElement(a.li,null,"Obscure settings saving"),"\n"),"\n",i.createElement(a.p,null,"We also created a list of new, upcoming features that include multi-pipeline builds, support for cron jobs, and new repository settings."),"\n",i.createElement(a.h2,{id:"new-ideas-and-realization"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#new-ideas-and-realization"},i.createElement(a.span,{className:"icon icon-link"})),"New Ideas and Realization"),"\n",i.createElement(a.h3,{id:"key-navigation--search"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#key-navigation--search"},i.createElement(a.span,{className:"icon icon-link"})),"Key navigation — Search"),"\n",i.createElement(a.p,null,"To start, we decided to make the “Search” function a key component for navigation across repositories and for their activation. It’s featured at the top of every page and is accessible by shortcut “/”. When using search, you can see a summary of the repository and the status of the latest build."),"\n",i.createElement(a.img,{src:"/d7d111133ca2000f2894e6896545e249/drone3.gif",alt:"Search"}),"\n",i.createElement(a.h3,{id:"cards"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#cards"},i.createElement(a.span,{className:"icon icon-link"})),"Cards"),"\n",i.createElement(a.p,null,"We designed cards for repositories, using the information that was the most useful and trying to create as flexible a solution as possible. For example, the title of the card on the home page is the name of the repository, while the second line is a human-readable phrase with important information."),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 9.195402298850574%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAACCAYAAABYBvyLAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAW0lEQVR42nXLSQ6AIBBEUe9/TY1xCBgnaLqB7xC3Ll5Si1+N7xytUwYvTKuiuZCsYFaxez9yqdTKr/w0X9u4fmT2B8sW6V3C7/raghGicIaIqFHu5x9JRhR92wtr5Zx3o+xO3QAAAABJRU5ErkJggg==\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/a6a7c9e58af1cb041ca3b64e058ff310/09400/drone4.webp 174w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/3266f/drone4.webp 348w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/657d2/drone4.webp 696w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/e644e/drone4.webp 1044w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/8daba/drone4.webp 1392w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/748c8/drone4.webp 1942w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/a6a7c9e58af1cb041ca3b64e058ff310/88093/drone4.png 174w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/91d18/drone4.png 348w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/871fd/drone4.png 696w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/4e07d/drone4.png 1044w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/aeb15/drone4.png 1392w,\n/static/a6a7c9e58af1cb041ca3b64e058ff310/1e47b/drone4.png 1942w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/a6a7c9e58af1cb041ca3b64e058ff310/871fd/drone4.png"\n            alt="Cards"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">Cards</figcaption>\n  </figure>'}}),"\n",i.createElement(a.p,null,"We built it based on the author of the commit, event, branch and commit message. That solution scales better than the table view, where each column is dedicated to a specific field. Using our solution, you can easy collapse it and break by-lines for mobile view."),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 20.114942528735632%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAECAYAAACOXx+WAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAiElEQVR42pWP3QrDIAyF+/7vt6vdrjC2apk6rYnJWWp70UFh7IT86eGDDDiRikIWRq6KYklsu9r7/r/O7bAfNXyTNgvHhNflitET7r7iNhF8ZFQW5EW6Tayo6g/gLiLG7Dyek4dzM8ZH6MBUGC5wB+k/wNVH3BBSRnwXROuqskEsmt3MTXHCwwejSDtlrugmtAAAAABJRU5ErkJggg==\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/840d9004c24fea4849929038c561d5cb/09400/drone5.webp 174w,\n/static/840d9004c24fea4849929038c561d5cb/3266f/drone5.webp 348w,\n/static/840d9004c24fea4849929038c561d5cb/657d2/drone5.webp 696w,\n/static/840d9004c24fea4849929038c561d5cb/e644e/drone5.webp 1044w,\n/static/840d9004c24fea4849929038c561d5cb/bdff8/drone5.webp 1188w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/840d9004c24fea4849929038c561d5cb/88093/drone5.png 174w,\n/static/840d9004c24fea4849929038c561d5cb/91d18/drone5.png 348w,\n/static/840d9004c24fea4849929038c561d5cb/871fd/drone5.png 696w,\n/static/840d9004c24fea4849929038c561d5cb/4e07d/drone5.png 1044w,\n/static/840d9004c24fea4849929038c561d5cb/2657e/drone5.png 1188w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/840d9004c24fea4849929038c561d5cb/871fd/drone5.png"\n            alt="Cards"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">Cards</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h3,{id:"tabs"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#tabs"},i.createElement(a.span,{className:"icon icon-link"})),"Tabs"),"\n",i.createElement(a.p,null,"We altered the repository page so that you can see tabs upon opening it. This provides a good navigation approach for the settings page and allow us to add new tabs in future (we already have a few in the works)."),"\n",i.createElement(a.h3,{id:"single-settings-page"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#single-settings-page"},i.createElement(a.span,{className:"icon icon-link"})),"Single Settings Page"),"\n",i.createElement(a.p,null,"Rather than split certain settings into different pages, now all of them are in one. Once you activate the new repository, you’re immediately redirected to the settings page, because that is typically the first place you go to configure your repository."),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 75.86206896551725%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAABYlAAAWJQFJUiTwAAABoklEQVR42qWT2S4EQRSG+4EsN24kLhBLwoWIxDwBggsk5g28hwfxDlxIhGSs02Ysbejpqequ9XdOaRMSw6CSr6vqdPVfZ+uosrGHkbl1DE6tYHh2LTA0s4axpR1MVqqYWN7FODG2uI3Rha0ufGZwejUwQIzMb2J+cR1RvfGEk/MH1K4fcHZex/HpJWpXDcTNBHEj6c43t4/fUmfie0RKWyQvAmkm0Sasc3DOEyjnEo9P+C9ge8QilzdNXBDxXYLHVoqOLCBz9Qc0Il4IUUCTp1IqtF46KJQJe0WzKtcf973ICxIU5E2aCQrLBb89oY2FIYKNBu9tuf5uaG04h+SBYXUVxPimrCPDJUrrkL+0LcL7/gTZXfpQKR2Mxlqw1+Quha4D/Y4gyPmSeRGwFFUjkaUgkIk85IUH2/iyvkLmg5wvLr2gSrGNw+e8ee4FGta6YOtLkMN+P8shtimH7oePewrywztDHtquIPehLyv+a0GRGxzWMjRbb1XkduGqc1H+JJikCtX9GAdH6VuunC9/Jf9rOH2RpP5qPafBK0OJ/w/cMa+JC2/sS1/zUQAAAABJRU5ErkJggg==\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/e8b6fb03d64b8f2329811329110012ce/09400/drone6.webp 174w,\n/static/e8b6fb03d64b8f2329811329110012ce/3266f/drone6.webp 348w,\n/static/e8b6fb03d64b8f2329811329110012ce/657d2/drone6.webp 696w,\n/static/e8b6fb03d64b8f2329811329110012ce/e644e/drone6.webp 1044w,\n/static/e8b6fb03d64b8f2329811329110012ce/8daba/drone6.webp 1392w,\n/static/e8b6fb03d64b8f2329811329110012ce/7ca41/drone6.webp 2020w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/e8b6fb03d64b8f2329811329110012ce/88093/drone6.png 174w,\n/static/e8b6fb03d64b8f2329811329110012ce/91d18/drone6.png 348w,\n/static/e8b6fb03d64b8f2329811329110012ce/871fd/drone6.png 696w,\n/static/e8b6fb03d64b8f2329811329110012ce/4e07d/drone6.png 1044w,\n/static/e8b6fb03d64b8f2329811329110012ce/aeb15/drone6.png 1392w,\n/static/e8b6fb03d64b8f2329811329110012ce/636bd/drone6.png 2020w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/e8b6fb03d64b8f2329811329110012ce/871fd/drone6.png"\n            alt="Settings"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">Settings</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h3,{id:"new-build-page"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#new-build-page"},i.createElement(a.span,{className:"icon icon-link"})),"New build page"),"\n",i.createElement(a.p,null,"We strive for unified components, so the main component with a short breakdown of information about the build status is the same as on previous pages. Navigation on the left now supports multiple pipelines. At the top, we added space for buttons, where we plan to add new features in future releases."),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 75.28735632183908%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAABYlAAAWJQFJUiTwAAACoElEQVR42p2TS0hUURjHL7Rrm2VFgRRiLSpHKcWYTAh7UBb4bMrnQpIchrHCaBER9FAiCEJctClatLUsibJ2kQWtWk3hpGnqzHhn7tz3vXPvv+9+M+oQmdCFH+fcc77v/z3OOUIgeAeVdb3wHbuA8hM9y9Q0X0Htuas4EuhnDjddgr+hb5my4z3s46OxlMbKuiBON/ZCmI+n8P2niOm5JKKzIiJTCURnEvi1sIhYIoWFHPPx5DILhLcXy63HFnM25CMYZgaLKQWSrBE6LNuFnXGRcRzCZZw8XMK0bCSlrI9p2kilVSiawbaCrBr4MT2PSHSGs7KsDDTdIsxVUVQdYkpmUZnmLJ7WeE9QTRMJVUWSskxKMtKKCt0wYZgWR1VzKHl4//kBPPuluaBmLEzF5xCPiZijfkzOJiGmDRiWi7U+l0wcJ9sehzCpOkGnfoiSBN3rQcaBTj3VqS9fvk7i1btPGHv/mRkdn1jh7QRejmd58eYj2428/oBv0VkIKVNHJBWDTr10KKRXqktj6MYQCvY1oKjqPLZXBLC5vBlb8ij0NWJjaQOzdX8L1pecxPDTUQiioSEixWBQ/XbGy87kcsI3h1FS3Ql/fRgVp4J896rOhPje7a7pwk5/GwfbcbAVxf52Cl6PR8/GICh8KDKfnGWToGGxYM+1Bygsa8Ke2m7sIoHi6g4UH+rAtgNneb3Q14RNlOWGvfUooCzXFR3F0JPn1EO6IqZhs5B3XRQ1m+HDxyNouXgL3f330Xn5HlpDd9EWHkB7eBDtfYPZ/9AAAsHbTF3Xde6vwEKGyYJLeMLeAXm95MvsunyifyP/8yoU8oX+FF1tL5uElXsAK3jrwr+c/gfBe4f8hBQt9541fk7GGo6SrCJNtmny8zR4Lmv4DdIW9HgVRutFAAAAAElFTkSuQmCC\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/d0a313f393bdf95741776a1fb78773f8/09400/drone7.webp 174w,\n/static/d0a313f393bdf95741776a1fb78773f8/3266f/drone7.webp 348w,\n/static/d0a313f393bdf95741776a1fb78773f8/657d2/drone7.webp 696w,\n/static/d0a313f393bdf95741776a1fb78773f8/e644e/drone7.webp 1044w,\n/static/d0a313f393bdf95741776a1fb78773f8/8daba/drone7.webp 1392w,\n/static/d0a313f393bdf95741776a1fb78773f8/7ca41/drone7.webp 2020w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/d0a313f393bdf95741776a1fb78773f8/88093/drone7.png 174w,\n/static/d0a313f393bdf95741776a1fb78773f8/91d18/drone7.png 348w,\n/static/d0a313f393bdf95741776a1fb78773f8/871fd/drone7.png 696w,\n/static/d0a313f393bdf95741776a1fb78773f8/4e07d/drone7.png 1044w,\n/static/d0a313f393bdf95741776a1fb78773f8/aeb15/drone7.png 1392w,\n/static/d0a313f393bdf95741776a1fb78773f8/636bd/drone7.png 2020w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/d0a313f393bdf95741776a1fb78773f8/871fd/drone7.png"\n            alt="build"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">build</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h3,{id:"logs-are-important"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#logs-are-important"},i.createElement(a.span,{className:"icon icon-link"})),"Logs are important"),"\n",i.createElement(a.p,null,"For a better experience reading and navigating logs, we added a fullscreen mode and the ability to download logs, which is particularly useful if your logs are massive and you want to review them in your personal favourite editor."),"\n",i.createElement(a.h3,{id:"synchronization-does-not-block-your-work"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#synchronization-does-not-block-your-work"},i.createElement(a.span,{className:"icon icon-link"})),"Synchronization does not block your work"),"\n",i.createElement(a.p,null,"Some Drone clients have a massive list of repositories and synchronizing them all with Drone takes some time. Previously, synchronizing was a fullscreen task and did not allow you to close the screen or continue working with existing lists of repositories. Now, it’s simply a small button with animations that play during synchronization."),"\n",i.createElement(a.h3,{id:"clever-loading"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#clever-loading"},i.createElement(a.span,{className:"icon icon-link"})),"Clever loading"),"\n",i.createElement(a.p,null,"In the new version, when you load the data on the first app then jump to another page, Drone draws on the existing list and shows a clear indication that data is loading. No more waiting or watching for spinners; if there’s data, it renders immediately."),"\n",i.createElement(a.h3,{id:"nice-icons-for-empty-states"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#nice-icons-for-empty-states"},i.createElement(a.span,{className:"icon icon-link"})),"Nice Icons for empty states"),"\n",i.createElement(a.p,null,"We put a lot of effort to make fancy even empty states and made a lot of different icons you would be able to enjoy on various pages."),"\n",i.createElement(a.span,{dangerouslySetInnerHTML:{__html:'<figure class="gatsby-resp-image-figure" style="">\n    <span\n      class="gatsby-resp-image-wrapper"\n      style="position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 696px; "\n    >
1\n      <span\n    class="gatsby-resp-image-background-image"\n    style="padding-bottom: 66.66666666666666%; position: relative; bottom: 0; left: 0; background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAAsTAAALEwEAmpwYAAABCUlEQVR42rVSTUvDQBDt//8R4qHgwYOooCcLUlEvhoqoIF5KxdIPk+aju5vdmXluqpWmScylXVjYnXnz8eZNBzs+nW2DtoCy7YHGY4xrSCi/n1gLTgeEw77GLOaVTaQaVBQMhoSbN4dY/QCkLmFigIuBwvFdiq+sDNx8R0tB78XiLNCYJuXCFcqjOWE4c62UxwvGR8jtM9y5KMyyunWz+6PufeQxVIPbb4eWgPep4HXMfiWaW9SW0XtKcPmwwNJw89pkRnASOHRv81qV1yf1uPNAodtPMU+pqrJsAI/ucxxcK4QZNyYslv9xJLh6zhFt4UqUyfsmfqEnMYH/EaXwhZ7BZ0RwvGdRvgFvvP7oRYI0vwAAAABJRU5ErkJggg==\'); background-size: cover; display: block;"\n  ></span>\n  <picture>\n          <source\n              srcset="/static/462bf1bbf1da87284d76a42da53bf7b6/09400/drone8.webp 174w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/3266f/drone8.webp 348w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/657d2/drone8.webp 696w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/e644e/drone8.webp 1044w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/5bb53/drone8.webp 1200w"\n              sizes="(max-width: 696px) 100vw, 696px"\n              type="image/webp"\n            />\n          <source\n            srcset="/static/462bf1bbf1da87284d76a42da53bf7b6/88093/drone8.png 174w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/91d18/drone8.png 348w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/871fd/drone8.png 696w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/4e07d/drone8.png 1044w,\n/static/462bf1bbf1da87284d76a42da53bf7b6/5ece7/drone8.png 1200w"\n            sizes="(max-width: 696px) 100vw, 696px"\n            type="image/png"\n          />\n          <img\n            class="gatsby-resp-image-image"\n            src="/static/462bf1bbf1da87284d76a42da53bf7b6/871fd/drone8.png"\n            alt="Icons"\n            title=""\n            loading="lazy"\n            decoding="async"\n            style="width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"\n          />\n        </picture>\n    </span>\n    <figcaption class="gatsby-resp-image-figcaption">Icons</figcaption>\n  </figure>'}}),"\n",i.createElement(a.h2,{id:"what-else-can-you-expect-from-drone"},i.createElement(a.a,{"aria-hidden":"true",tabIndex:"-1",href:"#what-else-can-you-expect-from-drone"},i.createElement(a.span,{className:"icon icon-link"})),"What else can you expect from Drone?"),"\n",i.createElement(a.p,null,"There are already plans for a Drone 1.1 release, with key features including:"),"\n",i.createElement(a.ul,null,"\n",i.createElement(a.li,null,"A “Deploy” button for a specific environment from the build page"),"\n",i.createElement(a.li,null,"The ability to filter builds by branches and environments"),"\n",i.createElement(a.li,null,"User friendly tooltips for users who have just installed Drone"),"\n",i.createElement(a.li,null,"A new approach to real-time updates"),"\n",i.createElement(a.li,null,"Improved user management"),"\n"))}var r=function(e){void 0===e&&(e={});const{wrapper:a}=Object.assign({},(0,t.RP)(),e.components);return a?i.createElement(a,e,i.createElement(s,e)):s(e)},o=n(2532),c=n(1021),d=n(545),l=n(9072),p=n(3669),g=n(9063),b=n(352),f=n(84);const m=e=>{let{data:{mdx:{author:a,frontmatter:n,fields:{slug:t}},allMdx:{nodes:s}},location:r,pageContext:{videoCovers:o},children:b}=e;return i.createElement(g.A,{headerTheme:"black",headerShowThemeButton:!0},i.createElement("article",{className:"safe-paddings pt-32 sm:pt-24"},i.createElement("div",{className:"container"},i.createElement("div",{className:"relative mx-auto max-w-[696px] xl:mx-0 xl:flex xl:max-w-none xl:justify-center xl:space-x-20 lg:space-x-8 md:block md:space-x-0"},i.createElement("div",{className:"xl:max-w-[696px] lg:max-w-[626px] md:max-w-none"},i.createElement(d.A,Object.assign({},n,{slug:t})),i.createElement(c.A,{content:b,videoCovers:o})),i.createElement(l.A,{author:a,readMorePosts:s,socialShareUrl:r.href})))),i.createElement(p.A,{withTopMargin:!0}))};function u(e){return i.createElement(m,e,i.createElement(r,e))}const w=e=>{let{data:{mdx:{frontmatter:{title:a,summary:n,ogImage:t}}}}=e;const s=(0,o.d)(t);return i.createElement(b.A,f.A.blogPost({title:a,description:n,ogImage:s}))}}}]);
2//# sourceMappingURL=component---src-templates-blog-post-jsx-content-file-path-content-posts-2019-04-11-how-did-we-make-open-source-ci-better-index-md-7a2ae375606d076bc359.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.