No description
Find a file
TP Honey 9c80bfdcc4
Merge pull request #3144 from drone/verify-build
verify if the application is buildable
2021-09-20 10:33:11 +01:00
.github fix a broken link in readme 2021-09-12 14:44:59 +04:30
cmd/drone-server Merge pull request #3129 from tphoney/DRON-119 2021-09-08 17:18:31 +01:00
core tech qa feedback, add test for update & fix issue with visiability & config 2021-08-27 10:36:33 +01:00
docker fixing a small typo in the compose readme. (#3077) 2021-05-04 10:59:47 +01:00
handler event-stream supports timeout (#3125) 2021-08-31 17:45:07 +02:00
livelog Rename files with camelCase name to use snake_case convention 2021-08-30 16:19:38 +02:00
logger add build tags 2019-02-27 23:07:13 -08:00
metric (fix) use zero offset when selecting users 2021-09-13 14:34:00 -04:00
mock added error as return value for pubsub.Subscribers() 2021-07-22 18:56:41 +02:00
operator Merge pull request #3012 from OhBonsai/breaksoon 2021-07-06 17:32:42 +02:00
plugin Fix stepLimit param in Starlark and Template OSS code 2021-09-13 11:12:18 +05:45
pubsub Rename files with camelCase name to use snake_case convention 2021-08-30 16:19:38 +02:00
scheduler (feat) drone h/a: wrapped scheduler's signal func with redis mutex 2021-08-31 15:59:24 +02:00
scripts (feat) adding depends_on, image and detached fields to step 2021-06-22 13:57:04 +01:00
server Merge branch 'master' into master 2021-06-29 11:21:05 +02:00
service (feat) drone h/a: wrapped scheduler's signal func with redis mutex 2021-08-31 15:59:24 +02:00
session (fix) remove unused jwt-go library 2021-08-31 16:10:34 +01:00
store ability to cancel running builds if new commit is pushed 2021-08-26 17:21:00 +01:00
trigger Merge pull request #3088 from phil-davis/typo-fixes 2021-06-22 10:20:17 +01:00
version (maint)-release 2.3.1 2021-09-09 12:54:41 +01:00
web squash and merge local branch 2019-02-19 15:56:41 -08:00
.dockerignore update yaml for s3 upload 2016-05-26 11:08:48 -07:00
.drone.yml verify builds 2021-09-15 12:33:14 +02:00
.github_changelog_generator release 2.0.5 2021-08-17 11:10:04 +01:00
.gitignore event-stream supports timeout (#3125) 2021-08-31 17:45:07 +02:00
BUILDING remove deprecated steps 2021-06-22 16:33:40 +01:00
BUILDING_OSS fix OSS build for v1.4.0. 2019-09-16 17:48:57 +09:00
CHANGELOG.md (maint)-release 2.3.1 2021-09-09 12:54:41 +01:00
go.mod bump ui to v2.2.1 2021-09-09 12:44:02 +01:00
go.sum bump ui to v2.2.1 2021-09-09 12:44:02 +01:00
HISTORY.md release 2.0.5 2021-08-17 11:10:04 +01:00
LICENSE add rpc/v2 endpoint 2019-05-21 11:45:42 -07:00
NOTICE update notice [ci skip] 2019-02-19 19:55:28 -08:00
Taskfile.yml Tech QA Feedback & add support for organization level templates 2021-05-28 16:59:00 +01:00

Drone

Welcome to the Drone codebase, we are thrilled to have you here!

What is Drone?

Drone is a continuous delivery system built on container technology. Drone uses a simple YAML build file, to define and execute build pipelines inside Docker containers.

Table of Contents

Community

You can visit us at Discourse as well as our Slack.

Contributing

We encourage you to contribute to Drone! whether thats joining in on the community slack or discourse, or contributing pull requests / documentation changes or raising issues.

Code of Conduct

Drone follows the CNCF Code of Conduct.

Setup Documentation

This section of the documentation will help you install and configure the Drone Server and one or many Runners. A runner is a standalone daemon that polls the server for pending pipelines to execute.

Usage Documentation

Our documentation can help you get started with the different types of pipelines/builds. There are different runners / plugins / extensions designed for different use cases to help make an efficent and simple build pipeline

Plugin Index

Plugins are used in build steps to perform actions, eg send a message to slack or push a container to a registry. We have an extensive list of community plugins to customize your build pipeline, you can find those here.

Example .drone.yml build file.

This build file contains a single pipeline (you can have multiple pipelines too) that builds a go application. The front end with npm. Publishes the docker container to a registry and announces the results to a slack room.

name: default

kind: pipeline
type: docker

steps:
- name: backend
  image: golang
  commands:
    - go get
    - go build
    - go test

- name: frontend
  image: node:6
  commands:
    - npm install
    - npm test

- name: publish
  image: plugins/docker
  settings:
    repo: octocat/hello-world
    tags: [ 1, 1.1, latest ]
    registry: index.docker.io

- name: notify
  image: plugins/slack
  settings:
    channel: developers
    username: drone

Building from source

We have two versions available: the Enterprise Edition and the Community Edition

Release procedure

Run the changelog generator.

docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator -u drone -p drone -t <secret github token>

You can generate a token by logging into your GitHub account and going to Settings -> Personal access tokens.

Next we tag the PR's with the fixes or enhancements labels. If the PR does not fufil the requirements, do not add a label.

Before moving on make sure to update the version file version/version.go && version/version_test.go.

Run the changelog generator again with the future version according to semver.

docker run -it --rm -v "$(pwd)":/usr/local/src/your-app githubchangeloggenerator/github-changelog-generator -u drone -p drone -t <secret token> --future-release v1.0.0

Create your pull request for the release. Get it merged then tag the release.

⬆ Back to Top