Задать вопрос
Ответы пользователя по тегу Ruby
  • Запуск скрипта ruby по крону?

    @artem_music Автор вопроса
    Решение оказалось банальным: проставить права на запуск скрипта, прописать полные пути на все (в том числе на библиотеку работы с google drive).
    Скрипт:
    #!/home/user/.rvm/gems/ruby-2.2.5/wrappers/ruby 
    def db_backup 
      puts "Backing up DB..." 
      time = Time.new 
      date = time.strftime("%d.%m.%y_%H.%M.%S") 
    
      # формируем бэкап 
      %x[pg_dump dbname > ~/backups/db.sql] 
      # сжимаем 
      %x[tar czPf ~/backups/db_#{date}.tar.gz ~/backups/db.sql] 
      # удаляем дамп 
      %x[rm ~/backups/db.sql] 
      # загружаем сжатый бэкап на google drive (FOLDER_ID - идентификатор папки на google drive) 
      %x[/usr/sbin/drive upload --file ~/backups/db_#{date}.tar.gz -p FOLDER_ID] 
      # удаляем сжатый бэкап с сервера 
      %x[rm ~/backups/db_#{date}.tar.gz] 
    
      puts "File was uploaded" 
    end 
    
    if __FILE__ == $0 
      db_backup 
    end

    Крон:
    0 4 * * * /home/user/.rvm/gems/ruby-2.2.5/wrappers/ruby /home/user/myapp/db_backup.rb
    Ответ написан
    Комментировать
  • На чем писать кроссплатформенное API?

    @artem_music
    Я бы рекомендовал писать на ruby on rails, но тогда для сервера придется брать VDS. Если важнее разворачивать на любом виртуальном сервере - то PHP. По поводу того, что мало подходит - тут вопрос прямоты рук скорее стоит, и на php можно хороший код писать.
    Ответ написан
    Комментировать