forked from aeolusproject/conductor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
aeolus-conductor.spec.in
792 lines (725 loc) · 33.2 KB
/
aeolus-conductor.spec.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
%global app_root %{_datadir}/%{name}
%global doc_root %{_datadir}/%{name}-doc
%if 0%{?fedora} > 16
%global rubyver 1.9.3
%global rubyabi 1.9.1
%else
%global rubyver 1.8.1
%global rubyabi 1.8
%endif
%if 0%{?fedora} > 13 || 0%{?rhel} > 6
%global systemd 1
%else
%global systemd 0
%endif
Name: aeolus-conductor
Version: @VERSION@
Release: 0%{?dist}
Summary: The Aeolus Conductor
Group: Applications/System
License: ASL 2.0 and MIT and BSD
URL: http://aeolusproject.org
# to build source tarball
# git clone git://git.fedorahosted.org/aeolus/conductor.git
# git checkout v0.3.0_RC_1
# make dist
# cp aeolus-conductor-0.3.0.tar.gz ~/rpmbuild/SOURCES
Source0: aeolus-conductor-%{version}.tar.gz
Requires: ruby >= %{rubyver}
Requires: ruby(abi) = %{rubyabi}
Requires: rubygem(rails) >= 3.0.7
Requires: rubygem(haml) >= 3.1
Requires: rubygem(mustache) >= 0.99.4
Requires: rubygem(nokogiri) >= 1.4.0
Requires: rubygem(will_paginate) >= 3.0
Requires: rubygem(deltacloud-client) >= 0.4.0
Requires: rubygem(simple-navigation)
Requires: rubygem(rest-client) >= 1.6.1
Requires: rubygem(builder)
Requires: rubygem(json)
Requires: rubygem(rack-restful_submit)
Requires: rubygem(uuidtools)
Requires: rubygem(rails_warden)
Requires: rubygem(aeolus-image) >= 0.1.0-4
Requires: rubygem(pg)
Requires: rubygem(ruby-net-ldap)
Requires: rubygem(oauth)
Requires: rubygem(ldap_fluff)
Requires: rubygem(rake)
Requires: rubygem(delayed_job) >= 2.1.4
Requires: rubygem(paranoia)
Requires: rubygem(compass) >= 0.11.5
Requires: rubygem(compass-960-plugin) >= 0.10.4
Requires: rubygem(simple_form) >= 2.0.3
Requires: postgresql
Requires: postgresql-server
Requires: system-logos
%if 0%{?fedora} > 16
Requires: rubygem(net-ldap)
%else
Requires: rubygem(fastercsv)
Requires: rubygem(ruby-net-ldap)
%endif
# to ensure the service is actually started
# and is accessible in the init script
Requires: curl
BuildRequires: rubygem(sass)
BuildRequires: rubygem(compass) >= 0.11.5
BuildRequires: rubygem(compass-960-plugin) >= 0.10.4
BuildRequires: converge-ui-devel >= 1.2
BuildArch: noarch
%description
The Aeolus Conductor, a web UI for managing cloud instances.
%package daemons
Summary: Aeolus Conductor daemons
Group: Applications/Internet
License: ASL 2.0
Requires: %{name} = %{version}-%{release}
Requires: httpd >= 2.0
Requires: rubygem(thin) >= 1.2.5
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
%if %{systemd}
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
BuildRequires: systemd-units
%endif
%description daemons
The configuration and daemons necessary to run and proxy the Aeolus Conductor.
%package doc
Summary: Aeolus Conductor documentation
Group: Documentation
Requires: %{name} = %{version}-%{release}
%description doc
Documentation for the Aeolus Conductor.
%package devel
Summary: Aeolus Conductor development and testing files
Group: Applications/Internet
Requires: %{name} = %{version}-%{release}
Requires: rubygem(cucumber)
Requires: rubygem(timecop)
Requires: rubygem(cucumber-rails)
Requires: rubygem(rspec-rails) >= 2.6.1
Requires: rubygem(capybara) >= 1.0.0
Requires: rubygem(database_cleaner) >= 0.5.0
Requires: rubygem(factory_girl)
Requires: rubygem(vcr)
Requires: rubygem(factory_girl_rails)
Requires: rubygem(webmock)
Requires: rubygem(launchy)
Requires: rubygem(minitest)
%description devel
Tests and other development tools for the Aeolus Conductor.
%package -n aeolus-all
Summary: A meta-package to pull in all components for Aeolus
Group: Applications/Internet
Requires: aeolus-conductor-daemons = %{version}-%{release}
Requires: aeolus-conductor-doc = %{version}-%{release}
Requires: iwhd
Requires: aeolus-configure
Requires: imagefactory
Requires: imagefactory-jeosconf-ec2-fedora
Requires: imagefactory-jeosconf-ec2-rhel
Requires: rubygem(aeolus-image)
Requires: rubygem(aeolus-cli)
Requires: mongodb-server
Requires: mod_ssl
Requires: deltacloud-core
Requires: deltacloud-core-ec2
Requires: deltacloud-core-rhevm
Requires: deltacloud-core-vsphere
Requires: ntp
Requires: rsyslog-relp
%description -n aeolus-all
This is the aeolus meta-package. If you want to install aeolus and all of its
dependencies on a single machine, you should install this package and then
run aeolus-configure to configure everything.
%prep
%setup -q
%build
#copy converge-ui from converge-ui-devel
cp -R /usr/share/converge-ui-devel/* ./src/vendor/converge-ui
%pre
getent group aeolus >/dev/null || /usr/sbin/groupadd -g 180 -r aeolus 2>/dev/null || :
getent passwd aeolus >/dev/null || \
/usr/sbin/useradd -u 180 -g aeolus -c "aeolus" \
-s /sbin/nologin -r -d /usr/share/aeolus-conductor aeolus 2> /dev/null || :
# Previously ~aeolus was set to /var/aeolus
# If this is an upgrade scenario, fix the home directory
if [ ~aeolus != /usr/share/aeolus-conductor ]; then
usermod --home /usr/share/aeolus-conductor aeolus > /dev/null 2>&1
if [ $? -eq 8 ]; then # usermod returned with E_USER_BUSY
service conductor-dbomatic stop > /dev/null 2>&1
service conductor-delayed_job stop > /dev/null 2>&1
service aeolus-conductor stop > /dev/null 2>&1
usermod --home /usr/share/aeolus-conductor aeolus > /dev/null 2>&1
if [ $? -eq 8 ]; then # something went wrong stopping services
echo "Unable to modify the aeolus user's home directory."
echo "Please ensure the aeolus user has no active processes and try upgrading again."
exit 8
fi
fi
fi
%install
%{__mkdir} -p %{buildroot}
%{__mkdir} -p %{buildroot}%{app_root}
%{__mkdir} -p %{buildroot}%{doc_root}
%{__mkdir} -p %{buildroot}%{_initrddir}
%if %{systemd}
%{__mkdir} -p %{buildroot}%{_unitdir}/systemd/system
%endif
%{__mkdir} -p %{buildroot}%{_sysconfdir}/sysconfig
%{__mkdir} -p %{buildroot}%{_sysconfdir}/httpd/conf.d
%{__mkdir} -p %{buildroot}%{_sysconfdir}/logrotate.d
%{__mkdir} -p %{buildroot}%{_localstatedir}/lib/%{name}
%{__mkdir} -p %{buildroot}%{_localstatedir}/log/%{name}
%{__mkdir} -p %{buildroot}%{_localstatedir}/run/%{name}
%{__mkdir} -p %{buildroot}/%{_bindir}
# now copy over the rails source files. This is a bit verbose, but only
# takes in the stuff we need (and no backup files, etc)
# we use these special constructs to find only the files we care about.
# the name of the variable has to be the file extension you are looking for.
# the contents of the variable are the directories in which files with this
# extension may exist. For instance cgi="public" means that src/public/*.cgi
# will be copied from the source into the RPM.
builder="app/views/errors"
css="public/stylesheets public/stylesheets/jquery.ui-1.8.1"
feature="features"
gif="public/images \
public/stylesheets/images"
haml="app/views/hardware_profiles app/views/realm_mappings \
app/views/users app/views/provider_accounts \
app/views/provider_selections app/views/provider_priority_groups \
app/views/roles app/views/providers app/views/settings \
app/views/frontend_realms app/views/pool_families app/views/layouts\
app/views/pool_families_to_provider_accounts_associations\
app/views/quotas app/views/permissions \
app/views/deployments app/views/pools \
app/views/instances app/views/user_sessions app/views/password_resets \
app/views/user_mailer
app/views/deployables app/views/catalogs \
app/views/provider_types app/views/api/images \
app/views/config_servers app/views/provider_realms \
app/views/logs \
app/views/api/hooks \
app/views/api \
app/views/images \
app/views/user_groups \
app/views/charts \
app/views/api/builds app/views/api/provider_images \
app/views/api/target_images app/views/api/entrypoint \
app/views/api/environments \
vendor/provider_selection/views/penalty_for_failure"
erb="app/views/username_recoveries app/views/password_resets"
mustache="app/views/instances app/views/pools app/views/deployments \
app/views/deployables app/views/images"
html="public"
ico="public"
jpg="public/images \
public/stylesheets/images"
js="public/javascripts \
public/javascripts/jquery.ui-1.8.1 \
public/javascripts/jquery.ui-1.8.1/ui/minified \
public/javascripts/lib \
public/javascripts/backbone"
json="spec/fixtures"
key="features/upload_files"
opts="spec"
png="public/images \
public/images/icons \
public/images/embed \
public/stylesheets/images \
public/stylesheets/jquery.ui-1.8.1/images"
rake="lib/tasks"
rb="app/models app/controllers app/controllers/api app/helpers app/mailers app/services app/util \
config config/initializers config/environments db db/migrate \
features/support features/step_definitions lib spec spec/controllers \
spec/factories spec/helpers spec/models spec/services spec/util spec/controllers/api \
spec/aeolus/event spec/aeolus/ext lib/aeolus lib/aeolus/event lib/aeolus/ext \
lib/simple_form_extension \
lib/costengine \
lib/provider_selection vendor/provider_selection \
vendor/provider_selection/strategies/strict_order \
vendor/provider_selection/strategies/penalty_for_failure"
rhtml="app/views/layouts"
svg="public/fonts public/images public/images/icons"
ttf="public/fonts"
eot="public/fonts"
woff="public/fonts"
txt="public"
yml="config config/locales config/locales/defaults config/locales/emails config/locales/overrides
config/locales/role_definitions config/locales/classnames config/locales/will_paginate \
config/locales/overrides/role_definitions config/locales/activerecord \
config/locales/simple_form config/locales/strategies"
xml="app/util"
for filetype in builder css eot feature gif haml erb mustache html ico jpg js json key opts png \
rake rb rhtml scss svg ttf txt woff yml xml; do
dirs=${!filetype}
for dir in $dirs; do
%{__mkdir} -p %{buildroot}%{app_root}/$dir
for i in $(echo src/$dir/*.$filetype); do
test -e "$i" && %{__cp} "$i" %{buildroot}%{app_root}/$dir
done
done
done
%{__rm} %{buildroot}%{app_root}/config/initializers/secret_token.rb
#copy converge-ui - it originates from converge-ui-devel package so we need all of it's files
%{__cp} -R ./src/vendor/converge-ui %{buildroot}%{app_root}/vendor
#we don't want the .git artifacts from converge-ui
%{__rm} -rf %{buildroot}%{app_root}/vendor/converge-ui/.git
%{__rm} -f %{buildroot}%{app_root}/vendor/converge-ui/.gitignore
#copy the converge-ui symlinks
%{__cp} -P ./src/app/helpers/converge-ui %{buildroot}%{app_root}/app/helpers
%{__cp} -P ./src/app/views/layouts/converge-ui %{buildroot}%{app_root}/app/views/layouts
%{__cp} -P ./src/public/images/converge-ui %{buildroot}%{app_root}/public/images
%{__cp} -P ./src/public/javascripts/converge-ui %{buildroot}%{app_root}/public/javascripts
%{__cp} -P ./src/public/fonts/converge-ui %{buildroot}%{app_root}/public/fonts
# precompile stylesheets
%{__mkdir} %{buildroot}%{app_root}/public/stylesheets/compiled
pushd ./src
compass compile
popd
%{__cp} ./src/public/stylesheets/compiled/* %{buildroot}%{app_root}/public/stylesheets/compiled
# misc files
%{__cp} src/Rakefile %{buildroot}%{app_root}
%{__cp} src/config.ru %{buildroot}%{app_root}
%{__cp} src/Gemfile %{buildroot}%{app_root}/Gemfile.in
%{__cp} src/spec/fixtures/Gemfile.in %{buildroot}%{app_root}/spec/fixtures
%{__cp} src/lib/aeolus/debug/aeolus-debug %{buildroot}%{_bindir}
%{__mkdir} -p %{buildroot}%{app_root}/config
%{__cp} src/config/database.pg %{buildroot}%{app_root}/config
%{__cp} src/config/database.mysql %{buildroot}%{app_root}/config
%{__cp} src/config/database.sqlite %{buildroot}%{app_root}/config
# here we copy the postgres configuration to be the default. While this is
# something of a policy we are encoding in the RPM, it is nice to give the user
# sane defaults. The user can still override this with their own configuration
%{__cp} src/config/database.pg %{buildroot}%{app_root}/config/database.yml
%{__mkdir} -p %{buildroot}%{app_root}/dbomatic
%{__cp} src/dbomatic/dbomatic %{buildroot}%{app_root}/dbomatic
# move documentation to the correct place
%{__cp} src/doc/* %{buildroot}/%{doc_root}
# copy over init scripts and various config
%{__cp} conf/aeolus-conductor %{buildroot}%{_initrddir}
%{__cp} conf/conductor-dbomatic %{buildroot}%{_initrddir}
%if %{systemd}
%{__cp} conf/conductor-delayed_job.systemd %{buildroot}%{_unitdir}/conductor-delayed_job.service
%else
%{__cp} conf/conductor-delayed_job %{buildroot}%{_initrddir}
%endif
%{__cp} conf/aeolus-conductor-httpd.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/aeolus-conductor.conf
%{__cp} conf/aeolus-conductor.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/aeolus-conductor
%{__cp} conf/aeolus-conductor.sysconf %{buildroot}%{_sysconfdir}/sysconfig/aeolus-conductor
%{__cp} conf/conductor-rails.sysconf %{buildroot}%{_sysconfdir}/sysconfig/conductor-rails
%{__mkdir} -p %{buildroot}%{_libdir}/../lib/tmpfiles.d
%{__cp} conf/aeolus-tmpfiles.conf %{buildroot}%{_libdir}/../lib/tmpfiles.d/aeolus.conf
%{__mkdir} -p %{buildroot}%{app_root}/config/image_descriptor_xmls
# Creating these files now to make sure the logfiles will be owned
# by aeolus:aeolus. This is a temporary workaround while we've still
# got root-owned daemon processes. Once we resolve that issue
# these files will no longer be added explicitly here.
touch %{buildroot}%{_localstatedir}/log/%{name}/thin.log
touch %{buildroot}%{_localstatedir}/log/%{name}/rails.log
touch %{buildroot}%{_localstatedir}/log/%{name}/dbomatic.log
%{__mkdir} -p %{buildroot}%{app_root}/log
# delayed_job version 2.1.4 forces the log to be in this location
# we should be able to change this to /var/log/aeolus-conductor/delayed_job.log
# with version 3.0
touch %{buildroot}%{app_root}/log/delayed_job.log
# copy script files over
%{__cp} -r src/script %{buildroot}%{app_root}
%{__cp} -r src/upgrade-scripts %{buildroot}%{app_root}
%{__mkdir} -p %{buildroot}%{_sysconfdir}/%{name}
%post
# symlink the configuration bits from /usr/share/aeolus-conductor/config
# into /etc/aeolus-conductor. Note that we unceremoniously use -f here;
# if the user had broken the symlinks and put data in here, it would have been
# completely ignored *anyway*
# Generate OAuth configuration:
pushd %{app_root} 2>&1 > /dev/null
export RAILS_ENV=production; rake dc:oauth_keys 2>&1 > /dev/null
popd 2>&1 > /dev/null
%{__ln_s} -f %{app_root}/config/environments/development.rb %{_sysconfdir}/%{name}
%{__ln_s} -f %{app_root}/config/environments/production.rb %{_sysconfdir}/%{name}
%{__ln_s} -f %{app_root}/config/environments/test.rb %{_sysconfdir}/%{name}
%{__ln_s} -f %{app_root}/config/database.yml %{_sysconfdir}/%{name}
%{__ln_s} -f %{app_root}/config/settings.yml %{_sysconfdir}/%{name}
%{__ln_s} -f %{app_root}/config/oauth.json %{_sysconfdir}/%{name}
%postun
# kind of a weird construct. There are two cases where postun gets called;
# during the removal of a package and during the cleanup after an upgrade.
# During removal, we want to remove the symlinks; during upgrade we do not.
# Therefore, we check to see if app_root/app is still there; if it is,
# then we assume it is an upgrade and do nothing, otherwise we assume it is
# a removal and delete the symlinks
if [ ! -d %{app_root}/app ]; then
rm -f %{_sysconfdir}/%{name}/development.rb
rm -f %{_sysconfdir}/%{name}/production.rb
rm -f %{_sysconfdir}/%{name}/test.rb
rm -f %{_sysconfdir}/%{name}/database.yml
rm -f %{_sysconfdir}/%{name}/settings.yml
fi
%post daemons
# Register the services
%if %{systemd}
if [ $1 -eq 1 ] ; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1
fi
%else
/sbin/chkconfig --add conductor-delayed_job
%endif
/sbin/chkconfig --add aeolus-conductor
/sbin/chkconfig --add conductor-dbomatic
%preun daemons
if [ $1 = 0 ]; then
# Package removal, not upgrade
%if %{systemd}
/bin/systemctl --no-reload disable conductor-delayed_job.service > /dev/null 2>&1
/bin/systemctl stop conductor-delayed_job.service > /dev/null 2>&1
%else
/sbin/service conductor-delayed_job stop > /dev/null 2>&1
/sbin/chkconfig --del conductor-delayed_job
%endif
/sbin/service aeolus-conductor stop > /dev/null 2>&1
/sbin/chkconfig --del aeolus-conductor
/sbin/service conductor-dbomatic stop > /dev/null 2>&1
/sbin/chkconfig --del conductor-dbomatic
fi
%postun daemons
%if %{systemd}
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
%endif
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
%if %{systemd}
/bin/systemctl try-restart conductor-delayed_job.service >/dev/null 2>&1
%else
/sbin/service conductor-delayed_job condrestart > /dev/null 2>&1 || :
%endif
fi
%files
%dir %{app_root}
%{app_root}/app
%defattr(640,root,aeolus,750)
%dir %{app_root}/config
%{app_root}/config/environments
%{app_root}/config/initializers
%{app_root}/config/locales
%{app_root}/config/*.rb
%{app_root}/config/database.mysql
%{app_root}/config/database.pg
%{app_root}/config/database.sqlite
%config %{app_root}/config/*.yml
%defattr(-,root,root,-)
%{app_root}/config.ru
%{app_root}/db
%{app_root}/dbomatic
%{app_root}/lib
%{_bindir}/aeolus-debug
%{app_root}/public
%{app_root}/Rakefile
%{app_root}/Gemfile.in
%{app_root}/spec/fixtures/Gemfile.in
%{app_root}/vendor
%config %{_sysconfdir}/%{name}
%doc AUTHORS COPYING
%{app_root}/script/aeolus-upgrade
%{app_root}/upgrade-scripts
%files daemons
%{_initrddir}/aeolus-conductor
%{_initrddir}/conductor-dbomatic
%if %{systemd}
%{_unitdir}/conductor-delayed_job.service
%else
%{_initrddir}/conductor-delayed_job
%endif
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%config(noreplace) %{_sysconfdir}/sysconfig/aeolus-conductor
%config(noreplace) %{_sysconfdir}/sysconfig/conductor-rails
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
%attr(-, aeolus, aeolus) %{_localstatedir}/lib/%{name}
%attr(-, aeolus, aeolus) %{_localstatedir}/run/%{name}
%attr(750, aeolus, aeolus) %dir %{_localstatedir}/log/%{name}
%attr(640, aeolus, aeolus) %ghost %{_localstatedir}/log/%{name}/thin.log
%attr(640, aeolus, aeolus) %ghost %{_localstatedir}/log/%{name}/rails.log
%attr(640, aeolus, aeolus) %ghost %{_localstatedir}/log/%{name}/dbomatic.log
%attr(750, aeolus, aeolus) %dir %{app_root}/log
%attr(640, aeolus, aeolus) %ghost %{app_root}/log/delayed_job.log
%doc AUTHORS COPYING
%{_libdir}/../lib/tmpfiles.d/aeolus.conf
%{app_root}/script/delayed_job
%files doc
%{doc_root}
%doc AUTHORS COPYING
%files devel
%{app_root}/features
%{app_root}/script
%{app_root}/spec
%files -n aeolus-all
%changelog
* Thu May 03 2012 Martyn Taylor <[email protected]> - 0.9.0-1
- Updated compilation of new sass files
* Mon Jan 09 2012 Steve Linabery <[email protected]> - 0.8.0-2
- 18ba534 Merge branch 'master' of github.com:aeolusproject/conductor
- 0a37767 API - Added template checking when creating an image
- 33d63a3 -change method of ensuring poolIds are unique, removed hard tab
- 4aa3fce updated deployment index refresh to categorize deployments by pool
- a2885b4 added pool ID to div identifier
- 0a020e7 Support for multiple accounts per provider.
- 6fa3ce3 Backbone will always use preset_filter value if present
- 5e068fe Bump release
- a18865d Update changelog entries
- 9c027cd Fix autoupdate with table filters
- 15c740b Adding 'No catalog' label when no catalog available for the deployable when creating image
- 0c98f1b Use a lambda to delay the evaluation of Provider in conjunction with scope
- d2a37e2 Reference lib/image by full path
- 342c552 Display a specific error message for image import with a blank ID
- a7ae8ec Add missing style to image import form
- 90826d7 Rename Catalog Entries to Deployables in the UI
- 55b28c5 update pools count with applying filters in pools table (bz770620)
- 5adcc24 Autoupdating pretty view fixed on Pools#index for multiline array of deployments
- 61934bc Fixing new deployable form
- fdd00ab Fixing failing rspec tests
- dd1d2db Localise instance count indicator in pretty view
- eea7d11 Fix the uptime format
- a627c74 BZ#755933 Last login,Last login IP fields empty.
- 46ac73e Added architecture check
- 7b24128 Removed duplicit vcr definition for aeolus-image
- df5f048 BZ 769635, added scope enabled to Provider and ProviderAccount
- 1853d01 Error displayed after provider destroy fails
- 810714c Redirect to catalog detail after catalog entry is created succesfully
- be4735d Fixing the date format in Deployment's json representation
- 188c848 Table striping fixed for autoupdating on the table view of pools#index
- fc0c339 Fixing autoupdating issues
- d23ed06 Fixed error rendering for AJAX requests
- 4c43e02 Fixing the permission partial
- f5d8de1 Error message fixed for creating new deployable without providing url for the xml
- d7d7a29 Deployable XML parsing switched to strict mode
- fe236fc BZ#766163 Add reboot_multiple to grid view of instances,controller method and localization.
- 0bae59e fix user dropdown in masthead
* Wed Jan 04 2012 Steve Linabery <[email protected]> - 0.8.0-1
- d98cb57 Verify image exists before importing it from provider
- 314c90e Allow creating deployables from imported images
- b1e8993 Add realm selection to Deployment Overview
- b94664f Added support to DeployablesController to handle deployables without catalog
- 8d446e2 Fixing return_path in permissions#set_permission_object
- 4297b08 Change version of aeolus-image gem to 0.3.0
- 43440b1 Fixing jQuery template on deployments#show
- 9762232 Fixing autoupdate on deployments#show
- f1e6529 Prevent launching invalid deployments
- 77b349b Removed edit pool family button from pool families table (bz768154)
- a362758 Fix catalog dropdown when no catalog exist, bz769279
- cb5bf9b BZ 768089: Add model and UI for provider account priority
- e47d1a4 BZ 768089: spec test for provider account priority (revised)
- a3164ca BZ 768089: Refactor provider account matching to facilitate stubbing (revised)
- 93f464c Drop pretty/filter toggle from deployment details
- c3b896d Rake task to insert ldap users.
- 6512cb9 BZ 760901 - removed line touching unused lock file
- 02dfa3f fix for bz #765901: fix pools_in_use calculation
- 4f380bf new catalog entry from image, catalog select javascript
- 5be3de8 error messages in flash hud
- 3173e62 Replace description xml with name image import
- 77014ab Add a View Template XML option to Image Details
- 8668a57 BZ 767214 Removed the New Pool button from _section_header in pools controller
- 879c6eb catalog entries checkbox in header to enable select all listed catalog entries, catalog entries new_from_image i18n fix
- b062bc3 Fix message on launch from catalog
- 53ccabe pool_family_id param added to new_pool_path
- d5e79ff Deployable forms styling
- ab67147 Image import uses lib/image.rb class
- 0525111 Images#show properly detects ProviderAccount for imported image
- f0dea6c Fix failing RSpec tests
- a30691a images#show only shows the relevant provider for imported images
- 74143b3 API import (used by aeolus-cli) requires Provider Account now.
- c633f4c Image import is now linked to Provider Account, not just Provider
- 203b032 Log any errors encountered during image import
- 05f5067 Rescues a possible exception when creating a ProviderImage
- 04254b9 Hides build and upload buttons for imported images
- 72d9bf9 Image import uses new Image.import method
- b4019c2 fix afterdestroy callback for instance
- 003398f Fixed sort column
- 93d196a Fix deployable xml link on the launch overview page
- 415bddb Autoupdating deployments list on Pools#index
- 17c333b Show pool enabled/disabled status in Environments
- a211d72 added deployable name to create_from_image, BZ767109
- 725ad8f buildpush ui icons and styling
- d59142d Fix the pool families tests
- a20c7fd Add Images tab to the Pool Family details page
- 57afb0c Add "New Image" button to the images list
- 53548d1 Remove User Treatment from User form BZ767189
- 93d99a8 Fixed tests after removing warehouse models
- cd330fb Fixed deployable link
- c9c271a Removed warehouse models
- bf22438 Removed some methods from warehouse models
- 02d8dea Removed provider_images_for_image_list from image model
- 245fa3e Fix for bz #765907: change permissions tab label from 'Users' to 'Role Assignments'
- 057bf3b Fix missing translation on Import image button
- 4438a1a BZ#753917 Added target to API Build Output
- 926e1ac BZ#753917 Updated API to return Provider/Account on Push
- 547e1a5 Fixing jQuery template on deployments#show
- cf8cf19 Fixup for #761134
- 01e9383 Fixing recognize_path calls when the path contains prefix
- c784c3a Require a template file on the upload page
- cd06da9 Style Image Details' header buttons
- e15298b Don't display 'Download key' if there is not instance key
- 1b4af97 Fixup for bz761096
- 3ef5ea4 Quick Fix, destroy method is not called for ec2 and Mock instances, or if instance is in CREATE_FAILED state
- 34db60c new administer section navigation icons
- b196025 BUG-2751 - Delete instance on provider side when deleted in conductor
- ea32f34 rootpw param in template XML changed is now required
- 72fc9ac deployable details icons
- 859c1c1 fix launch deployable test
- 0978d61 deployable details Images part
- cec00a2 fixed bug with updating deployable xml
- c6dfc66 deployable details page styles, deployable details image section errors
- f31b995 Use names correctly on template upload
- 138d64d Input validation for new deployable from image
- 243d454 Fixing deployment card on Pools#index
- f11f6de Fix for bug #766038
- ef2c43d fix for BZ #761509: User quota and other stats
- 4c20a16 Allow changing deployment name on the Overview page
- c02a0c4 BZ761132 fix broken translations for template xml
- 32517e0 Fix flash message in images_controller#edit_xml
- 13f897e Disabling Add button if no available catalog exists
- ec56568 Condition added to XML validation in Deployable
- 4f813b4 Fixed deprecation warning in pool_families#edit
- 87cd77e Remove "load definition from XML" option from launch new deployment page
- a6ea1ef Replaced new_catalog_entry_path with new_deployable_path to work with new controller structure
- acd1159 Fixed a wrong regex on grep
- a37aaf5 Added rake task to verify the status of licenses in the project
- b7b467f Fixed list of catalog entries on deployables show page
- bc11e96 deployable detail styles and fixes through biuldpush ui
- 2c9a31d pool families list fix
- f23ac0c RM 2879 - Secondary method for creating provider accounts using a provider name instead of an id
- b24e67f BZ#754956 Return appropriate error code when parent not found
- 971aaf2 List of users added to permissions page
- ad124c6 Clean up Permission-related flash messages
- 972777f Add Build & Push to Deployable Details
- 978a43a Deploaybles and catalog_entries cleanups
- 03f7931 Redmine #2254: Always compile scss in dev enviroment.
- 122e55a Change sql statement to use rails helpers.
- 869c8a6 Fix this migration so it also works on sqlite.
- 077a18a Moving from GPL to ASL
- 3bd07b2 Add relp dependency to metapackage.
- 79e6dc9 bump version in Makefile and reset release
- 9fe1011 Add changelog and bump release on specfile for 0.7.0 RC
* Thu Dec 1 2011 Steve Linabery <[email protected]> - 0.7.0-1
- 4178a0a Adds functionality to delete deployment configurations from config server
- cce4c7e Added pagination to events on instance detail page
- bf3868b Clean up minor unneeded test output.
- a9c520d Fixing aeolus-conductor.spec.in
- 0e2b2d4 format_value is more cautious with calling .split
- f35d2d7 Redmine #2515: Write and test actual logging behavior.
- 9a4be2b Redmine #2514: Write and test transformation of api data into correct log format.
- 3c1cc5c RM #2822: Add way to retrieve full list of attributes for validation.
- 2723e13 Comments out EventSpec for now
- d5f05a3 Rescue possibly-risky calls when creating a CDDR
- fc2cafa Fixing message for user creation
- 0167f7d Adding required fields indicator for user form
- c5c1b98 remove repeating sql statements in rails.log
- c239f6c Added build timestamp to image list view
- 32f5ea0 Updated images controller to use TemplateXML
- 1f447f4 Created TemplateXML model
- d86537c Correct bad call left after rubygem refactor
- af0ab18 Display the details for each image on the Deployable Details page
- 81a2c60 Event.rb uses full path to lib/aeolus/event
- 9df721a Fix for creating new Deployable page
- ad13160 Allow Deployable XML files to contain in-line configurations
- 42597dd Registering/deregistering multiple catalogs to deployment Renaming CatalogEntriesController to DeployablesController
- 35d6fef catalogs dropdown in Create new catalog entry from template, new catalog_entry form styling
- 79d5ab7 Buildpush layout
- fcc950a obscured launch parameter if it is password
- b0ed5b9 Update Image show UI
- c44778d Return provider cleanup content via API
- 2e3ead5 Updated Gemfile.lock for aeolus-image 0.2.0
- 7e068e9 Permissions page for deployables.
- a5ff27c Fixes failing test introduced by previous commit.
- 1aecfb4 Deployment flash error is no longer mashed together.
- 11b82d9 extracted apply_filters and apply_preset_filters methods to common_filter_methods module
- 01ab731 Cucumber tests for search and filters
- dd41e62 Added filter method, updated filters and search through the application
- ba22842 Added filters and search to tables through application
- 9016b1f Fixes bugs and warnings exposed by tests
- 4b78e5d Adds tests for Events
- 60e6245 lib/aeolus/event code is included in RPM and called for Events
- b86f1fd DBomatic does not write events; after-save hooks already handle this
- bd26168 InstanceObserver includes :status_code, :change_hash parameters to Event
- 3317495 Event model calls Event API after_create
- de655cf Define start_time and end_time for Deployment
- 8fc332f Remove secret_token.rb from conductor rpm - v2
- e36fa46 internationalize api error messages
- ae2cdf6 Fix pagginate on launch_from_catalog site
- a4b892b Image import GUI
- cecbf26 Fixes pool family detail, pools tab. Adds generic table instead of pool_families one
- 24fa151 BZ744713 - changed font styles for catalog images
- 99eda06 BZ#755933 Last login, Last login IP fields empty
- 5e1b27a Launch deployment from the Deployable Details page
- 8c8ae24 Correct bad call in Api::TargetImagesController
- 5d4d456 Updated API for new aeolus-image-rubygem changes
- 7da907f added reraising of BuildNotFound exception
- d2b1de1 changed return text to xml, add targets to import params
- f0d2b77 added reraising of ProviderImageNotFound expection
- 838179e API::ProviderImages spec, mock in #create + minor fixes
- ecacfa4 API::Images spec, minor xml fixes
- e3e193b API::Builds spec, minor return expectations fixes
- 2707489 API::TargetImages spec, #destroy
- b983da4 API::ProviderImages spec, #create #destroy
- 9f2c3e8 API::ImagesController spec, #create #destroy
- 9ee78b8 API::BuildsController spec #create #destroy
- 7b904f4 Display the backend provider image ID when deleted
- 6c7802e UI - create catalog entry from an image
- 2b43395 Removed unused rescue block when creating a template
- 56a2d9f Fix broken the Catalog Entries Cucumber feature
- eeac165 Add the skeleton for the Deployable Details page
- 131887d Add the name of belonging provider in provder_account#new/edit form
- 304c42b Change dropdown of catalogs to the name of belonging catalog in catalog_entry#new/edit form
- 6decf95 spec and cucumber changes for catalog_entry/deployable refactoring
- 1671422 view and controller changes for catalog_entry/deployable refactoring
- ff83dda Refactored catalog_entry model into catalog_entry and deployable models.
- 77dce31 Implementing pretty view for instances
- 4823c2b Changed aeolus user to 180:180 per bz 754274
- 0301070 dbomatic only writes instance events if they have changed
- 279331f Added options for creating catalog entry via upload XML or url to XML
- 0e7a2f9 Added tabs to catalog_entries#new form
- d88865d Fix tests after removing URL of catalog entry from launch form
- 4705924 Remove URL of catalog entry from launch UI
- bd41e3a Fixed specs and cukes after the change in catalog entries.
- 28e8fb8 Changes for catalog entry new/edit form.
- 39632a8 Added migration, that deletes URL attribute from catalog_entries and adds 2 column(xml, and xml_filename)
- 8e6f8dc Save template in warehouse
- d207889 Improved tests performance
- 65c7a75 Comments failing Image test
- 63903e6 Bump version number following imminent release of 0.6.0 from the 0.6.x branch
- 3a8a4d3 Updates ProviderType to use Rails 3 syntax
- f2f751b Add screens for template import
- 6f0b310 Fix spec so rpm builds.
- 690eb08 Task #2710 reboot of instance
- 62d2b4d Add initial 2 events to be sent.
- a6c4081 Initial Event API implementation.
- 57c4066 Added image detail page
- 78b505b Added images index view
- 6534ce1 Added empty images controller
* Tue Oct 04 2011 Maros Zatko <[email protected]> - 0.4.0-1
- added controllers/api + views
* Thu Jul 21 2011 Mo Morsi <[email protected]> - 0.3.0-2
- update Source0 checkout instructions
* Wed Jul 20 2011 Mo Morsi <[email protected]> - 0.3.0-1
- new upstream release
- changes to conform to fedora guidelines
* Tue Apr 05 2011 Chris Lalancette <[email protected]> - 0.0.3-2
- Large spec file cleanup
- Split out development files into a -devel package
- Remove external dependencies and add to the aeolus-all package
* Thu Jan 20 2011 Chris Lalancette <[email protected]> - 0.0.3-1
- Rename from deltacloud-aggregator to aeolus-conductor
* Mon Sep 27 2010 Chris Lalancette <[email protected]> - 0.0.2-3
- Added new rubygem-parseconfig dependency
- Turn on services during install with chkconfig
* Sat Mar 6 2010 Ian Main <[email protected]> - 0.0.2-2
- removed taskomatic from packaging.
* Wed Feb 18 2010 Mohammed Morsi <[email protected]> - 0.0.2-1
- renamed portal to aggregator
- updated / cleaned up package
* Fri Sep 1 2009 <[email protected]> - 0.0.1-1
- Initial build.