-
-
Notifications
You must be signed in to change notification settings - Fork 9
/
Rakefile
74 lines (57 loc) · 1.88 KB
/
Rakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# frozen_string_literal: true
begin
require 'bundler'
rescue LoadError => e
warn e.message
warn "Run `gem install bundler` to install Bundler"
exit(-1)
end
begin
Bundler.setup(:development)
rescue Bundler::BundlerError => e
warn e.message
warn "Run `bundle install` to install missing gems"
exit e.status_code
end
require 'rake'
require 'rubygems/tasks'
Gem::Tasks.new(sign: {checksum: true, pgp: true})
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new
namespace :spec do
RSpec::Core::RakeTask.new(:network) do |t|
t.rspec_opts = '--tag network'
end
end
task :test => :spec
task :default => :spec
require 'yard'
YARD::Rake::YardocTask.new
task :docs => :yard
require 'kramdown/man/task'
Kramdown::Man::Task.new
directory 'data/wordlists'
file 'data/wordlists/subdomains-1000.txt' => 'data/wordlists' do
sh 'wget -O data/wordlists/subdomains-1000.txt https://raw.githubusercontent.com/rbsec/dnscan/master/subdomains-1000.txt'
end
file 'data/wordlists/subdomains-1000.txt.gz' => 'data/wordlists/subdomains-1000.txt' do
sh 'gzip -f data/wordlists/subdomains-1000.txt'
end
file 'data/wordlists/raft-small-directories.txt' => 'data/wordlists' do
sh 'wget -O data/wordlists/raft-small-directories.txt https://raw.githubusercontent.com/danielmiessler/SecLists/master/Discovery/Web-Content/raft-small-directories.txt'
end
file 'data/wordlists/raft-small-directories.txt.gz' => 'data/wordlists/raft-small-directories.txt' do
sh 'gzip -f data/wordlists/raft-small-directories.txt'
end
desc 'Generate built-in wordlists'
task :wordlists => %w[
data/wordlists/subdomains-1000.txt.gz
data/wordlists/raft-small-directories.txt.gz
]
require 'command_kit/completion/task'
CommandKit::Completion::Task.new(
class_file: 'ronin/recon/cli',
class_name: 'Ronin::Recon::CLI',
output_file: 'data/completions/ronin-recon'
)
task :setup => %w[wordlists man command_kit:completion]