Add security-todo and beta-checklists, and some security rake tasks
Some checks failed
CI / scan_ruby (push) Has been cancelled
CI / scan_js (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / system-test (push) Has been cancelled

This commit is contained in:
Dan Milne
2026-01-01 13:06:54 +11:00
parent e36a9a781a
commit 9234904e47
7 changed files with 542 additions and 1 deletions

31
lib/tasks/security.rake Normal file
View File

@@ -0,0 +1,31 @@
namespace :security do
desc "Run all security checks (brakeman + bundler-audit)"
task all: :environment do
Rake::Task["security:brakeman"].invoke
Rake::Task["security:bundler_audit"].invoke
end
desc "Run Brakeman static security scanner"
task brakeman: :environment do
puts "Running Brakeman security scanner..."
system("bin/brakeman --no-pager") || abort("Brakeman found security issues!")
end
desc "Run bundler-audit to check for vulnerable dependencies"
task bundler_audit: :environment do
puts "Running bundler-audit..."
system("bin/bundler-audit check --update") || abort("bundler-audit found vulnerable dependencies!")
end
desc "Generate code coverage report (requires tests to be run with COVERAGE=1)"
task :coverage do
puts "Running tests with coverage..."
ENV["COVERAGE"] = "1"
system("bin/rails test") || abort("Tests failed!")
puts "\nCoverage report generated at coverage/index.html"
end
end
# Alias for convenience
desc "Run all security checks"
task security: "security:all"