2

预编译资产时,我的资产同步 gem 没有上传到 s3

资产同步.rb

if defined?(AssetSync)
  AssetSync.configure do |config|
    config.fog_provider = 'AWS'
    config.aws_access_key_id = ENV['AWS_ACCESS_KEY_ID']
    config.aws_secret_access_key = ENV['AWS_SECRET_ACCESS_KEY']
    # To use AWS reduced redundancy storage.
    # config.aws_reduced_redundancy = true
    config.fog_directory = ENV['FOG_DIRECTORY']

    # Invalidate a file on a cdn after uploading files
    # config.cdn_distribution_id = "12345"
    # config.invalidate = ['file1.js']

    # Increase upload performance by configuring your region
    config.fog_region = 'ap-southeast-2'
    #
    # Don't delete files from the store
    # config.existing_remote_files = "keep"
    #
    # Automatically replace files with their equivalent gzip compressed version
    # config.gzip_compression = true
    #
    # Use the Rails generated 'manifest.yml' file to produce the list of files to
    # upload instead of searching the assets directory.
    # config.manifest = true
    #
    # Fail silently.  Useful for environments such as Heroku
    # config.fail_silently = true
  end
end

生产.rb

  config.assets.enabled = true
  config.assets.digest = true
  config.action_controller.asset_host = "//#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
  config.assets.initialize_on_precompile = true

应用程序.rb

    config.assets.enabled = true
    config.assets.digest = true

当我预编译时,我什至没有收到任何消息表明它正在上传。

发生这种情况有原因吗?

4

2 回答 2

1

可能你有:

group :assets do
  gem 'asset_sync'
end

你应该把那个宝石从那个组里拿出来

于 2015-01-29T01:18:51.470 回答
0

我知道这个问题很老了......但我刚刚继承了一个 Heroku 应用程序,并且正在阅读如何使用 Heroku 进行资产同步并遇到了这个,它指出在 Heroku 上编译资产时 ENV 变量不可用。

于 2019-10-28T21:25:32.750 回答