Vagrant+FuelPHPの環境をWindows上に作成する(Macで稼働している環境の移行)

vagrant

退職後に貸与されていた端末(Mac mini)を返却した上で部分的に業務委託を請け負うことにするためには、開発環境を自宅PC上に構築する必要があるのですが、あいにく自宅にはWindowsPCしかなく、開発環境を整えるのがMacに比べて少し面倒。Linuxベースならすんなりいけるであろうところでかなりハマりつつ、なんとか開発出来る環境を整えられたのでその概要を汎用的な情報の範囲においてメモ。ちなみに環境構築の基本的な部分はchefとcomposerで設定済みなので、イチから立ち上げるということではありません。あくまで、Macで動いている開発環境をWindowsにもってくるというお話。

続きを読む

自らのミスをプログラムという「よくわからないもの」のせいにしたい人たち

悪魔の影のイラスト

飲食店で給料の誤計算問題が起きましてね。僕の給料が2ヶ月合計で14時間分少なく見積もられていて、しかもその間違った額で年末調整までしてしまって、問い合わせたら「調べて間違っていたら1月分と一緒に振り込むが、年末調整をやり直すことは出来ない」という返答でした。なんのために明細を出してるのか。問題ないの解ってから年末調整にして欲しいなあ。従業員は明細なんて読まないと思ってるのか?まあ一般的にはそうなのかも知れませんね、僕は必ずチェックするようにしてますが(といいつつ前月の間違いは見逃しちゃってるんですが)。

続きを読む

【ネタ】「418 I’m a teapot」

ティーセットのイラスト「ティーカップとティーポット」

前任者が作成したプログラムがHTTPステータスを使わずに全部200を返した上で、レスポンスに「result=true」とか「result=false」とか書き込んでいて、データ受取先のaxiosが大変面倒なことになっていたので、ちゃんとHTTPステータスコード使おうと思って調べたらその中に変なのがあるのを見つけました。

続きを読む

JavaScriptでデータからCSVファイルを生成しダウンロードさせる

いろいろなファイルアイコン(文字)

管理アプリケーションから任意のレコードを選択してボタンを押すと、用途に合わせた情報が抽出されてCSVファイルとしてダウンロード出来る……という要件を満たすために、最初はPHP主体で処理することを考えていたのですが、色々調べてみるとほとんどJavaScriptで出来ることがわかりました。あとで記載する参考リンクの情報を組み合わせるとこんな感じ。

続きを読む

【メモ】Chefがバージョンアップしてライセンスエラーが出るようになった【#np2020】

「Chef」が100%オープンソースに | OSDN Magazine

設定管理ツール「Chef」を開発する米Chefは4月2日、Chefソフトウェアを完全にオープンソースとして公開することを発表した。ライセンスはApache License 2.0で、商標ポリシーが守られている限りソースコードの使用、配布、収益化に制限を設けないという。  Chefはこれまでコア部分のみがオープンソースとして提供されていたが、今回プロダクトコードのすべてをオープンソースとする。これによりコミュニティの目標とChefの目標を連携させることができ、より良いソフトウェアの構築につながると期待を寄せている。  ライセンスは、Chef Infra、Chef InSpec、Chef Habitatと一貫性のあるApache License 2を採用、商標ポリシーが守られている限り、ソースコードの使用、配布、収益化に制限を設けないとしている。今後、Chefチームが生成するソフトウェアはすべてオープンなリポジトリに入り、ロードマップなどの製品開発プロセスについてもオープンにしていくという。

Chefがオープンソースになった影響なのか、ver.15からライセンスへの同意を設定ファイルに含めないといけなくなったらしく、そのままではエラーが出て動かない。
==> default: Chef Infra Client cannot execute without accepting the license Chef never successfully completed! Any errors should be visible in the output above. Please fix your recipes so that they properly complete.
ドキュメントを読むとvagrantではこう追加せよとあったのでやってみたんだけど……

Accepting the Chef License — Chef Docs

Vagrant This license acceptance can be done via the arguments API:

config.vm.provision "chef_zero" do |chef|
chef.arguments = "--chef-license accept"
end
怒られた。
==> default: /opt/chef/embedded/lib/ruby/gems/2.6.0/gems/mixlib-cli-2.0.3/lib/mixlib/cli.rb:230:in `parse_options’: invalid option: –chef-license (OptionParser::InvalidOption)
「–chef-license」っていうオプションなんか知らねーって言われてるみたい。多分、何かをアップデートしたら動くようになるんだろうなと思いつつ、面倒くさかったのでドキュメントにあったもうひとつの方法「Chefのバージョンを固定する」を試す。
config.vm.provision "chef_zero" do |chef|
chef.version = "14.12.3"
end
無事、vagrant起動。初めからこうしておけばよかったんや…… とはいえ、バージョンアップしないというのもアレなので、そのうち何かしたいと思います。どうしたらいいかわかんないけど。誰か教えてください。

続きを読む