メモ go-swaggerでcookieをsetする

middleware.Responder を実装してCookieをsetする. func Handler(params foo.Requestparams) middleware.Responder { ... 何らかの処理 ... return NewSetCookieResponder(foo.NewSetCookieOK().WithPayload(&models.SetCookieResponse{})) } type SetCookieResponder struct { responder middleware.Responder } func NewSetCookieResponder(responder middleware.Responder) *SetCookieResponder { return &SetCookieResponder{ responder: responder, } } func (l *SetCookieResponder) WriteResponse(rw http.ResponseWriter, p runtime.Producer) { http.SetCookie(rw, &http.Cookie{ Name: "some token name", Value: "hogehogehoge", Domain: "localhost", Path: "/", HttpOnly: true, Secure: true, Expires: time.Now().Add(7 * 24 * time.Hour), SameSite: http.SameSiteStrictMode, }) l.responder.WriteResponse(rw, p) }

<span title='2021-02-05 22:18:29 +0900 +0900'>2月 5, 2021</span>

iPhone12 Pro Maxのディスプレイが故障した

12月に購入したiPhone12 Pro Maxのディスプレイが故障した. 落として割れたとかではなく突然左端の領域が反応しなくなった.

<span title='2021-01-27 09:42:12 +0900 +0900'>1月 27, 2021</span>

丸笹山/赤帽子山

2020/12/12に徳島県の丸笹山, 赤帽子山に登ってきた. 登山口はラ・フォーレつるぎ山のところを利用した. 8時に登山口に到着し登り始めた. 行ってきます pic.twitter.com/iwrJETFH2M — 煩悩 (@ast839) December 11, 2020 この日私以外の登山客はいなかった. 登山口の気温は1度ぐらいだった. 登山道であったのは鹿だけだった. 10頭ほどの群れに4回出会った. 登山道には鹿の糞がところどころ落ちており鹿の多さがよくわかった. 鹿 pic.twitter.com/fFact5H8F5 — 煩悩 (@ast839) December 12, 2020 写真を撮影しながら歩いて40分ほどで丸笹山登山口に到着した. 誰もいない pic.twitter.com/vIWrQdUILw — 煩悩 (@ast839) December 11, 2020 多少もやっていたが悪くわない景色だった. むしろ森の中は多少もやってるほうが幻想的でいい. 丸笹山の山頂付近の木々は少しだけ霧氷が付着していた. pic.twitter.com/DwbckT65ML — 煩悩 (@ast839) December 13, 2020 丸笹山までは特に疲れることもなかったので休憩せずにそのまま赤帽子山へ向かった. 丸笹山から赤帽子山までは下りが続いた. 赤帽子山のほうが標高が低いので当然といえば当然である. 丸笹山, 赤帽子山, 国道439号線分岐のあたりまではとても鹿ポイントだった. 赤帽子山山頂に10時頃到着し早めのお昼をとった. 赤帽子山 pic.twitter.com/wy5GeuP09B — 煩悩 (@ast839) December 12, 2020 帰りは丸笹山山頂を通らずに貞光川源流を通って下山した. pic.twitter.com/GQ1zOOauqN — 煩悩 (@ast839) December 13, 2020 このルートは全体的になだらかで登りやすいし樹林帯は苔が豊富な景観を楽しめるし, 山頂は剣山/三嶺が見渡せて山をはじめたばかりの人に良さそうだと思う. 丸笹山は苔がいいぞ pic....

<span title='2020-12-14 21:00:44 +0900 +0900'>12月 14, 2020</span>

gocv+v4l2を利用して任意の画像をwebcamとして流す

リモートワークとかするときにzoomとかslackとかGoogle Meetとかでビデオ会議をするんですけど任意の画像をカメラ画像として差し込めると楽しいと思わないですか? LinuxだとCanonとかの一眼レフとかをWebカメラとして認識させるのにv4l2を利用してやる方法が有るんですけど, v4l2を利用することで任意の画像をWebカメラの画像として配信することができます. ざっくり言うと 標準出力に1フレームの情報としてjpegを吐き出す ffmpegでv4l2の仮想デバイスに吐き出す 簡単ですね. sample.jpegというダミー画像を出力することを考えましょう. まずはじめに仮想カメラを生成します. # /dev/video20 として仮想カメラを作る $ sudo modprobe v4l2loopback card_label="dummy_cam" video_nr=20 exclusive_caps=1 次にGoのプログラムを書く. とりあえず main.go とかで用意する. package main import ( "bytes" "image" "image/color" "image/jpeg" "os" ) func main() { of, err := os.Open("sample.jpeg") if err != nil { panic(err) } jpg, err := jpeg.Decode(of) if err != nil { panic(err) } b := jpg.Bounds() // jpegをYUV420pに変換する converted := image.NewYCbCr(b, image.YCbCrSubsampleRatio420) for row := 0; row < b....

<span title='2020-12-02 22:22:52 +0900 +0900'>12月 2, 2020</span>

Amazon ECS FargateでS3から環境変数読み込むときの注意点

