2024-04-21 22:36:08 +02:00
|
|
|
namespace :schema do
|
2024-04-22 03:13:01 +02:00
|
|
|
workdir = File.join(__dir__, "..", "..", "..")
|
2024-04-21 22:36:08 +02:00
|
|
|
desc "Regenerate the GraphQL schema (server-side and client-side)"
|
|
|
|
task regen: %i[regen:server regen:client]
|
|
|
|
|
|
|
|
task :'regen:server' do
|
|
|
|
Dir.chdir(workdir) do
|
2024-04-24 08:26:57 +02:00
|
|
|
require "twenty/server"
|
2024-04-25 23:49:23 +02:00
|
|
|
schema = File.join(Dir.getwd, "server", "share", "twenty", "server", "schema.graphql")
|
2024-04-21 22:36:08 +02:00
|
|
|
mkdir_p File.dirname(schema)
|
|
|
|
File.binwrite schema, Twenty::GraphQL::Schema.to_definition
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
task :'regen:client' do
|
2024-04-22 01:08:29 +02:00
|
|
|
Dir.chdir(File.join(workdir, "client")) do
|
2024-04-21 22:36:08 +02:00
|
|
|
sh "npm exec graphql-codegen"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|