Merge pull request #1685 from Homebrew/sync-shared-config
[Homebrew/formulae.brew.sh.git] / Rakefile
blob364b03a19cae4c434bac5c48a2b7b0d54473565e
1 # frozen_string_literal: true
3 require "date"
4 require "json"
5 require "rake"
6 require "rake/clean"
7 require "yaml"
9 task default: :generate
11 desc "Generate API files"
12 task generate: [:formulae, :casks, :analytics, :api_samples]
14 desc "Dump formula data"
15 task :formulae do
16   sh "brew", "generate-formula-api"
17 end
18 CLOBBER.include FileList[%w[_data/formula _data/formula_canonical.json api/formula api/formula_tap_migrations.json api/internal formula]]
20 desc "Dump cask data"
21 task :casks do
22   sh "brew", "generate-cask-api"
23 end
24 CLOBBER.include FileList[%w[_data/cask _data/cask_canonical.json api/cask api/cask-source api/cask_tap_migrations.json cask]]
26 def setup_analytics
27   ENV["HOMEBREW_NO_AUTO_UPDATE"] = "1"
28   return if `brew tap`.include?("homebrew/formula-analytics")
30   sh "brew", "tap", "homebrew/formula-analytics"
31 end
33 desc "Dump analytics data"
34 task :analytics do
35   setup_analytics
37   sh "brew", "generate-analytics-api"
38 end
39 CLOBBER.include FileList[%w[_data/analytics api/analytics]]
41 desc "Update API samples"
42 task :api_samples do
43   sh "ruby", "script/generate-api-samples.rb"
44 end
45 CLOBBER.include FileList[%w[_includes/api-samples]]