S3に保存するときのファイルの拡張子は .env であること .env 以外でやろうとするとTaskDefinitionの作成時に An invalid environment file extension was used. Specify a valid .env file and try again. というエラーを見ることになる プラットフォームバージョンは 1.4.0 以上であること AWSのECS FargateでプラットフォームバージョンをLATESTにしたときの挙動がLATESTぽくない気がする S3から環境変数を読み込む機能を利用できるのが1.4.0からなんだけどLATESTだと使えなくて明示的に1.4.0にすると使えたからLATESTにしたときに古いバージョンが利用されているのではないか? — 煩悩 (@ast839) November 5, 2020 これは注意点と言うよりもおかしな挙動をしてるんじゃないかってことなんだけど. 公式のマニュアルには When specifying a platform version, you can use either a specific version number, for example 1.4.0, or LATEST (which uses the 1.4.0 platform version). と書いてあるので LATEST でも大丈夫なはずなんだけど実際にやってみたら One or more of the requested capabilities are not supported....

<span title='2020-11-06 07:49:35 +0900 +0900'>11月 6, 2020</span>

石鎚山に紅葉を見に行ってきた

twitterで石鎚山の紅葉がいい感じだっていう情報を仕入れたので昨日行ってきました. まぁ本当は三嶺から天狗塚へ行ってテント泊しながら星空の写真を撮影しようと思っていたのですが残念ながら二日目の天気がダメそうだったので急遽予定を変更したのです. この間手に入れたEOS R5をもって撮影してきました. 紅葉の感じとしては山頂の方は紅葉が終わりつつあり下の方に移動してました. ロープーウェーの駅よりちょっと上あたりが見頃という感じでしたね. EOS R5をまる一日手持ちで歩いてましたがやっぱり軽いっていいですね. ザックから出し入れせずに撮影できるのでどんどん撮影することができました. 6時間弱電源をオンオフしながら歩いて50%くらいバッテリー消費するくらいだったのでテント泊縦走とかならバッテリー予備持ってると安心かもしれませんね.

<span title='2020-10-17 18:55:23 +0900 +0900'>10月 17, 2020</span>

EOS R5(EOS R6)のマルチコントローラーでフォーカス位置を動かす

マルチコントローラー(スティックみたいなやつ?)でフォーカス位置のカーソルを動かしたかったのですがやり方がわかったので書いておきます. メニューを開いてボタンのカスタマイズに行きます. ボタンのカスタマイズ 一番下のマルチコントローラーの項目に移動する. マルチコントローラーがoffになっている OFFになっているので有効化します. マルチコントローラーを有効化したところ するとファインダーを覗いたときにマルチコントローラーでフォーカス位置のカーソルを移動できるようになります. AFのタッチ&ドラッグAFも設定してるんですけど重いレンズ付けたとき個人的にはマルチコントローラーで操作するほうがやりやすいなって感じでした. 追記 EOS R6でマルチコントローラーを使って動かす設定もほとんど同じです. EOS R6のマルチコントローラー設定メニュー ボタンカスタマイズ

<span title='2020-10-17 18:42:44 +0900 +0900'>10月 17, 2020</span>

EOS R5で星景写真撮影をやってみた

初めてのRFレンズにRF 50mm F1.2 L USMを購入した. レンズ自体は950gほどあり軽いとは言えないかもしれないが, EOS R5が軽いのでそこまで重くは感じない. ちょうど夜晴れてた日があったのでベランダから星景写真を撮影してみた. EOS R6より高感度に弱いみたいな話あるけどEOS 7D使ってた私からすると十分高感度強いって感じる. 10年分の時間の流れを感じることができた. そのうち山に持っていって撮影してみたいと思う.

<span title='2020-10-15 19:49:19 +0900 +0900'>10月 15, 2020</span>

リモート時代のstaging環境について考えたい

コロナ渦によってリモートワークになった人々が増えたと思うんだけどstaging環境どういうふうに構築してるんだろう. どういうふうにっていうのはアクセス制限とかの話なんだけど, オフィス出社だったらオフィスのIPだけ許可すれば良かったけどリモートになると開発者の家のIP全部許可するのは現実的じゃないよねって話についてね. とりあえず今私が考えてるのはこのへん. おとなしくVPNを利用する. gsuiteを利用してoauth2認可できるようにする. k8s化してポートフォワーディングさせる AWSに乗っかってるのでssmでポートフォワーディングする 今のところは 2, 4かなって感じなんだけど2だとapiみたいなのにcurlするときに少しだけめんどくさいかなって思って4をやってみようかって思っている. ssmのポートフォワーディングってfargateにつなぎに行けるんだっけ?

<span title='2020-10-15 11:26:58 +0900 +0900'>10月 15, 2020</span>

カメラを新しくした

CanonのEOS 7Dをもともと使ってたんですけどミラーレス一眼にも興味があったんでEOS R5を購入しました。 届いて驚いたのはまず軽さで, ミラーレス一眼に戻れないかもしれないなって感じです。 一緒にEF-EOS Rコントロールリングマウントアダプターも注文しているのですが軒並み品薄になっているので撮影はしばらくお預け状態になってます。 サードパーティ製のアダプターを購入するか悩んでます。

<span title='2020-10-04 17:12:57 +0900 +0900'>10月 4, 2020</span>