main
1# frozen_string_literal: true
2
3class Package
4 INCLUDED_FILES = [
5 ".ruby-version",
6 "BUILD",
7 "Dockerfile",
8 "Gemfile*",
9 "Procfile",
10 "Rakefile",
11 "app/**/*",
12 "bin/*",
13 "config.ru",
14 "config/**/*",
15 "db/**/*",
16 "lib/**/*",
17 "public/**/*",
18 "public/.well-known/*",
19 "vendor/cache/**/*"
20 ].freeze
21
22 EXCLUDED_FILES = [
23 "bin/*",
24 "config/database.yml",
25 "db/*.sqlite3",
26 /public\/packs-test/,
27 ].freeze
28
29 def self.execute
30 require 'rake/packagetask'
31
32 build = `git rev-parse --short HEAD`.strip
33 IO.write("./BUILD", build)
34 name = Rails.application.class.name.split(':')[0].downcase
35 Rake::PackageTask.new(name, build) do |package|
36 package.need_tar_gz = true
37 package.package_files.add INCLUDED_FILES
38 package.package_files.exclude EXCLUDED_FILES
39 end
40 Rake::Task['repackage'].invoke
41 end
42end