Module: Kennel::Tasks
- Defined in:
- lib/kennel/tasks.rb
Class Method Summary collapse
- .abort(message = nil) ⇒ Object
- .ci ⇒ Object
- .git_push? ⇒ Boolean
- .kennel ⇒ Object
- .load_environment ⇒ Object
- .on_default_branch? ⇒ Boolean
Class Method Details
.abort(message = nil) ⇒ Object
17 18 19 20 |
# File 'lib/kennel/tasks.rb', line 17 def abort( = nil) Kennel.err.puts if raise SystemExit.new(1), end |
.ci ⇒ Object
41 42 43 44 45 46 47 48 49 50 |
# File 'lib/kennel/tasks.rb', line 41 def ci load_environment if on_default_branch? && git_push? Kennel::Tasks.kennel.strict_imports = false Kennel::Tasks.kennel.update else Kennel::Tasks.kennel.plan # show plan in CI logs end end |
.git_push? ⇒ Boolean
61 62 63 |
# File 'lib/kennel/tasks.rb', line 61 def git_push? (ENV["TRAVIS_PULL_REQUEST"] == "false" || ENV["GITHUB_EVENT_NAME"] == "push") end |
.kennel ⇒ Object
13 14 15 |
# File 'lib/kennel/tasks.rb', line 13 def kennel @kennel ||= Kennel::Engine.new end |
.load_environment ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/kennel/tasks.rb', line 22 def load_environment @load_environment ||= begin require "kennel" gem "dotenv" require "dotenv" source = ".env" # warn when users have things like DATADOG_TOKEN already set and it will not be loaded from .env # (KENNEL_SILENCE_UPDATED_ENV is intentionally not documented - users see it when needed) unless ENV["KENNEL_SILENCE_UPDATED_ENV"] updated = Dotenv.parse(source).select { |k, v| ENV[k] && ENV[k] != v } warn "Environment variables #{updated.keys.join(", ")} need to be unset to be sourced from #{source}" if updated.any? end Dotenv.load(source) true end end |
.on_default_branch? ⇒ Boolean
52 53 54 55 56 57 58 59 |
# File 'lib/kennel/tasks.rb', line 52 def on_default_branch? branch = (ENV["TRAVIS_BRANCH"] || ENV["GITHUB_REF"]).to_s.sub(/^refs\/heads\//, "") if (default = ENV["DEFAULT_BRANCH"]) branch == default else ["main", "master"].include?(branch) end end |