ADD generated/secret_token.rb /usr/src/arvados/services/api/config/initializers/secret_token.rb
ADD generated/omniauth.rb /usr/src/arvados/services/api/config/initializers/omniauth.rb
ADD generated/production.rb /usr/src/arvados/services/api/config/environments/production.rb
+ADD generated/apache2_vhost /etc/apache2/sites-available/arvados
# Configure databases and users.
ADD generated/config_databases.sh /tmp/config_databases.sh
rm /tmp/config_rake.sh
# Configure Apache and Passenger.
-ADD apache2_vhost /etc/apache2/sites-available/arvados
ADD passenger.conf /etc/apache2/conf.d/passenger
RUN a2dissite default ; \
a2ensite arvados ; \
+++ /dev/null
-# VirtualHost definition for the Arvados API server
-
-<VirtualHost *:80>
- ServerAdmin webmaster@localhost
-
- DocumentRoot /usr/src/arvados/services/api/public
- <Directory /usr/src/arvados/services/api/public>
- AllowOverride all
- Options -MultiViews
- </Directory>
-
- ErrorLog ${APACHE_LOG_DIR}/error.log
-
- # Possible values include: debug, info, notice, warn, error, crit,
- # alert, emerg.
- LogLevel warn
-
- CustomLog ${APACHE_LOG_DIR}/access.log combined
-</VirtualHost>
--- /dev/null
+# VirtualHost definition for the Arvados API server
+
+<VirtualHost *:80>
+ ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
+ ServerAdmin sysadmin@clinicalfuture.com
+
+ RedirectPermanent / https://@@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@/
+
+ LogLevel warn
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ CustomLog ${APACHE_LOG_DIR}/access.log combined
+
+</VirtualHost>
+
+<VirtualHost *:443>
+ ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
+ ServerAdmin sysadmin@clinicalfuture.com
+
+ RailsEnv production
+ RackBaseURI /
+ RailsAppSpawnerIdleTime 1200
+
+ # Enable streaming
+ PassengerBufferResponse off
+
+ # Index file and Document Root (where the public files are located)
+ DirectoryIndex index.html
+ DocumentRoot /usr/src/arvados/services/api/public
+
+ LogLevel warn
+ ErrorLog ${APACHE_LOG_DIR}/ssl_error.log
+ CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
+
+ <Directory /usr/src/arvados/services/api/public>
+ Options Indexes FollowSymLinks MultiViews IncludesNoExec
+ AllowOverride None
+ Order allow,deny
+ allow from all
+ </Directory>
+
+ <IfModule mod_ssl.c>
+ SSLEngine on
+ # SSLCertificateChainFile /etc/ssl/certs/startcom.sub.class1.server.ca.pem
+ # SSLCACertificateFile /etc/ssl/certs/startcom.ca.pem
+ # SSLCertificateFile /etc/ssl/certs/qr1hi.arvadosapi.com.crt.pem
+ # SSLCertificateKeyFile /etc/ssl/private/qr1hi.arvadosapi.com.key.pem
+ SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
+ SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
+ SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
+ </IfModule>
+
+</VirtualHost>
# the same tree structure as in the original source. Then all
# the files can be added to the docker container with a single ADD.
+Dir.glob('*/generated/*') do |stale_file|
+ File.delete(stale_file)
+end
+
Dir.glob('*/*.in') do |template_file|
generated_dir = File.join(File.dirname(template_file), 'generated')
Dir.mkdir(generated_dir) unless Dir.exists? generated_dir