diff --git a/apps.awesim.org/apps/activejobs/initializers/filter.rb b/apps.awesim.org/apps/activejobs/initializers/filter.rb index 4436f4c2..f92feee4 100644 --- a/apps.awesim.org/apps/activejobs/initializers/filter.rb +++ b/apps.awesim.org/apps/activejobs/initializers/filter.rb @@ -1,8 +1,10 @@ -# Add a filter by group option and insert it after the first option. -Filter.list.insert(1, Filter.new.tap { |f| - group = OodSupport::User.new.group.name - f.title = "Your Group's Jobs (#{group})" - f.filter_id = "group" - # N.B. Need to use :egroup here for now. My Oodsupport group name is 'appl' but job 'Account_Name' is 'PZS0002' - f.filter_block = Proc.new { |job| job.native[:egroup] == group || job.native[:group_name] == group || job.accounting_id.to_s.downcase == group.downcase } -}) +Rails.application.config.after_initialize do + # Add a filter by group option and insert it after the first option. + Filter.list.insert(1, Filter.new.tap { |f| + group = OodSupport::User.new.group.name + f.title = "Your Group's Jobs (#{group})" + f.filter_id = "group" + # N.B. Need to use :egroup here for now. My Oodsupport group name is 'appl' but job 'Account_Name' is 'PZS0002' + f.filter_block = Proc.new { |job| job.native[:egroup] == group || job.native[:group_name] == group || job.accounting_id.to_s.downcase == group.downcase } + }) +end \ No newline at end of file diff --git a/apps.awesim.org/apps/activejobs/initializers/ood_clusters_fix.rb b/apps.awesim.org/apps/activejobs/initializers/ood_clusters_fix.rb index 8b5d67cf..9b1582c2 100644 --- a/apps.awesim.org/apps/activejobs/initializers/ood_clusters_fix.rb +++ b/apps.awesim.org/apps/activejobs/initializers/ood_clusters_fix.rb @@ -1,7 +1,9 @@ -OodAppkit.clusters = OodCore::Clusters.new( - OodAppkit.clusters.reject { |cluster| [:quick_pitzer].include?(cluster.id) } -) +Rails.application.config.after_initialize do + OodAppkit.clusters = OodCore::Clusters.new( + OodAppkit.clusters.reject { |cluster| [:quick_pitzer].include?(cluster.id) } + ) -if defined?(OODClusters) - OODClusters = OodCore::Clusters.new(OodAppkit.clusters.select(&:job_allow?)) -end + if defined?(OODClusters) + OODClusters = OodCore::Clusters.new(OodAppkit.clusters.select(&:job_allow?)) + end +end \ No newline at end of file diff --git a/apps.awesim.org/apps/dashboard/initializers/ood.rb b/apps.awesim.org/apps/dashboard/initializers/ood.rb index a69726ff..d08b115f 100644 --- a/apps.awesim.org/apps/dashboard/initializers/ood.rb +++ b/apps.awesim.org/apps/dashboard/initializers/ood.rb @@ -1,26 +1,34 @@ -# AweSim OOD config -def add_paths - OodFilesApp.candidate_favorite_paths.tap do |paths| - # add project space directories - projects = User.new.groups.map(&:name).grep(/^P./) - paths.concat projects.map { |p| Pathname.new("/fs/project/#{p}") } +Rails.application.config.after_initialize do + def add_paths + OodFilesApp.candidate_favorite_paths.tap do |paths| + # add project space directories + projects = User.new.groups.map(&:name).grep(/^P./) + + # add scratch space directories + paths << Pathname.new("/fs/scratch/#{User.new.name}") + paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } - # add scratch space directories - paths << Pathname.new("/fs/scratch/#{User.new.name}") - paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } - - # add ess scratch and project directories - paths.concat projects.map { |p| Pathname.new("/fs/ess/scratch/#{p}") } - paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + end end -end -fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` -add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') + fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` + add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') -# don't show develop dropdown unless you are setup for app sharing -Configuration.app_development_enabled = UsrRouter.base_path.directory? -Configuration.app_sharing_facls_enabled = true + require 'socket' + hostname = Socket.gethostname + case hostname + when /dev/ + idp = 'https://idp-dev.osc.edu' + when /test/ + idp = 'https://idp-test.osc.edu' + NavConfig.categories_whitelist=true # TODO: need to remove when upgrading to 4.0 + else + idp = 'https://idp.osc.edu' + NavConfig.categories_whitelist=true # TODO: need to remove when upgrading to 4.0 + end + + ENV['OOD_DASHBOARD_HELP_CUSTOM_URL'] = "#{idp}/realms/osc/account/#/security/linked-accounts" +end -NavConfig.categories_whitelist=true diff --git a/apps.awesim.org/apps/dashboard/initializers/usr_router_patch.rb b/apps.awesim.org/apps/dashboard/initializers/usr_router_patch.rb deleted file mode 100644 index 6431846e..00000000 --- a/apps.awesim.org/apps/dashboard/initializers/usr_router_patch.rb +++ /dev/null @@ -1,17 +0,0 @@ -class UsrRouter - def owner_title - return @owner_title if defined?(@owner_title) - - @owner_title ||= (Etc.getpwnam(owner).gecos || owner) - rescue - @owner_title = owner - end - - def caption - if owner_title == owner - "Shared by #{owner}" - else - "Shared by #{owner_title} (#{owner})" - end - end -end diff --git a/apps.totalsim.us/apps/dashboard/initializers/ood.rb b/apps.totalsim.us/apps/dashboard/initializers/ood.rb index 62a47e15..6ebaa6d4 100644 --- a/apps.totalsim.us/apps/dashboard/initializers/ood.rb +++ b/apps.totalsim.us/apps/dashboard/initializers/ood.rb @@ -1,7 +1,15 @@ -# hide all menu options -NavConfig.categories = ['Files'] -NavConfig.categories_whitelist=true +Rails.application.config.after_initialize do + require 'socket' + hostname = Socket.gethostname -# enable dev mode for all configured app developers -Configuration.app_development_enabled = UsrRouter.base_path.directory? -Configuration.app_sharing_facls_enabled = true + # TODO: remove when upgrading to 4.0 + unless hostname =~ /dev/ + # hide all menu options + NavConfig.categories = ['Files'] + NavConfig.categories_whitelist=true + end + + # enable dev mode for all configured app developers + Configuration.app_development_enabled = UsrRouter.base_path.directory? + Configuration.app_sharing_facls_enabled = true +end \ No newline at end of file diff --git a/class.osc.edu/apps/dashboard/initializers/k8s_core.rb b/class.osc.edu/apps/dashboard/initializers/k8s_core.rb deleted file mode 100644 index 09c95f74..00000000 --- a/class.osc.edu/apps/dashboard/initializers/k8s_core.rb +++ /dev/null @@ -1,16 +0,0 @@ -require 'ood_core/job/adapters/kubernetes' -require 'ood_core/job/adapters/kubernetes/helper' - -# monkey patch until https://github.com/OSC/ood_core/pull/778 is released -class OodCore::Job::Adapters::Kubernetes::Helper - def secret_info_from_json(json_data) - data = json_data.to_h[:data] || {} - - info = data.symbolize_keys.each_with_object({}) do |data_kv, hash| - hash[data_kv[0]] = Base64.decode64(data_kv[1]) - rescue - next - end - { ood_connection_info: info } - end -end \ No newline at end of file diff --git a/class.osc.edu/apps/dashboard/initializers/stats2480.rb b/class.osc.edu/apps/dashboard/initializers/stats2480.rb index 5bae25f5..2d4e422d 100644 --- a/class.osc.edu/apps/dashboard/initializers/stats2480.rb +++ b/class.osc.edu/apps/dashboard/initializers/stats2480.rb @@ -1,18 +1,20 @@ -def add_paths - OodFilesApp.candidate_favorite_paths.tap do |paths| - # add project space directories - projects = User.new.groups.map(&:name).grep(/^P./) - paths.concat projects.map { |p| Pathname.new("/fs/project/#{p}") } +Rails.application.config.after_initialize do + def add_paths + OodFilesApp.candidate_favorite_paths.tap do |paths| + # add project space directories + projects = User.new.groups.map(&:name).grep(/^P./) + paths.concat projects.map { |p| Pathname.new("/fs/project/#{p}") } - # add scratch space directories - paths << Pathname.new("/fs/scratch/#{User.new.name}") - paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } + # add scratch space directories + paths << Pathname.new("/fs/scratch/#{User.new.name}") + paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } - # add ess scratch and project directories - paths.concat projects.map { |p| Pathname.new("/fs/ess/scratch/#{p}") } - paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + # add ess scratch and project directories + paths.concat projects.map { |p| Pathname.new("/fs/ess/scratch/#{p}") } + paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + end end -end -fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` -add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') + fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` + add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') +end \ No newline at end of file diff --git a/ondemand.osc.edu/apps/activejobs/initializers/filter.rb b/ondemand.osc.edu/apps/activejobs/initializers/filter.rb index 4436f4c2..f92feee4 100644 --- a/ondemand.osc.edu/apps/activejobs/initializers/filter.rb +++ b/ondemand.osc.edu/apps/activejobs/initializers/filter.rb @@ -1,8 +1,10 @@ -# Add a filter by group option and insert it after the first option. -Filter.list.insert(1, Filter.new.tap { |f| - group = OodSupport::User.new.group.name - f.title = "Your Group's Jobs (#{group})" - f.filter_id = "group" - # N.B. Need to use :egroup here for now. My Oodsupport group name is 'appl' but job 'Account_Name' is 'PZS0002' - f.filter_block = Proc.new { |job| job.native[:egroup] == group || job.native[:group_name] == group || job.accounting_id.to_s.downcase == group.downcase } -}) +Rails.application.config.after_initialize do + # Add a filter by group option and insert it after the first option. + Filter.list.insert(1, Filter.new.tap { |f| + group = OodSupport::User.new.group.name + f.title = "Your Group's Jobs (#{group})" + f.filter_id = "group" + # N.B. Need to use :egroup here for now. My Oodsupport group name is 'appl' but job 'Account_Name' is 'PZS0002' + f.filter_block = Proc.new { |job| job.native[:egroup] == group || job.native[:group_name] == group || job.accounting_id.to_s.downcase == group.downcase } + }) +end \ No newline at end of file diff --git a/ondemand.osc.edu/apps/activejobs/initializers/ood_clusters_fix.rb b/ondemand.osc.edu/apps/activejobs/initializers/ood_clusters_fix.rb index 8b5d67cf..9b1582c2 100644 --- a/ondemand.osc.edu/apps/activejobs/initializers/ood_clusters_fix.rb +++ b/ondemand.osc.edu/apps/activejobs/initializers/ood_clusters_fix.rb @@ -1,7 +1,9 @@ -OodAppkit.clusters = OodCore::Clusters.new( - OodAppkit.clusters.reject { |cluster| [:quick_pitzer].include?(cluster.id) } -) +Rails.application.config.after_initialize do + OodAppkit.clusters = OodCore::Clusters.new( + OodAppkit.clusters.reject { |cluster| [:quick_pitzer].include?(cluster.id) } + ) -if defined?(OODClusters) - OODClusters = OodCore::Clusters.new(OodAppkit.clusters.select(&:job_allow?)) -end + if defined?(OODClusters) + OODClusters = OodCore::Clusters.new(OodAppkit.clusters.select(&:job_allow?)) + end +end \ No newline at end of file diff --git a/ondemand.osc.edu/apps/dashboard/initializers/ood.rb b/ondemand.osc.edu/apps/dashboard/initializers/ood.rb index 62cd63f3..d08b115f 100644 --- a/ondemand.osc.edu/apps/dashboard/initializers/ood.rb +++ b/ondemand.osc.edu/apps/dashboard/initializers/ood.rb @@ -1,30 +1,34 @@ -def add_paths - OodFilesApp.candidate_favorite_paths.tap do |paths| - # add project space directories - projects = User.new.groups.map(&:name).grep(/^P./) - - # add scratch space directories - paths << Pathname.new("/fs/scratch/#{User.new.name}") - paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } +Rails.application.config.after_initialize do + def add_paths + OodFilesApp.candidate_favorite_paths.tap do |paths| + # add project space directories + projects = User.new.groups.map(&:name).grep(/^P./) + + # add scratch space directories + paths << Pathname.new("/fs/scratch/#{User.new.name}") + paths.concat projects.map { |p| Pathname.new("/fs/scratch/#{p}") } - paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + paths.concat projects.map { |p| Pathname.new("/fs/ess/#{p}") } + end end -end -fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` -add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') + fs_outage = `grep node_file_test_failure /var/lib/node_exporter/textfile_collector/autofs-file-test.prom | grep -q ' 1'; echo $?` + add_paths if fs_outage.chomp == "1" && !File.exist?('/etc/ood/config/gpfs_outage') -NavConfig.categories_whitelist=true + require 'socket' + hostname = Socket.gethostname + case hostname + when /dev/ + idp = 'https://idp-dev.osc.edu' + when /test/ + idp = 'https://idp-test.osc.edu' + NavConfig.categories_whitelist=true # TODO: need to remove when upgrading to 4.0 + else + idp = 'https://idp.osc.edu' + NavConfig.categories_whitelist=true # TODO: need to remove when upgrading to 4.0 + end -require 'socket' -hostname = Socket.gethostname -case hostname -when /dev/ - idp = 'https://idp-dev.osc.edu' -when /test/ - idp = 'https://idp-test.osc.edu' -else - idp = 'https://idp.osc.edu' + ENV['OOD_DASHBOARD_HELP_CUSTOM_URL'] = "#{idp}/realms/osc/account/#/security/linked-accounts" end -ENV['OOD_DASHBOARD_HELP_CUSTOM_URL'] = "#{idp}/realms/osc/account/#/security/linked-accounts" + diff --git a/ondemand.osc.edu/apps/dashboard/initializers/usr_sharing.rb b/ondemand.osc.edu/apps/dashboard/initializers/usr_sharing.rb index d5f2fef8..1663dedc 100644 --- a/ondemand.osc.edu/apps/dashboard/initializers/usr_sharing.rb +++ b/ondemand.osc.edu/apps/dashboard/initializers/usr_sharing.rb @@ -1,2 +1,3 @@ -Configuration.app_sharing_facls_enabled = true - +Rails.application.config.after_initialize do + Configuration.app_sharing_facls_enabled = true +end diff --git a/ondemand.osc.edu/apps/myjobs/initializers/ood_appkit_pitzer_exp_fix.rb b/ondemand.osc.edu/apps/myjobs/initializers/ood_appkit_pitzer_exp_fix.rb index f48f7923..5d51d98e 100644 --- a/ondemand.osc.edu/apps/myjobs/initializers/ood_appkit_pitzer_exp_fix.rb +++ b/ondemand.osc.edu/apps/myjobs/initializers/ood_appkit_pitzer_exp_fix.rb @@ -1,7 +1,8 @@ -Rails.application.configure do |config| - ActiveSupport.on_load(:active_record) do - Workflow.where(batch_host: 'pitzer-exp').update_all(batch_host: 'pitzer') - Workflow.where(batch_host: 'owens-slurm').update_all(batch_host: 'owens') - end if Configuration.production_database_path.file? +Rails.application.config.after_initialize do + Rails.application.configure do |config| + ActiveSupport.on_load(:active_record) do + Workflow.where(batch_host: 'pitzer-exp').update_all(batch_host: 'pitzer') + Workflow.where(batch_host: 'owens-slurm').update_all(batch_host: 'owens') + end if Configuration.production_database_path.file? + end end - diff --git a/ondemand.osc.edu/apps/myjobs/initializers/workflow_presubmit_validation.rb b/ondemand.osc.edu/apps/myjobs/initializers/workflow_presubmit_validation.rb index e6bf620b..d385a27c 100644 --- a/ondemand.osc.edu/apps/myjobs/initializers/workflow_presubmit_validation.rb +++ b/ondemand.osc.edu/apps/myjobs/initializers/workflow_presubmit_validation.rb @@ -1,20 +1,22 @@ -# array_ids is not currently exported automatically from ood_core -require 'ood_core/job/array_ids' -require 'workflow' +Rails.application.config.after_initialize do + # array_ids is not currently exported automatically from ood_core + require 'ood_core/job/array_ids' + require 'workflow' -class Workflow - validate :task_count_may_not_exceed_max_job_array_tasks - MAX_JOB_ARRAY_TASKS = 1000 + class Workflow + validate :task_count_may_not_exceed_max_job_array_tasks + MAX_JOB_ARRAY_TASKS = 1000 - def task_count_may_not_exceed_max_job_array_tasks - if ! task_count_ok? - errors.add(:job_array_request, "must result in less than #{Workflow::MAX_JOB_ARRAY_TASKS} tasks.") + def task_count_may_not_exceed_max_job_array_tasks + if ! task_count_ok? + errors.add(:job_array_request, "must result in less than #{Workflow::MAX_JOB_ARRAY_TASKS} tasks.") + end end - end - def task_count_ok? - return true if (job_array_request.nil? || job_array_request.empty?) + def task_count_ok? + return true if (job_array_request.nil? || job_array_request.empty?) - OodCore::Job::ArrayIds.new(job_array_request).ids.size <= Workflow::MAX_JOB_ARRAY_TASKS + OodCore::Job::ArrayIds.new(job_array_request).ids.size <= Workflow::MAX_JOB_ARRAY_TASKS + end end end \ No newline at end of file