tim 0.1.2 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. data/Gemfile +17 -0
  2. data/README.rdoc +231 -8
  3. data/app/controllers/tim/application_controller.rb +6 -3
  4. data/app/controllers/tim/base_images_controller.rb +10 -18
  5. data/app/controllers/tim/image_versions_controller.rb +10 -9
  6. data/app/controllers/tim/provider_images_controller.rb +13 -10
  7. data/app/controllers/tim/target_images_controller.rb +9 -7
  8. data/app/controllers/tim/templates_controller.rb +7 -7
  9. data/app/exceptions/tim/exceptions.rb +6 -0
  10. data/app/filters/tim/resource_link_filter.rb +56 -0
  11. data/app/models/tim/base_image.rb +7 -3
  12. data/app/models/tim/image_version.rb +4 -2
  13. data/app/models/tim/provider_image.rb +42 -6
  14. data/app/models/tim/target_image.rb +48 -9
  15. data/app/models/tim/template.rb +18 -3
  16. data/app/patches/rails/active_record/autosave_association.rb +29 -0
  17. data/app/validators/template_validator.rb +9 -5
  18. data/app/views/tim/base_images/_base_image.xml.haml +1 -0
  19. data/app/views/tim/target_images/_target_image.xml.haml +1 -0
  20. data/db/migrate/20121115151914_add_import_to_tim_base_images.rb +5 -0
  21. data/db/migrate/20121210131423_add_build_method_to_target_image.rb +5 -0
  22. data/db/migrate/20121216131814_rename_provider_account_id_attribute.rb +13 -0
  23. data/db/migrate/20121216134538_add_factory_base_image_id_to_image_versions.rb +5 -0
  24. data/lib/image_factory/model/base_image.rb +6 -0
  25. data/lib/tim/engine.rb +12 -0
  26. data/lib/tim/version.rb +1 -1
  27. data/spec/controllers/base_images_controller_spec.rb +24 -8
  28. data/spec/controllers/image_versions_controller_spec.rb +20 -7
  29. data/spec/controllers/provider_images_controller_spec.rb +19 -6
  30. data/spec/controllers/target_images_controller_spec.rb +22 -8
  31. data/spec/factories/tim/base_image.rb +5 -1
  32. data/spec/factories/tim/image_factory/target_image.rb +1 -0
  33. data/spec/factories/tim/image_version.rb +4 -0
  34. data/spec/factories/tim/provider_image.rb +4 -1
  35. data/spec/factories/tim/target_image.rb +6 -2
  36. data/spec/filters/resource_link_filter_spec.rb +158 -0
  37. data/spec/models/base_image_spec.rb +5 -5
  38. data/spec/models/dummy/pool_family_spec.rb +1 -1
  39. data/spec/models/dummy/provider_account_spec.rb +3 -1
  40. data/spec/models/dummy/provider_type_spec.rb +2 -1
  41. data/spec/models/dummy/user_spec.rb +1 -1
  42. data/spec/models/image_version_spec.rb +4 -3
  43. data/spec/models/provider_image_spec.rb +28 -5
  44. data/spec/models/target_image_spec.rb +74 -4
  45. data/spec/models/template_spec.rb +11 -2
  46. data/spec/validators/template_validator_spec.rb +10 -0
  47. data/spec/views/base_images_spec.rb +2 -1
  48. data/spec/views/provider_images_spec.rb +1 -0
  49. data/test/dummy/app/decorators/tim/controllers/base_images_controller_decorator.rb +13 -0
  50. data/test/dummy/config/database.yml +0 -3
  51. data/test/dummy/config/initializers/tim.rb +1 -1
  52. data/test/dummy/config/routes.rb +6 -1
  53. data/test/dummy/db/migrate/20121216133232_add_provider_account_id_to_provider_images.rb +5 -0
  54. data/test/dummy/db/schema.rb +28 -24
  55. data/tim.gemspec +32 -0
  56. metadata +46 -60
  57. data/test/dummy/db/development.sqlite3 +0 -0
  58. data/test/dummy/db/test.sqlite3 +0 -0
  59. data/test/dummy/log/development.log +0 -982
  60. data/test/dummy/log/test.log +0 -8629
  61. data/test/dummy/tmp/cache/assets/C7A/BB0/sprockets%2F13445f7a19078dd2df39517062aa6711 +0 -0
  62. data/test/dummy/tmp/cache/assets/C8C/CC0/sprockets%2F95d79f3b3096348427f3e4e38b5202e3 +0 -0
  63. data/test/dummy/tmp/cache/assets/CB0/2B0/sprockets%2F79106b90879c02a115d7f6f1c8390ac4 +0 -0
  64. data/test/dummy/tmp/cache/assets/CE0/690/sprockets%2F04c628c2a636286bfa92a4966b82b92a +0 -0
  65. data/test/dummy/tmp/cache/assets/D03/040/sprockets%2Fd9e94204d4b307145f12efc109b16c1f +0 -0
  66. data/test/dummy/tmp/cache/assets/D06/DC0/sprockets%2Fcd282851b6e4c463409ba3ece67e0510 +0 -0
  67. data/test/dummy/tmp/cache/assets/D23/5F0/sprockets%2F2a521f3183c6bbcd71bd26a5490b201e +0 -0
  68. data/test/dummy/tmp/cache/assets/D64/3A0/sprockets%2F56ac1aed10c39b12a88cb1b30f668f58 +0 -0
  69. data/test/dummy/tmp/cache/assets/D69/BD0/sprockets%2F0aaf75cf34556b33a9fec534fe4d0415 +0 -0
  70. data/test/dummy/tmp/cache/assets/D87/D80/sprockets%2Fefa3c8b210e87358c7add88cd6f49597 +0 -0
  71. data/test/dummy/tmp/cache/assets/D89/200/sprockets%2Ff9b4e953c874ed6a87de6490d055d9db +0 -0
  72. data/test/dummy/tmp/cache/assets/DF4/430/sprockets%2F403bb1de60cae4325cebd7e6c389b8ad +0 -0
  73. data/test/dummy/tmp/cache/assets/E00/500/sprockets%2Faaddc5b6f2cb6b98930cc54cf4c64a95 +0 -0
  74. data/test/dummy/tmp/cache/assets/EB3/CE0/sprockets%2Fd75a89c9fffacd99bce7eed96844eafc +0 -0
