Sha256: 0c4415f6bcb64b44eac7a58e070226898103bdbda4cf7f9c29e69352aeb7e08c
Contents?: true
Size: 1.68 KB
Versions: 2
Compression:
Stored size: 1.68 KB
Contents
require 'fileutils' require 'open-uri' require 'json' require 'erb' module Bourdain module Checks class Check < Bourdain::Resource protected def gemfile_version gem_name gemfile_lock = File.read 'Gemfile.lock' gemfile_lock =~ /#{gem_name} \((.*?)\)/ $1 end def rubygems_version gem_name versions_url = "https://rubygems.org/api/v1/versions/#{gem_name}.json" open(versions_url) do |f| versions = JSON::parse f.read versions = versions.sort_by { |v| v['number'] } versions.last['number'] end end def repo_dir repo File.join(Dir.pwd, repo) end def work_tree repo "--work-tree=#{repo_dir repo}" end def git_dir repo "--git-dir=#{File.join repo_dir(repo), '.git'}" end def youre_behind? repo `git fetch #{repo_dir repo} >/dev/null 2>&1` raise unless $?.exitstatus.zero? `git #{git_dir repo} log ..origin/master --oneline`.split("\n").length > 0 raise unless $?.exitstatus.zero? end def youre_ahead? repo `git fetch #{repo_dir repo} >/dev/null 2>&1` raise unless $?.exitstatus.zero? `git #{git_dir repo} log origin/master.. --oneline`.split("\n").length > 0 raise unless $?.exitstatus.zero? end def youre_dirty? repo `git #{git_dir repo} #{work_tree repo} diff HEAD --numstat`.split("\n").length > 0 raise unless $?.exitstatus.zero? end end end end require_relative 'checks/chef' require_relative 'checks/hooks' require_relative 'checks/bourdain' require_relative 'checks/cookbooks' require_relative 'checks/ssh_config'
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
bourdain-1.2.17 | lib/bourdain/resources/checks.rb |
bourdain-1.2.16 | lib/bourdain/resources/checks.rb |