ようへいの日々精進XP

よかろうもん

メモ

冬休みの自由研究 (5) 〜 CircleCI プロジェクトを操作するコマンドラインツールを作ってみた 〜

tl;dr 作ったもの 以上 tl;dr CircleCI プロジェクトの環境変数を毎回 Web UI でいじるのが辛くなってきていましたが, 環境変数自体を API で操作出来ることを知ったのでコマンドラインツールを Go で作ってみました. 作ったもの github.com 出来ることは基…

冬休みの自由研究 (4) 〜 CircleCI の Project Environment Variables を REST API で操作する 〜

tl;dr やりたいこと こんな感じで なんのことない API Reference Personal API Token 実際に操作 以上 tl;dr CircleCI のプロジェクトで定義出来る環境変数 (以後, Project Environment Variables) を REST API で操作出来ないかなと思って調べていたら, シ…

実録にっぽん CircleCI ばなし 〜 Workflows のジョブ制御を完全に理解した (わけではない) 〜

tl;dr CircleCI の Workflows で, 世界中で多分自分だけがハマった (他の人はきっとハマることは無いはず) のでメモっておきます. そして, この記事は... YAMAP エンジニア Advent Calendar 2019 の 7 日目の記事になる予定です. qiita.com そして, CircleCI…

俺の AWS CDK コードを恥ずかしげもなく晒す (2) 〜 よくありそうな S3 + CloudFront + Route53 構成 (2) 〜

tl;dr 俺の AWS CDK コードを恥ずかしげもなく晒すシリーズ第一弾の続き. そして, この記事は YAMAP エンジニア Advent Calendar 2019 の五日目の記事になる予定です. qiita.com 実現したいこと 昨日, 恥ずかしげもなく公開したコードを少し進化させてみまし…

俺の AWS CDK コードを恥ずかしげもなく晒す 〜 よくありそうな S3 + CloudFront + Route53 構成 〜

tl;dr 俺の AWS CDK コードを恥ずかしげもなく晒すシリーズ第一弾. もしかしたら, 第二弾は無いかもしれませんがご容赦ください. そして, この記事は YAMAP エンジニア Advent Calendar 2019 の四日目の記事になる予定です. qiita.com 実現したいこと S3 + C…

WordPress 完全に理解した (1) 〜 定数 WP_HOME と WP_SITEURL について 〜

tl;dr WordPress を運用していて, 個人的な調べによると, 最もやらかすのは WordPress アドレスとサイトアドレスの設定をミスってしまい, せっかく頑張って構築した WordPress サイトにアクセス出来なることではないでしょうか. 多分にもれず, 私も何度とな…

CircleCI の setup_remote_docker を設定した時に留意すべきこと 〜 追記 〜

tl;dr 前のブログの続き. inokara.hateblo.jp 上の記事を書いている時にはてっきり setup_remote_docker を設定した時には Docker in Docker を実現していたのかと思っていたけど, なんだか setup_remote_docker という名前で Docker in Docker は違うよなー…

CircleCI の setup_remote_docker を設定した時に留意すべきこと

