Skip to content

Commit dd8cdb2

Browse files
committed
fix: ✨ adjust permissions
1 parent 230620a commit dd8cdb2

File tree

1 file changed

+27
-6
lines changed

1 file changed

+27
-6
lines changed

backend/Rakefile

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,12 @@ require 'sequel'
44
require 'fileutils'
55

66
environment = ENV['ENVIRONMENT'] || 'development'
7-
DB_PATH = "./src/database/database_#{environment}.sqlite3"
7+
DB_DIR = File.expand_path('./src/database')
8+
DB_PATH = File.join(DB_DIR, "database_#{environment}.sqlite3")
9+
10+
FileUtils.mkdir_p(DB_DIR)
11+
FileUtils.chmod(0755, DB_DIR) unless File.stat(DB_DIR).mode.to_s(8)[-3..-1] == '755'
12+
813
DB = Sequel.sqlite(DB_PATH)
914

1015
namespace :db do
@@ -14,6 +19,7 @@ namespace :db do
1419
puts "Database already exists at #{DB_PATH}"
1520
else
1621
FileUtils.touch(DB_PATH)
22+
FileUtils.chmod(0644, DB_PATH)
1723
puts "Database created at #{DB_PATH}"
1824
end
1925
end
@@ -32,8 +38,8 @@ namespace :db do
3238
task :migrate do
3339
Sequel.extension :migration
3440
Sequel::Migrator.run(DB, './src/database/migrations')
35-
puts "Migrations ran successfully."
36-
Rake::Task["db:generate_schema"].invoke
41+
puts 'Migrations ran successfully.'
42+
Rake::Task['db:generate_schema'].invoke
3743
end
3844

3945
desc 'Create a new migration with a version number'
@@ -68,7 +74,7 @@ namespace :db do
6874
task :rollback do
6975
Sequel.extension :migration
7076
Sequel::Migrator.run(DB, './src/database/migrations', target: DB.tables.size - 1)
71-
puts "Last migration rolled back."
77+
puts 'Last migration rolled back.'
7278
Rake::Task["db:generate_schema"].invoke
7379
end
7480

@@ -83,8 +89,8 @@ namespace :db do
8389
column_type = column_details[:db_type]
8490
file.puts " #{column_name} #{column_type},"
8591
end
86-
file.puts ");"
87-
file.puts ""
92+
file.puts ');'
93+
file.puts ''
8894
end
8995
end
9096
puts "Schema generated at #{schema_path}"
@@ -100,4 +106,19 @@ namespace :db do
100106
puts 'No seed file found.'
101107
end
102108
end
109+
110+
desc 'Ensure proper database permissions'
111+
task :ensure_permissions do
112+
unless File.writable?(DB_DIR)
113+
puts "Setting correct permissions for #{DB_DIR}"
114+
FileUtils.chmod(0755, DB_DIR)
115+
end
116+
117+
if File.exist?(DB_PATH) && !File.writable?(DB_PATH)
118+
puts "Setting correct permissions for #{DB_PATH}"
119+
FileUtils.chmod(0644, DB_PATH)
120+
end
121+
end
103122
end
123+
124+
Rake::Task['db:ensure_permissions'].invoke

0 commit comments

Comments
 (0)