Skip to content

Paperclip SFTP is Secure File Transfer Protocol storage for Paperclip

License

Notifications You must be signed in to change notification settings

healthify/paperclip-sftp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gem Version Dependency Status Code Climate

Paperclip SFTP

Paperclip SFTP is Secure File Transfer Protocol storage for Paperclip

Installation

gem 'paperclip-sftp', '~> 1.0.0'

Usage

class User < ActiveRecord::Base
  has_attached_file :avatar,
    storage: :sftp,
    sftp_options: {
      host: "sftp.example.com",
      user: "user",
      password: "password",
      port: 22
    }
end

You can define these options globally, enable this storage for specific environments, etc. Please see Paperclip github page for more details.

It is also possible to specify SSH key for passwordless connection.

class User < ActiveRecord::Base
  has_attached_file :avatar,
    storage: :sftp,
    sftp_options: {
      host: "sftp.example.com",
      user: "user",
      port: 22,
      keys: "/path/to/id_rsa.pub"
    }
end

Running tests

All tests are live so in order to run them you need to setup local SFTP server. That will take at most 5 minutes on either MacOS or Linux. Connection is defined in test/test_helper.rb if you need to change it.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

Paperclip SFTP is Secure File Transfer Protocol storage for Paperclip

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%