Use a separate dir for tmp

master
Daniel Berteaud 9 years ago
parent 6c48c77047
commit 426fa04522
  1. 6
      .gitignore
  2. 4
      conf/settings.ini.dist
  3. 0
      data/cache/README
  4. 1
      data/tmp/README
  5. 3
      lib/Vroom/Conf.pm
  6. 11
      templates/default/documentation.html.ep
  7. 4
      vroom.pl

6
.gitignore vendored

@ -1,3 +1,5 @@
conf/settings.ini
cache/*
!cache/README
data/cache/*
!data/cache/README
data/tmp/*
!data/tmp/README

@ -75,7 +75,9 @@ credentials = 'rest'
[directories]
; Where to store cache data. Defaults to the cache subdirectory
; User running VROOM daemon must have write access
;cache = 'cache'
;cache = 'data/cache'
; Where to store temporary files
;tmp = 'data/tmp'
[daemon]
; IP the hypnotoad daemon will listen on. You can use * to bind on every IP/Interface

@ -0,0 +1 @@
This is where temp data are stored

@ -39,7 +39,8 @@ sub get_conf(){
$config->{'etherpad.uri'} ||= '';
$config->{'etherpad.api_key'} ||= '';
$config->{'etherpad.base_domain'} ||= '';
$config->{'directories.cache'} ||= 'cache';
$config->{'directories.cache'} ||= 'data/cache';
$config->{'directories.cache'} ||= 'data/tmp';
$config->{'daemon.listen_ip'} ||= '127.0.0.1';
$config->{'daemon.listen_port'} ||= '8090';
$config->{'daemon.backend'} ||= 'hypnotoad';

@ -285,14 +285,14 @@ echo "LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so" \\
> /etc/httpd/conf.modules.d/00-proxy_wstunnel.conf</pre>
</p>
<h3 id="c7_cache_dir_perm">
Set permissions on the cache directory
<h3 id="c7_dir_perm">
Set permissions on the cache and tmp directories
</h3>
<p>
The <strong>cache</strong> directory must be writeable for the user running the VROOM daemon, which is <strong>vroom</strong> in the provided systemd unit
The <strong>cache</strong> and <strong>tmp</strong> directories must be writeable for the user running the VROOM daemon, which is <strong>vroom</strong> in the provided systemd unit
<pre>
chown -R vroom ./cache
chmod 700 ./cache</pre>
chown -R vroom ./data/{tmp,cache}
chmod 700 ./data/{cache,tmp}</pre>
</p>
<h3 id="c7_systemd_unit">
@ -447,6 +447,7 @@ cp /opt/vroom/conf/settings.ini.dist /opt/vroom/conf/settings.ini</pre>
Controls where to find some specific directories
<ul>
<li><strong>cache</strong>: This is where VROOM will store its cache (including auto generated and compressed assets like JS and CSS bundles)</li>
<li><strong>tmp</strong>: This is where VROOM will store temp data like XLSX files when exporting events</li>
</ul>
</p>

@ -30,7 +30,7 @@ app->log->level('info');
our $config = Vroom::Conf::get_conf();
# Try to create the cache dir if they doesn't exist
# Try to create the directories we need
foreach my $dir (qw/assets/){
if (!-d $config->{'directories.cache'} . '/' . $dir){
make_path($config->{'directories.cache'} . '/' . $dir, { mode => 0770 });
@ -1175,7 +1175,7 @@ helper get_room_conf => sub {
helper export_events_xlsx => sub {
my $self = shift;
my ($from,$to) = @_;
my $tmp = File::Temp->new( DIR => $config->{'directories.cache'}, SUFFIX => '.xlsx' )->filename;
my $tmp = File::Temp->new( DIR => $config->{'directories.tmp'}, SUFFIX => '.xlsx' )->filename;
my $events = $self->get_event_list($from, $to);
if (!$events){
return 0;

Loading…
Cancel
Save