2013-10-29 19 views
58

Ogni azione in una console rotaie (server di rotaie, console, db: la migrazione, ecc) solleva un avvertimento dal mio ultimo aggiornamento bundle:avvertimento con nebbia e AWS: Impossibile caricare la gemma 'unf'

[fog][WARNING] Unable to load the 'unf' gem. Your AWS strings may not be properly encoded. 

sono sicuro che non ho cambiato nulla nelle stringhe AWS che sono nel mio file application.rb:

# Amazon S3 credentials 
ENV["AWS_ACCESS_KEY_ID"] = "AWS_ACCESS_KEY_ID" 
ENV["AWS_SECRET_ACCESS_KEY"] = "AWS_SECRET_ACCESS_KEY" 
ENV["AWS_S3_BUCKET"] = "my-bucket" 

non ho questo gioiello "unf" nel mio Gemfile. Dovrei aggiungerlo?

risposta

74

Sì, questo è successo solo pochi giorni fa. Puoi vedere dalla richiesta pull e confermare che la dipendenza unf è facoltativa.

https://github.com/fog/fog/pull/2320/commits

Quando ho aggiornato il mio fagotto corrente con nebbia ho ricevuto gli stessi avvisi, e l'aggiunta di

gem 'unf' 

non effettivamente rimuovere l'avviso senza problemi.

13

Se non si dispone di bucket/oggetti S3 che non abbiano caratteri ASCII nei nomi, penso che si possa tranquillamente ignorare l'avviso. Potremmo fare qualcosa per renderlo meno rumoroso anche, ma per ora puoi ignorare o aggiungere unf a quietarlo, come sottolineato da @trh.

+0

Perché non aggiungere semplicemente "unf" come dipendenza dalla nebbia? –

+0

La conversazione su Github rivela che stanno cercando di limitare le dipendenze degli aghi. "Uso Fog con Rackspace Cloud, perché ho bisogno di unf?" – Daniel

+0

corretto. Includeremmo solo se fosse ampiamente necessario, ma dal momento che solo AWS (e solo in contesti limitati) ne ha bisogno, è sembrato cattivo/pesante consegnarlo a tutti. Non una grande situazione in generale, ma questo sembrava il male minore. – geemus

7

Apparentemente ho installato la nebbia 1.18.0 quando ho visto questo errore. (Riavvio un progetto AWS vagabondo ho installato qualche tempo fa) Il mio tentativo ingenuo ad una correzione è stato quello di iniziare con un aggiornamento

gem install fog 

che ha aggiornato qualcosa da nebbia-1.21.0. Come ha avvertito, "Questo potrebbe richiedere un po '..." ... e questo non ha aiutato.

ESCLUSIVAMENTE DOVE aggiungere "gem 'unf'" non era chiaro dalla soluzione votata qui, sembrava lib/fog/aws.rb ma era già lì quando ho guardato.

gem install unf 

sembrava aggiungerlo da qualche parte, ma il problema non è andato via.

Ho aggiornato il vagabondo stesso (da 1.4.3 a 1.5.1) e CHE non l'ha risolto.

Alla fine, la correzione era

vagrant plugin install unf 

come ho trovato in un thread a https://github.com/mitchellh/vagrant/issues/2507

non sono sicuro se qualcuno dei miei precedenti tentativi maldestri sono stati anche necessario, in modo che io notato qui comunque.