Skip to content

Commit

Permalink
Merge branch 'master' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolassatragno committed Dec 16, 2012
2 parents 42e5cd3 + 25a6f09 commit 8ff0f7c
Show file tree
Hide file tree
Showing 5 changed files with 35 additions and 3 deletions.
3 changes: 0 additions & 3 deletions .openshift/cron/hourly/update_db

This file was deleted.

9 changes: 9 additions & 0 deletions .openshift/cron/hourly/update_rpm_list.sh
@@ -0,0 +1,9 @@
#!/bin/bash
if [ `date +%H` == "02" ]
then
export RAILS_ENV="production"
cd $OPENSHIFT_REPO_DIR
echo "Starting RPM list update..." > $OPENSHIFT_DATA_DIR/last_update.log
rake "database:import_rpms[refresh_list]" >> $OPENSHIFT_DATA_DIR/last_update.log 2>&1
echo "RPM list update done!" >> $OPENSHIFT_DATA_DIR/last_update.log
fi
5 changes: 5 additions & 0 deletions .openshift/cron/minutely/update_oldest_rpm.sh
@@ -0,0 +1,5 @@
#!/bin/bash

cd $OPENSHIFT_REPO_DIR
export RAILS_ENV="production"
rake "database:update_oldest_rpms[1]" >> $OPENSHIFT_DATA_DIR/last_update.log 2>&1
11 changes: 11 additions & 0 deletions app/models/rpm_importer.rb
Expand Up @@ -5,6 +5,17 @@ class RpmImporter
BASE_URI = 'http://pkgs.fedoraproject.org/cgit/'
PKG_LIST_URI = BASE_URI + '?q=rubygem-'

def self.import_oldest(number)
total = 0
rpms = FedoraRpm.order("updated_at ASC").limit(number)
rpms.each { |f|
puts "Updating #{f.name} (#{total += 1}/#{rpms.size})..."
f.update_from_source
}
rescue Exception => ex
puts ex.message
end

def self.import_all
total = 0
rpms = FedoraRpm.find(:all)
Expand Down
10 changes: 10 additions & 0 deletions lib/tasks/database.rake
Expand Up @@ -70,5 +70,15 @@ namespace :database do
end
GemImporter.update_gems(days)
end

desc 'import oldest n rpms'
task :update_oldest_rpms, [:rpms_number] => :environment do |t, args|
args.with_defaults(:rpms_number => 10)
number = args.rpms_number.to_i
unless number.nil? || number.is_a?(Fixnum)
raise ArgumentError, "invalid number of oldest rpms to import"
end
RpmImporter.import_oldest(number)
end

end

0 comments on commit 8ff0f7c

Please sign in to comment.