Sha256: 2d1554e884e77f5ef917ac4e75e503eef93960cbdcf6e5ba333367c7f63a6fe1

Contents?: true

Size: 1.47 KB

Versions: 6

Compression:

Stored size: 1.47 KB

Contents

require 'rubygems'
require 'rspec/core/rake_task'
require "bundler/gem_tasks"

task :default => [:spec, :test_core, :analyze_core]

desc "Run all specs in spec directory"
RSpec::Core::RakeTask.new(:spec)

task :spec => [:cross_build_core]

desc "Cross build core recorder/player"
task :cross_build_core do
  puts "Buildling binaries for each platform"
  Dir.chdir("./core") do
    sh "./build.sh"
    sh "make"
  end
end

task :build => :cross_build_core

desc "Install Golang libraries"
task :go_get do
  sh "go get -u github.com/hayamiz/go-projson"
  sh "go get -u github.com/hayamiz/perfmonger/core/subsystem"
  sh "go get -u golang.org/x/crypto/ssh/terminal"
  sh "go get -u github.com/mattn/go-isatty"
  sh "go get -u github.com/nsf/termbox-go"
  sh "go get -u github.com/jroimartin/gocui"
end

desc "Run tests of golang core library"
task :test_core => [:cross_build_core] do
  Dir.chdir("./core/subsystem") do
    # check coverage
    sh "go test -v -cover"
  end
end

desc "Run static-analysis of golang core library"
task :analyze_core => [:cross_build_core] do
  # running static analysis
  Dir.chdir("./core/subsystem") do
    ["linux", "darwin"].each do |platform|
      puts "* ./core/subsystem"
      sh "go vet perfmonger_#{platform}.go $(ls *.go | grep -v perfmonger_)"
    end
  end

  Dir["./core", "./core/cmd/*"].each do |dir|
    Dir.chdir(dir) do
      puts "* #{dir}"
      sh "go vet *.go"
    end
  end
end

desc "Removed generated files"
task :clean do
  sh "make -C core clean"
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
perfmonger-0.14.4 Rakefile
perfmonger-0.14.2 Rakefile
perfmonger-0.14.1 Rakefile
perfmonger-0.14.0 Rakefile
perfmonger-0.13.1 Rakefile
perfmonger-0.12.1 Rakefile