Initial commit
This commit is contained in:
0
lib/tasks/.keep
Normal file
0
lib/tasks/.keep
Normal file
50
lib/tasks/dev.rake
Normal file
50
lib/tasks/dev.rake
Normal file
@@ -0,0 +1,50 @@
|
||||
if Rails.env.development? || Rails.env.test? || Rails.env.review?
|
||||
require "factory_bot"
|
||||
|
||||
namespace :dev do
|
||||
desc "Sample data for local development environment"
|
||||
task :prime, [:skip_reset_db] => [:environment] do |_task, args|
|
||||
include FactoryBot::Syntax::Methods
|
||||
|
||||
Rake::Task["db:setup"].invoke unless args[:skip_reset_db].present?
|
||||
|
||||
data = {
|
||||
account_name: "Dev Account",
|
||||
account_plan: "me_suite",
|
||||
user_email: "dev@test.com",
|
||||
user_password: "password",
|
||||
}
|
||||
|
||||
# Account and Admin User
|
||||
dev_account = create(:account, name: data.fetch(:account_name), plan_uid: data.fetch(:account_plan))
|
||||
user = Oath::Services::SignUp.new(email: data.fetch(:user_email), password: data.fetch(:user_password), admin: true).perform
|
||||
|
||||
dev_account.account_auths.create(user: user, role: :account_manager)
|
||||
# Add Sample Project
|
||||
dev_account.projects << SampleProject.new
|
||||
dev_account.projects.first.save!
|
||||
|
||||
# Enable all sections for the sample project
|
||||
project = dev_account.projects.first
|
||||
project.settings(:features).update!({
|
||||
acquired_media_release: true,
|
||||
appearance_release: true,
|
||||
location_release: true,
|
||||
material_release: true,
|
||||
music_release: true,
|
||||
talent_release: true,
|
||||
video_analysis: true,
|
||||
})
|
||||
|
||||
# Add a ContractTemplate
|
||||
create(:contract_template, project: project)
|
||||
end
|
||||
|
||||
desc "Poll videos with pending analysis for updates"
|
||||
task poll_for_analysis_updates: :environment do
|
||||
puts "Polling videos with pending analysis for updates..."
|
||||
PendingAnalysis.poll
|
||||
puts "Done."
|
||||
end
|
||||
end
|
||||
end
|
||||
8
lib/tasks/scheduler.rake
Normal file
8
lib/tasks/scheduler.rake
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace :scheduler do
|
||||
desc "Expire videos which are still pending analysis after a period of time"
|
||||
task expire_videos_with_pending_analysis: :environment do
|
||||
puts "Updating videos with expired analysis..."
|
||||
PendingAnalysis.expire(1.hour.ago)
|
||||
puts "Done."
|
||||
end
|
||||
end
|
||||
20
lib/tasks/zoom.rake
Normal file
20
lib/tasks/zoom.rake
Normal file
@@ -0,0 +1,20 @@
|
||||
require 'zoom_gateway'
|
||||
namespace :zoom do
|
||||
desc "Setup necessary zoom roles and users"
|
||||
task :setup => :environment do
|
||||
zoom = Zoom.new
|
||||
|
||||
# Find or create DirectME host role
|
||||
host_role = zoom.roles_list["roles"].select{ |r| r["name"] == ZoomGateway.HOST_ROLE }.first
|
||||
if host_role.present?
|
||||
Rails.logger.info "Role #{host_role["name"]} already present."
|
||||
else
|
||||
host_role = zoom.roles_create({
|
||||
name: ZoomGateway.HOST_ROLE,
|
||||
description: "Directme meetings host",
|
||||
privileges: %w(Role:Read)
|
||||
})
|
||||
Rails.logger.info "Created role #{ZoomGateway.HOST_ROLE}."
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user