Class: Danger::Buildkite
Overview
### CI Setup
With BuildKite you run the server yourself, so you will want to run it as a part of your build process. It is common to have build steps, so we would recommend adding this to your scrip:
``` shell
echo "--- Running Danger"
bundle exec danger
```
### Token Setup
#### GitHub
As this is self-hosted, you will need to add the ‘DANGER_GITHUB_API_TOKEN` to your build user’s ENV. The alternative is to pass in the token as a prefix to the command ‘DANGER_GITHUB_API_TOKEN=“123” bundle exec danger`.
#### GitLab
As this is self-hosted, you will need to add the ‘DANGER_GITLAB_API_TOKEN` to your build user’s ENV. The alternative is to pass in the token as a prefix to the command ‘DANGER_GITLAB_API_TOKEN=“123” bundle exec danger`.
Instance Attribute Summary
Attributes inherited from CI
#pull_request_id, #repo_slug, #repo_url
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(env) ⇒ Buildkite
constructor
A new instance of Buildkite.
- #supported_request_sources ⇒ Object
Methods inherited from CI
available_ci_sources, inherited, #supports?
Constructor Details
#initialize(env) ⇒ Buildkite
Returns a new instance of Buildkite.
37 38 39 40 41 42 43 |
# File 'lib/danger/ci_source/buildkite.rb', line 37 def initialize(env) self.repo_url = env["BUILDKITE_REPO"] self.pull_request_id = env["BUILDKITE_PULL_REQUEST"] repo_matches = self.repo_url.match(%r{([\/:])([^\/]+\/[^\/.]+)(?:.git)?$}) self.repo_slug = repo_matches[2] unless repo_matches.nil? end |
Class Method Details
.validates_as_ci?(env) ⇒ Boolean
28 29 30 |
# File 'lib/danger/ci_source/buildkite.rb', line 28 def self.validates_as_ci?(env) env.key? "BUILDKITE" end |
.validates_as_pr?(env) ⇒ Boolean
32 33 34 35 |
# File 'lib/danger/ci_source/buildkite.rb', line 32 def self.validates_as_pr?(env) exists = ["BUILDKITE_PULL_REQUEST_REPO", "BUILDKITE_PULL_REQUEST"].all? { |x| env[x] } exists && !env["BUILDKITE_PULL_REQUEST_REPO"].empty? end |
Instance Method Details
#supported_request_sources ⇒ Object
45 46 47 |
# File 'lib/danger/ci_source/buildkite.rb', line 45 def supported_request_sources @supported_request_sources ||= [Danger::RequestSources::GitHub, Danger::RequestSources::GitLab] end |