update from sparkleup
This commit is contained in:
parent
d51eb82a76
commit
ac92658e97
|
@ -17,7 +17,7 @@
|
|||
<p>Continuous integration (CI) refers to the practice of multiple developers merging their changes to a codebase back into the main branch often, perhaps daily or even more frequently, relying on smaller chunks of work that are more easily reviewed to and tested during the process of development. In order to ensure that these changes don’t leave the main branch in a broken state, a tool that helps with continuous integration will often include functionality that runs test suites within the software package. When a developer proposes a merge of their work back into the main branch, the tests will run automatically and report back whether or not they pass, which may mean that the code is not ready to land.</p>
|
||||
<p>Continuous deployment or continuous delibery (CD) refers to the idea that changes to code — whether they’re security patches, bug fixes, or new features — be released quickly and seamlessly to the end users of the application. In the case of applications that the user runs, this will mean a frequent release schedule, offering incremental improvements to the software they are using. In the case of a service such as a website, this will mean frequent deployments of the new features in the code to the site so that the user’s experience is continuously improving.</p>
|
||||
<p>There are several tools that can help with CI/CD. These run as their own web services, which work with many source code management (SCM) systems to perform these tasks automatically. <a href="https://drone.io">Drone</a> is one such solution, that provides a way of executing <strong>pipelines</strong> — sets of steps that the service will run through such as building the software and running tests — that are described in the code itself. Drone is a flexible CI/CD tool that can perform this on many different types of <strong>runners</strong>, containers or machines where the project can be repeatably built.</p>
|
||||
<p>This tutorial aims to show how Drone can integrate with the source code management tool Gitea in order to offer fully self-hosted solutions for SCM and CI/CD. You will be installing Drone, connecting it with Gitea, and creating a test project to see how the two services work together.</p>
|
||||
<p>This tutorial aims to show how Drone can integrate with the source code management tool Gitea in order to offer fully self-hosted solutions for SCM and CI/CD. You will be installing Drone, connecting it with Gitea, and creating a sample project for Drone to run tests on in order to see how the two services work together.</p>
|
||||
<h3 id="prerequisites">Prerequisites</h3>
|
||||
<p>In order to complete this tutorial, you will need the following:</p>
|
||||
<ul>
|
||||
|
@ -169,8 +169,9 @@ git push origin main
|
|||
</code></pre></div>
|
||||
|
||||
<p>Commit and push your work as you did before, and then return to your Drone dashboard. Thankfully, 1 does not equal 2, and so our test fails as expected.</p>
|
||||
<p>These results are also visible in Gitea, where you can see whether a particular commit broke the build. Visit your repo in Gitea and click on the <strong>Commits</strong> link above the file listing. You should see all of your commits that went into creating this test project. Before the commit where you checked whether 1 was equal to 2, you should see a red **</p>
|
||||
<p>These results are also visible in Gitea, where you can see whether a particular commit broke the build. Visit your repository in Gitea and click on the <strong>Commits</strong> link above the file listing. You should see all of your commits that went into creating this test project. Before the commit where you checked whether 1 was equal to 2, you should see a red <strong>×</strong> indicating that CI has failed, whereas you should see a green <strong>✓</strong> indicating that the build passed. Prior to that, before the repository was hooked up to Drone, you should see no indicators.</p>
|
||||
<h2 id="conclusion">Conclusion</h2>
|
||||
<p>In this tutorial, you set up the self-hosted CI/CD service Drone to work with your self-hosted Gitea service. CI/CD services can help keep your project in a clean state and your builds fresh and fast. Drone allows you to automatically run tests, checks, and deploys on your projects. Here, we are simply running a check every time a commit is pushed to Gitea, but the configuration files for Drone are flexible, allowing you to run checks on merges using triggers, run only on certain events using conditionals, and so on. For more information, the <a href="https://docs.drone.io/pipeline/docker/overview/">Drone Pipeline Docs</a> describe many common scenarios.</p>
|
||||
</article>
|
||||
<footer>
|
||||
<p>Page generated on 2022-06-30</p>
|
||||
|
|
Loading…
Reference in New Issue