Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

remote_fileリソースで認証を越えてアクセスする

Chef Advent Calendar 2014 - Qiitaの(名目上の)5日目です。


Chef 11.6からremote_fileheaders属性が付与できるようになりました。

Release Notes: chef-client 11.6 — chef-client 11.6 Documentation

例えば、認証付きのJenkinsからファイルを取得する必要がある場合などに使えます、というか、その用途で使いました。

11.6以前って、みんなどうしてたんだろう……。

例えば、JenkinsサーバーにChefアクセス用のユーザー、foo(パスワードはbar)がいるとして、こんな感じでbase64デコードしてやって、

$ echo -n 'foo:bar' | base64 
Zm9vOmJhcg==

それをこんな感じでAuthenticationヘッダに載せてやればオッケーです。

remote_file local_file do
  source remote_file
  headers 'Authorization' => 'Basic Zm9vOmJhcg=='
end

参考

個人の感想です

Chefって覚えること多くてしんどくて、ドキュメントが多い割にはアンドキュメントなところも多くて、開発がアクティブだから1年前の情報と違うこと(最近はencrpyted data bagよりchef-vaultのほうがいいの?)が割とあるとかで、なんだか人気に翳りがでてきてるような気がする。
仕事でRails触ってないから想像なんだけど、Railsのバージョンアップについていくのがしんどいんだけどバージョンアップを頑張りたくてRails使ってるわけじゃない的な。インフラ寄りのひとだったら余計にそうだろうなあ。

まだ、Ansibleのほうが覚えること少なくて芽があるんじゃないか、と思ってて(個人の感想です)、わりとみんなもそうだったりするのかな。

そんなChefとAnsibleの対比を考えていて、なぜかWatson (Jenkinsの旧称)がでてくるまえのCIツール群(Cruise control, Damage controlなど)を思い出した。まーでも、Cruise controlとかはキャズムを超えらんなかったけどChefはそうじゃないから、そういう類型化は違うか。

Ansibleですべて解決!とかはまったく思ってないし同じ問題をはらんでいる可能性もあるんだけど、あくまで個人的にはAnsibleのほうが肌に合うな、と思っています。

以上、個人の感想でした。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
1
Help us understand the problem. What are the problem?