Commit 82355e30511bf415c3ac3177dbb13e29cd77bfa9

Authored by Marcos Pereira
1 parent 53f76fb0

check if env and domain exists before create

Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Signed-off-by: Marcos Ronaldo <marcos.rpj2@gmail.com>
src/noosfero-spb/software_communities/lib/tasks/import_sisp_software.rake
... ... @@ -10,8 +10,9 @@ namespace :sisp do
10 10  
11 11 desc "Creates the SISP Environment"
12 12 task :create_env => :environment do
13   - env = Environment.create!(name: "SISP")
14   - env.domains << Domain.create!(name: "dev.sisp.gov.br")
  13 + env = Environment.find_or_create_by_name("SISP")
  14 + domain = Domain.find_or_create_by_name("novo.sisp.gov.br")
  15 + env.domains << domain unless env.domains.include?(domain)
15 16 create_link_blocks env
16 17  
17 18 puts "SISP Environment created"
... ... @@ -36,6 +37,11 @@ namespace :sisp do
36 37 task :create_template => :environment do
37 38 env = Environment.find_by_name("SISP")
38 39  
  40 + unless env.present?
  41 + Rake::Task['sisp:create_env'].invoke
  42 + env = Environment.find_by_name("SISP")
  43 + end
  44 +
39 45 if env.present?
40 46 template = Community.where(identifier: "sisp-software", environment_id: env).last
41 47 template.destroy if template
... ... @@ -47,9 +53,12 @@ namespace :sisp do
47 53  
48 54 env.community_default_template = template
49 55 env.save!
  56 +
  57 + puts "SISP Template created"
  58 + else
  59 + puts "SISP Template *NOT* created. Environment SISP not found."
50 60 end
51 61  
52   - puts "SISP Template created"
53 62 end
54 63  
55 64 def create_template_blocks template
... ... @@ -69,8 +78,9 @@ namespace :sisp do
69 78 $imported_data = YAML.load_file('plugins/software_communities/public/static/sisp-catalog.yml')
70 79 $env = Environment.find_by_name("SISP")
71 80  
72   - $software_category = Category.find_by_name("Software")
73   - $software_category ||= Category.create(:name => "Software", :environment => $env)
  81 + $software_category = Category.find_or_create_by_name("Software")
  82 + $software_category.environment = $env
  83 + $software_category.save!
74 84  
75 85 $sisp_user = create_sisp_user
76 86  
... ...