tl;dr 今更かもしれないけど, 実際に手を動かしてみて初めて遭遇したのでメモっておく. 何が起きたか github.com amiCtrl のインテグレーションテスト的なテストを docker-compose でやりたくて docker-compose.yml を書いた. もちろん, ローカルマシン (mac…

京都大学付属病院の医療事故報告書から学んだこと

tl;dr 朝, なにげなくインターネットを眺めていたら京都大学付属病院の医療事故報告書の URL が流れてきたので読んでみました. 自分自身, システム運用の携わっている身分であり, 報告書を書くことがたまにあるので, 医療事故の報告書ってどんな体裁なんだろ…

Docker Remote API に UNIX ドメインソケット経由でアクセスする

tl;dr ニッチかもしれないけど, ECS の Docker 用ストレージ容量監視を Docker Remote API を介して行えないか, そして, できれば UNIX ドメインソケット経由で API にアクセス出来ないかを調査しました. 今回は curl を使って UNIX ドメインソケットにアク…

ギョームにてすぐに日本時間が欲しい時に僕がやること

tl;dr 何やるか 同じようなことを python でも 以上 tl;dr AWS がメールで送ってくる EC2 等のメンテナンス通知. メンテナンスの日時が UTC で表記されているので, その時間を日本時間 (JST) で欲しい時に僕がやっていることをメモっておきます. 何やるか ま…

jekyll で作ったペライチページを S3 と CloudFront, ACM, Route53 でサクッと公開出来たのが心地よかったのでメモ

tl;dr jekyll 静的サイトを公開する為の準備 鉄板 ドメイン サーバー証明書 S3 + CloudFront デプロイ 以上 tl;dr oreno.tools というドメインを酔った勢いで取得して, いつかサイトを公開してみたいなと思っていたので, Jekyll という Ruby 製のサイトジェ…

infrataster-plugin-ftp を作ってリリースしました

tl;dr 詳細は 想定するユースケース 以上 tl;dr 前回, rspec-ftp を少し触ってみました. rspec に乗っかることで, FTP ユーザーの振る舞いをテスト出来るようにしてみたつもりです. inokara.hateblo.jp せっかくなので, infrataster のプラグインも作ってみ…

FTP ユーザーの振る舞いをテストをする rspec-ftp を試した + 抹茶を追加しました

tl;dr FTP ユーザーの振る舞いをテストする なぜ, FTP ユーザーの振る舞いをテストしたいのか サンプルはこちらから サンプル実行 想定する FTP サーバー, FTP ユーザー 環境構築 ユーザー名, パスワードを secret.yml に定義する テストを実行する...その前…

yum パッケージの changelog を確認する yum-plugin-changelog が便利だった

tl;dr changelog を確認する方法 rpm コマンドを使う yum-plugin-changelog を使う 以上 tl;dr CentOS や Amazon Linux のパッケージ管理ツールとして空気のように当たり前にそこにある yum コマンドにプラグインが存在していること自体は存じ上げておりまし…

独り Terraform 研究所 (2) 〜 簡単な HTTP Backend を実装して Terraform の挙動を確認する 〜

どうも Backends HTTP Backend の実装 仕様 最初の実装 Web アプリケーションのコード Terraform の設定 Terraform の操作 plan apply destroy 永続化層の追加 Redis を利用する 改めて, Terraform の操作 apply state list, state show destroy ロックの実…

独り Terraform 研究所 (1) 〜 Backend についてドキュメントを読んだり, チュートリアルしたり 〜

どうも Backends ドキュメント 状態の管理 メリット 設定諸々 Backend Types 二種類の Backend Type Enhanced Backends Standard Backends State Locking ドキュメント State Locking とは 例えば... Docker Providor + Backend Type S3 せっかくなので 簡単…

Datadog APM について調べていたら, OpenTracing に辿り着いた (1)

tl;dr OpenTracing について OpenTracing とは そもそも分散トレーシングとは Datadog x OpenTraning OpenTracing の用語 Jaeger で体験する OpenTracing Jaeger Jaeger の起動 Rack アプリケーション (Sinatra) を利用してトレース情報を送信する 利用する…

Elasticsearch でフィールド同士の差分で検索したい (例えば, 開始から終了の経過時間で検索したいとか)

tl;dr 分かりづらいタイトルですいませぬ. 以下のようなデータを Elasticsearch に突っ込んでいたとして, start と end の差分 (経過時間) を算出して, その結果から N 秒以上とか, N 秒以上, N 秒以下を検索条件として利用する方法を検討したのでメモってお…

AWS Lambda で Node.js v4.3 がサポート終了になるので, v8.10 にアップグレードする為にテストを書いて検証してみた

tl;dr さて 本編 自動的に生成された Lambda ファンクション テストの観点 テストの準備 テスト用データの用意 テストコード テスト実行 以上 tl;dr 5 月の初めに AWS Lambda において, ランタイムとして Node.js v4.3 のサポートが終了になる旨のアナウンス…

CloudFormation で作った S3 バケットにおいて, オブジェクトが入っている状態でスタックを削除しようとすると軒並みエラーになるので, その対処方法について検討した #ただそれだけ

どうも どういうことなの? じゃあ, どうすれば良いのか DeletionPolicy で Retain を設定して, スタックの削除とは切り離す カスタムリソースを利用して, Lambda ファンクションでオブジェクトを削除してからバケットを削除する カスタムリソースについて …

Amazon Elasticsearch Service クラスタを作成するだけの CloudFormation テンプレートを作った #ただそれだけ

追記 (2018/06/09) 初めて VPC 内に Amazon Elasticsearch Service クラスタを作成する際, AWSServiceRoleForAmazonElasticsearchService という IAM ロールを作成する必要があります. この IAM ロールを CloudFormation で作成する方法を見つけることが出来…

リトライ処理が適切に行われるかをテストする方法を考えた Python 編

tl;dr retry モジュール retry モジュール retry モジュールのシンプルな使い方 ということで, そのリトライ, ちゃんとリトライしてますか? まずは... リトライ で, リトライされていることをテストする 以上 tl;dr Python の retry モジュール超便利 で, …

放送大学のレポートを LaTeX で作成して提出したのでメモ ~ Cloud LaTeX でしたためた 20 年越しの思い ~

[:toc] tl;dr 一応, 放送大学の学生をやっているので, この時期になると通信指導と呼ばれるレポートを提出ことが求められている. このレポートを提出しなければ, そもそも単位認定試験を受ける権利が無くなってしまうので, この土日でなんとかレポートを書い…

直近で Python の unittest で試行錯誤していて得られた知見の幾つか (3)

環境 知見 (5) 例外発生をテストする 関数 テスト 知見 (6) ログ出力をテストする 関数 テスト testfixtures テストコード 以上 環境 以下のような環境でやってます. $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G19009 $ pyt…

Elasticsearch 6.x で join datatype と has_child, has_parent クエリを試した

tl;dr 参考 join datatype と has_child, has_parent クエリ join datatype has_child, has_parent クエリ has_child クエリ has_parent クエリ ということで, 俳句作品とその作者データを利用して join を体験する 俳句作品 Elasticsearch クエリ 検索 松尾…

Ruby の組み込みライブラリ (クラス) の「学習テスト」を書いて, 出来るだけ多くのメソッドと出会いたい (4) 〜 class_eval 定数参照が解らない ~

これは... class_eval 定数の参照について解らない 改めて class_eval は メソッドの定義方法によって変わる定数のスコープ 一応, テストも書く 以上 これは... いつまで続くかわからないシリーズである. inokara.hateblo.jp 今回はテストを書くかは置いとい…

Ruby の組み込みライブラリ (クラス) の「学習テスト」を書いて, 出来るだけ多くのメソッドと出会いたい (3)

これは... いつまで続くかわからないシリーズである. inokara.hateblo.jp ということで がちゃ 今日のメソッドガチャは以下の通り. $ bundle exec ruby gacha.rb クラス: String メソッド: casecmp? メソッド: to_i メソッド: succ この中から String#casecm…

Ruby の組み込みライブラリ (クラス) の「学習テスト」を書いて, 出来るだけ多くのメソッドと出会いたい (2)

これは... ということで がちゃ Enumerator#peek Enumerator#rewind Enumerator#each_with_index 以上 これは... いつまで続くかわからないシリーズである. inokara.hateblo.jp 学習テストの成果は以下のリポジトリで管理している. github.com ということで …

ゴールデンウィークスペシャル : 5 月病対策「ExcelできればElixirマスターできる」を ExUnit で写経する (2) #fukuokaex

tl;dr 写経 (「Excel の操作と同じ Elixir」の続き) 前回は マップ List.first() リストマップデータのフィルタ リストマップデータのソート リストマップデータの加工 おまけ 以上 tl;dr ゴールデンウィークが終わって, 早速, 5 月病になりそうなかっぱです…