@@ -6,11 +6,20 @@ module Tim
6
6
  it 'should have many base images' do
7
7
  template = FactoryGirl.build(:template)
8
8
  2.times do
9
- template.base_images << BaseImage.new
9
+ template.base_images << FactoryGirl.build(:base_image)
10
10
  end
11
11
  template.save!
12
12
  Template.find(template).base_images.size.should == 2
13
13
  end
14
14
  end
15
+
16
+ describe "XML helper methods" do
17
+ it 'should return os struct' do
18
+ os = FactoryGirl.build(:template).os
19
+ os.name.should == 'Fedora'
20
+ os.version.should == '15'
21
+ os.arch.should == 'x86_64'
22
+ end
23
+ end
15
24
  end
16
- end
25
+ end
@@ -15,5 +15,15 @@ module Tim
15
15
  TemplateValidator.new({}).validate(template)
16
16
  template.errors.size.should > 0
17
17
  end
18
+
19
+ it "should add xml syntax errors to template errors" do
20
+ template = FactoryGirl.build(:template,
21
+ :xml => "<invalid_template>
22
+ </invalid_template")
23
+ TemplateValidator.new({}).validate(template)
24
+ template.errors.size.should > 0
25
+ template.errors.messages.first.to_s
26
+ .include?("Syntax error on line 2").should == true
27
+ end
18
28
  end
19
29
  end
@@ -3,8 +3,9 @@ require 'spec_helper'
3
3
  module Tim
4
4
  describe "/tim/base_images/_base_image" do
5
5
  before(:each) do
6
- view.stub(:base_image).and_return FactoryGirl.create(:base_image)
6
+ view.stub(:base_image).and_return FactoryGirl.create(:base_image_with_template)
7
7
  view.stub(:base_image_url)
8
+ view.stub(:template_url)
8
9
  end
9
10
 
10
11
  it "should render custom content partial when it is defined" do
@@ -7,6 +7,7 @@ module Tim
7
7
  .stub(:create_factory_target_image)
8
8
  Tim::TargetImage.any_instance.stub(:template)
9
9
  .and_return FactoryGirl.build(:template)
10
+ Tim::TargetImage.any_instance.stub(:imported?).and_return(false)
10
11
 
11
12
  view.stub(:provider_image).and_return FactoryGirl.build(:provider_image)
12
13
  [:provider_image_url, :target_image_url].each do |method|
@@ -0,0 +1,13 @@
1
+ Tim::BaseImagesController.class_eval do
2
+ before_filter :set_test_location, :only => :respond_options_test
3
+
4
+ def respond_options_test
5
+ @base_image = Tim::BaseImage.find(params[:id]) unless defined? @base_image
6
+ respond_with(@base_image, @respond_options)
7
+ end
8
+
9
+ private
10
+ def set_test_location
11
+ @respond_options = {:location => tim.templates_path}
12
+ end
13
+ end
@@ -23,6 +23,3 @@ production:
23
23
  database: db/production.sqlite3
24
24
  pool: 5
25
25
  timeout: 5000
26
-
27
- cucumber:
28
- <<: *test
@@ -5,4 +5,4 @@ Tim.provider_type_class = "ProviderType"
5
5
  Tim::ImageFactory::Base.site = "http://localhost:8075/imagefactory"
6
6
  # FIXME: We should be able to infer these from Routes
7
7
  Tim::ImageFactory::TargetImage.callback_url = "http://localhost:3000/tim/target_images/"
8
- Tim::ImageFactory::ProviderImage.callback_url = "http://localhost:3000/tim/provider_images/"
8
+ Tim::ImageFactory::ProviderImage.callback_url = "http://localhost:3000/tim/provider_images/"
@@ -1,4 +1,9 @@
1
1
  Rails.application.routes.draw do
2
2
 
3
3
  mount Tim::Engine => "/tim"
4
- end
4
+
5
+ # respond_options test path
6
+ scope :module => "tim" do
7
+ match "/respond_options_test/:id" => "base_images#respond_options_test"
8
+ end
9
+ end
@@ -0,0 +1,5 @@
1
+ class AddProviderAccountIdToProviderImages < ActiveRecord::Migration
2
+ def change
3
+ add_column :tim_provider_images, :provider_account_id, :integer
4
+ end
5
+ end
@@ -13,21 +13,38 @@
13
13
 
14
14
  ActiveRecord::Schema.define(:version => 20120423123114264114) do
15
15
 
16
+ create_table "pool_families", :force => true do |t|
17
+ t.datetime "created_at", :null => false
18
+ t.datetime "updated_at", :null => false
19
+ end
20
+
21
+ create_table "provider_accounts", :force => true do |t|
22
+ t.datetime "created_at", :null => false
23
+ t.datetime "updated_at", :null => false
24
+ end
25
+
26
+ create_table "provider_types", :force => true do |t|
27
+ t.datetime "created_at", :null => false
28
+ t.datetime "updated_at", :null => false
29
+ end
30
+
16
31
  create_table "tim_base_images", :force => true do |t|
17
32
  t.string "name"
18
33
  t.string "description"
19
34
  t.integer "template_id"
20
35
  t.integer "user_id"
21
- t.datetime "created_at", :null => false
22
- t.datetime "updated_at", :null => false
36
+ t.datetime "created_at", :null => false
37
+ t.datetime "updated_at", :null => false
23
38
  t.integer "pool_family_id"
39
+ t.boolean "import", :default => false
24
40
  end
25
41
 
26
42
  create_table "tim_image_versions", :force => true do |t|
27
43
  t.integer "base_image_id"
28
44
  t.integer "template_id"
29
- t.datetime "created_at", :null => false
30
- t.datetime "updated_at", :null => false
45
+ t.datetime "created_at", :null => false
46
+ t.datetime "updated_at", :null => false
47
+ t.string "factory_base_image_id"
31
48
  end
32
49
 
33
50
  create_table "tim_provider_images", :force => true do |t|
@@ -35,13 +52,14 @@ ActiveRecord::Schema.define(:version => 20120423123114264114) do
35
52
  t.integer "target_image_id"
36
53
  t.string "provider"
37
54
  t.string "external_image_id"
38
- t.string "provider_account_id"
55
+ t.string "factory_provider_account_id"
39
56
  t.boolean "snapshot"
40
57
  t.string "status"
41
58
  t.string "status_detail"
42
59
  t.string "progress"
43
- t.datetime "created_at", :null => false
44
- t.datetime "updated_at", :null => false
60
+ t.datetime "created_at", :null => false
61
+ t.datetime "updated_at", :null => false
62
+ t.integer "provider_account_id"
45
63
  end
46
64
 
47
65
  create_table "tim_target_images", :force => true do |t|
@@ -51,9 +69,10 @@ ActiveRecord::Schema.define(:version => 20120423123114264114) do
51
69
  t.string "status"
52
70
  t.string "status_detail"
53
71
  t.string "progress"
54
- t.datetime "created_at", :null => false
55
- t.datetime "updated_at", :null => false
72
+ t.datetime "created_at", :null => false
73
+ t.datetime "updated_at", :null => false
56
74
  t.integer "provider_type_id"
75
+ t.string "build_method", :default => "BARE_METAL"
57
76
  end
58
77
 
59
78
  create_table "tim_templates", :force => true do |t|
@@ -62,21 +81,6 @@ ActiveRecord::Schema.define(:version => 20120423123114264114) do
62
81
  t.datetime "updated_at", :null => false
63
82
  end
64
83
 
65
- create_table "pool_families", :force => true do |t|
66
- t.datetime "created_at", :null => false
67
- t.datetime "updated_at", :null => false
68
- end
69
-
70
- create_table "provider_accounts", :force => true do |t|
71
- t.datetime "created_at", :null => false
72
- t.datetime "updated_at", :null => false
73
- end
74
-
75
- create_table "provider_types", :force => true do |t|
76
- t.datetime "created_at", :null => false
77
- t.datetime "updated_at", :null => false
78
- end
79
-
80
84
  create_table "users", :force => true do |t|
81
85
  t.string "name"
82
86
  t.datetime "created_at", :null => false
@@ -0,0 +1,32 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+
3
+ # Maintain your gem's version:
4
+ require "tim/version"
5
+
6
+ # Describe your gem and declare its dependencies:
7
+ Gem::Specification.new do |s|
8
+ s.name = "tim"
9
+ s.version = Tim::VERSION
10
+ s.authors = ["Martyn Taylor", "Jason Guiditta"]
11
+ s.email = ["aeolus-devel@lists.fedorahosted.org"]
12
+ s.homepage = "https://github.com/aeolus-incubator/tim"
13
+ s.license = 'MIT'
14
+ s.summary = "Embeddable client for Aeolus Image Factory"
15
+ s.description = "Rails engine client for the Aeolus Image Factory cross-cloud virtual machine image builder."
16
+
17
+ s.files = Dir["{app,config,db,lib}/**/*"] + ["MIT-LICENSE", "Rakefile", "README.rdoc", "tim.gemspec", "Gemfile"]
18
+ s.test_files = Dir["{spec,test}/**/*"]
19
+ s.test_files.reject! { |fn| fn.match(/sqlite|tmp|log/) }
20
+
21
+ s.add_dependency "rails", "~> 3.2"
22
+ s.add_dependency "haml"
23
+ s.add_dependency "nokogiri"
24
+
25
+ s.add_development_dependency "sqlite3"
26
+ s.add_development_dependency "rspec-rails"
27
+ s.add_development_dependency "database_cleaner"
28
+ s.add_development_dependency "factory_girl_rails", "~> 4.1.0"
29
+ s.add_development_dependency "minitest"
30
+
31
+ #s.add_development_dependency "jquery-rails"
32
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tim
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,22 +10,22 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-10-16 00:00:00.000000000 Z
13
+ date: 2013-01-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
17
- requirement: &9234960 !ruby/object:Gem::Requirement
17
+ requirement: &8009320 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
21
21
  - !ruby/object:Gem::Version
22
- version: 3.2.8
22
+ version: '3.2'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *9234960
25
+ version_requirements: *8009320
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: haml
28
- requirement: &9234280 !ruby/object:Gem::Requirement
28
+ requirement: &8007020 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *9234280
36
+ version_requirements: *8007020
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: nokogiri
39
- requirement: &9233440 !ruby/object:Gem::Requirement
39
+ requirement: &8006340 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *9233440
47
+ version_requirements: *8006340
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: sqlite3
50
- requirement: &9124240 !ruby/object:Gem::Requirement
50
+ requirement: &8018880 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *9124240
58
+ version_requirements: *8018880
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: rspec-rails
61
- requirement: &9123620 !ruby/object:Gem::Requirement
61
+ requirement: &8016220 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: '0'
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *9123620
69
+ version_requirements: *8016220
70
70
  - !ruby/object:Gem::Dependency
71
- name: cucumber-rails
72
- requirement: &9122800 !ruby/object:Gem::Requirement
71
+ name: database_cleaner
72
+ requirement: &8026240 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,21 +77,21 @@ dependencies:
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *9122800
80
+ version_requirements: *8026240
81
81
  - !ruby/object:Gem::Dependency
82
- name: database_cleaner
83
- requirement: &9121700 !ruby/object:Gem::Requirement
82
+ name: factory_girl_rails
83
+ requirement: &8035500 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
- - - ! '>='
86
+ - - ~>
87
87
  - !ruby/object:Gem::Version
88
- version: '0'
88
+ version: 4.1.0
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *9121700
91
+ version_requirements: *8035500
92
92
  - !ruby/object:Gem::Dependency
93
- name: factory_girl_rails
94
- requirement: &9121140 !ruby/object:Gem::Requirement
93
+ name: minitest
94
+ requirement: &8865100 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ! '>='
@@ -99,7 +99,7 @@ dependencies:
99
99
  version: '0'
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *9121140
102
+ version_requirements: *8865100
103
103
  description: Rails engine client for the Aeolus Image Factory cross-cloud virtual
104
104
  machine image builder.
105
105
  email:
@@ -170,8 +170,10 @@ files:
170
170
  - app/views/tim/base_images/index.xml.haml
171
171
  - app/views/tim/base_images/_base_image_minimal.xml.haml
172
172
  - app/helpers/tim/application_helper.rb
173
+ - app/exceptions/tim/exceptions.rb
173
174
  - app/assets/javascripts/tim/application.js
174
175
  - app/assets/stylesheets/tim/application.css
176
+ - app/filters/tim/resource_link_filter.rb
175
177
  - app/filters/tim/user_keys_filter.rb
176
178
  - app/models/tim/provider_image.rb
177
179
  - app/models/tim/template.rb
@@ -180,15 +182,20 @@ files:
180
182
  - app/models/tim/target_image.rb
181
183
  - app/models/tim/image_version.rb
182
184
  - app/responders/tim/custom_responder.rb
185
+ - app/patches/rails/active_record/autosave_association.rb
183
186
  - config/user_keys.yml
184
187
  - config/routes.rb
185
188
  - config/initializers/haml.rb
186
189
  - config/cucumber.yml
187
190
  - config/schemas/tdl.rng
191
+ - db/migrate/20121216134538_add_factory_base_image_id_to_image_versions.rb
188
192
  - db/migrate/20120906180351_create_tim_base_images.rb
193
+ - db/migrate/20121115151914_add_import_to_tim_base_images.rb
189
194
  - db/migrate/20120906210106_create_tim_image_versions.rb
195
+ - db/migrate/20121216131814_rename_provider_account_id_attribute.rb
190
196
  - db/migrate/20120911202321_create_tim_target_images.rb
191
197
  - db/migrate/20120911204329_create_tim_provider_images.rb
198
+ - db/migrate/20121210131423_add_build_method_to_target_image.rb
192
199
  - db/migrate/20120910175233_create_tim_templates.rb
193
200
  - lib/tasks/tim_tasks.rake
194
201
  - lib/tasks/cucumber.rake
@@ -199,12 +206,15 @@ files:
199
206
  - lib/generators/tim/install_generator.rb
200
207
  - lib/tim.rb
201
208
  - lib/image_factory/model/provider_image.rb
209
+ - lib/image_factory/model/base_image.rb
202
210
  - lib/image_factory/model/base.rb
203
211
  - lib/image_factory/model/target_image.rb
204
212
  - lib/image_factory/image_factory.rb
205
213
  - MIT-LICENSE
206
214
  - Rakefile
207
215
  - README.rdoc
216
+ - tim.gemspec
217
+ - Gemfile
208
218
  - spec/controllers/base_images_controller_spec.rb
209
219
  - spec/controllers/templates_controller_spec.rb
210
220
  - spec/controllers/image_versions_controller_spec.rb
@@ -228,6 +238,7 @@ files:
228
238
  - spec/factories/tim/image_version.rb
229
239
  - spec/support/routes.rb
230
240
  - spec/filters/user_keys_filter_spec.rb
241
+ - spec/filters/resource_link_filter_spec.rb
231
242
  - spec/models/image_version_spec.rb
232
243
  - spec/models/template_spec.rb
233
244
  - spec/models/base_image_spec.rb
@@ -255,17 +266,14 @@ files:
255
266
  - test/dummy/config/initializers/wrap_parameters.rb
256
267
  - test/dummy/config/environment.rb
257
268
  - test/dummy/config/boot.rb
258
- - test/dummy/log/development.log
259
- - test/dummy/log/test.log
260
269
  - test/dummy/db/migrate/20120326103723532622_create_users.rb
261
270
  - test/dummy/db/migrate/20120911203222_create_provider_types.rb
262
271
  - test/dummy/db/migrate/20120911182850_add_pool_family_id_to_tim_base_image.rb
263
272
  - test/dummy/db/migrate/20120911205431_create_provider_accounts.rb
264
273
  - test/dummy/db/migrate/20120423123114264114_create_pool_families.rb
274
+ - test/dummy/db/migrate/20121216133232_add_provider_account_id_to_provider_images.rb
265
275
  - test/dummy/db/migrate/20120911202845_add_provider_type_id_to_tim_target_image.rb
266
- - test/dummy/db/development.sqlite3
267
276
  - test/dummy/db/schema.rb
268
- - test/dummy/db/test.sqlite3
269
277
  - test/dummy/config.ru
270
278
  - test/dummy/app/controllers/application_controller.rb
271
279
  - test/dummy/app/views/layouts/application.html.erb
@@ -284,6 +292,7 @@ files:
284
292
  - test/dummy/app/models/provider_type.rb
285
293
  - test/dummy/app/models/pool_family.rb
286
294
  - test/dummy/app/decorators/tim/controllers/templates_controller_decorator.rb
295
+ - test/dummy/app/decorators/tim/controllers/base_images_controller_decorator.rb
287
296
  - test/dummy/script/rails
288
297
  - test/dummy/test.rb
289
298
  - test/dummy/Rakefile
@@ -291,20 +300,6 @@ files:
291
300
  - test/dummy/public/422.html
292
301
  - test/dummy/public/500.html
293
302
  - test/dummy/public/404.html
294
- - test/dummy/tmp/cache/assets/D89/200/sprockets%2Ff9b4e953c874ed6a87de6490d055d9db
295
- - test/dummy/tmp/cache/assets/CE0/690/sprockets%2F04c628c2a636286bfa92a4966b82b92a
296
- - test/dummy/tmp/cache/assets/D03/040/sprockets%2Fd9e94204d4b307145f12efc109b16c1f
297
- - test/dummy/tmp/cache/assets/D69/BD0/sprockets%2F0aaf75cf34556b33a9fec534fe4d0415
298
- - test/dummy/tmp/cache/assets/C7A/BB0/sprockets%2F13445f7a19078dd2df39517062aa6711
299
- - test/dummy/tmp/cache/assets/D06/DC0/sprockets%2Fcd282851b6e4c463409ba3ece67e0510
300
- - test/dummy/tmp/cache/assets/CB0/2B0/sprockets%2F79106b90879c02a115d7f6f1c8390ac4
301
- - test/dummy/tmp/cache/assets/C8C/CC0/sprockets%2F95d79f3b3096348427f3e4e38b5202e3
302
- - test/dummy/tmp/cache/assets/DF4/430/sprockets%2F403bb1de60cae4325cebd7e6c389b8ad
303
- - test/dummy/tmp/cache/assets/EB3/CE0/sprockets%2Fd75a89c9fffacd99bce7eed96844eafc
304
- - test/dummy/tmp/cache/assets/D64/3A0/sprockets%2F56ac1aed10c39b12a88cb1b30f668f58
305
- - test/dummy/tmp/cache/assets/D87/D80/sprockets%2Fefa3c8b210e87358c7add88cd6f49597
306
- - test/dummy/tmp/cache/assets/E00/500/sprockets%2Faaddc5b6f2cb6b98930cc54cf4c64a95
307
- - test/dummy/tmp/cache/assets/D23/5F0/sprockets%2F2a521f3183c6bbcd71bd26a5490b201e
308
303
  homepage: https://github.com/aeolus-incubator/tim
309
304
  licenses:
310
305
  - MIT
@@ -318,12 +313,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
318
313
  - - ! '>='
319
314
  - !ruby/object:Gem::Version
320
315
  version: '0'
316
+ segments:
317
+ - 0
318
+ hash: 2330827430856779926
321
319
  required_rubygems_version: !ruby/object:Gem::Requirement
322
320
  none: false
323
321
  requirements:
324
322
  - - ! '>='
325
323
  - !ruby/object:Gem::Version
326
324
  version: '0'
325
+ segments:
326
+ - 0
327
+ hash: 2330827430856779926
327
328
  requirements: []
328
329
  rubyforge_project:
329
330
  rubygems_version: 1.8.15
@@ -354,6 +355,7 @@ test_files:
354
355
  - spec/factories/tim/image_version.rb
355
356
  - spec/support/routes.rb
356
357
  - spec/filters/user_keys_filter_spec.rb
358
+ - spec/filters/resource_link_filter_spec.rb
357
359
  - spec/models/image_version_spec.rb
358
360
  - spec/models/template_spec.rb
359
361
  - spec/models/base_image_spec.rb
@@ -381,17 +383,14 @@ test_files:
381
383
  - test/dummy/config/initializers/wrap_parameters.rb
382
384
  - test/dummy/config/environment.rb
383
385
  - test/dummy/config/boot.rb
384
- - test/dummy/log/development.log
385
- - test/dummy/log/test.log
386
386
  - test/dummy/db/migrate/20120326103723532622_create_users.rb
387
387
  - test/dummy/db/migrate/20120911203222_create_provider_types.rb
388
388
  - test/dummy/db/migrate/20120911182850_add_pool_family_id_to_tim_base_image.rb
389
389
  - test/dummy/db/migrate/20120911205431_create_provider_accounts.rb
390
390
  - test/dummy/db/migrate/20120423123114264114_create_pool_families.rb
391
+ - test/dummy/db/migrate/20121216133232_add_provider_account_id_to_provider_images.rb
391
392
  - test/dummy/db/migrate/20120911202845_add_provider_type_id_to_tim_target_image.rb
392
- - test/dummy/db/development.sqlite3
393
393
  - test/dummy/db/schema.rb
394
- - test/dummy/db/test.sqlite3
395
394
  - test/dummy/config.ru
396
395
  - test/dummy/app/controllers/application_controller.rb
397
396
  - test/dummy/app/views/layouts/application.html.erb
@@ -410,6 +409,7 @@ test_files:
410
409
  - test/dummy/app/models/provider_type.rb
411
410
  - test/dummy/app/models/pool_family.rb
412
411
  - test/dummy/app/decorators/tim/controllers/templates_controller_decorator.rb
412
+ - test/dummy/app/decorators/tim/controllers/base_images_controller_decorator.rb
413
413
  - test/dummy/script/rails
414
414
  - test/dummy/test.rb
415
415
  - test/dummy/Rakefile
@@ -417,17 +417,3 @@ test_files:
417
417
  - test/dummy/public/422.html
418
418
  - test/dummy/public/500.html
419
419
  - test/dummy/public/404.html
420
- - test/dummy/tmp/cache/assets/D89/200/sprockets%2Ff9b4e953c874ed6a87de6490d055d9db
421
- - test/dummy/tmp/cache/assets/CE0/690/sprockets%2F04c628c2a636286bfa92a4966b82b92a
422
- - test/dummy/tmp/cache/assets/D03/040/sprockets%2Fd9e94204d4b307145f12efc109b16c1f
423
- - test/dummy/tmp/cache/assets/D69/BD0/sprockets%2F0aaf75cf34556b33a9fec534fe4d0415
424
- - test/dummy/tmp/cache/assets/C7A/BB0/sprockets%2F13445f7a19078dd2df39517062aa6711
425
- - test/dummy/tmp/cache/assets/D06/DC0/sprockets%2Fcd282851b6e4c463409ba3ece67e0510
426
- - test/dummy/tmp/cache/assets/CB0/2B0/sprockets%2F79106b90879c02a115d7f6f1c8390ac4
427
- - test/dummy/tmp/cache/assets/C8C/CC0/sprockets%2F95d79f3b3096348427f3e4e38b5202e3
428
- - test/dummy/tmp/cache/assets/DF4/430/sprockets%2F403bb1de60cae4325cebd7e6c389b8ad
429
- - test/dummy/tmp/cache/assets/EB3/CE0/sprockets%2Fd75a89c9fffacd99bce7eed96844eafc
430
- - test/dummy/tmp/cache/assets/D64/3A0/sprockets%2F56ac1aed10c39b12a88cb1b30f668f58
431
- - test/dummy/tmp/cache/assets/D87/D80/sprockets%2Fefa3c8b210e87358c7add88cd6f49597
432
- - test/dummy/tmp/cache/assets/E00/500/sprockets%2Faaddc5b6f2cb6b98930cc54cf4c64a95
433
- - test/dummy/tmp/cache/assets/D23/5F0/sprockets%2F2a521f3183c6bbcd71bd26a5490b201e