2020-01-01から1年間の記事一覧

2020 ふりかえり

今年は4月から完全テレワークになって外出が減り、外での飲食もなくなり、生活が大きく変わりました。 Job クラウドネイティブなプロダクト開発に参加して丸2年が過ぎました。SRE チームとして活動しています。環境構築を自動化したり、可用性やセキュリティ…

Scrapbox プロジェクトのグラフ構造可視化 - その後

Scrapbox のページ間リンクを可視化するやつです。 Graphviz バージョン blog.kondoumh.com D3.js バージョン blog.kondoumh.com D3.js バージョンを半年ぶりにちょっと触りました。と言っても Visualization の方式を変えたとかではなく、ノードをフィルタ…

GitHub Actions の Composite run steps action を使った Action を作る

CI

この夏に登場してたのを見逃してました。 github.blog 以前は GitHub Actions のワークフローで再利用できる Action は Docker Container Action と JavaScript Action でした。 blog.kondoumh.com Docker Container Action は手軽に作れますが、コンテナで…

Netlify Functions を PWA のバックエンドで使う

Netlify は静的サイトをホスティングするのに便利です。 blog.kondoumh.com JSON データを置いてちょっとしたデータソース的にも使えます。 blog.kondoumh.com しかし、JSON を静的に配置できるだけだと上の記事のように更新のためのパイプラインを実装する…

macOS Big Sur にアップデート

Mac

Big Sur がリリースされてから10日。2013 - 2014 の 13インチ MacBook Pro では起動しなくなる問題がある模様です。 support.apple.com 一応2015年モデルだし他に大きな不具合もなさそうということで、アップデートすることにしました。 ダウンロードは20分…

Octokit で GitHub repo からファイルの中身を取得する

GitHub では Octokit という API クライアントが提供されています。 github.com GitHub の REST API は fetch でも叩けますが、octokit/rest が使いやすくラップしてくれてます。 リポジトリ内のファイルの中身は getContent で取得して Base64 デコードする…

Windows Terminal で SSH 接続先毎に Profile を作る

仕事用マシンがようやく Windows 10 1909 (November 2019 Update) に更新されました。 これまで SSH するとき Git Bash や Cygwin を mintty で使ってました。タブ機能がないので接続先毎にウィンドウが散らばりますし、 コマンド実行時に横幅が足りなくて表…

Kubernetes ネイティブなカオスエンジニアリングツール Chaos Mesh を使ってみる

Netflix が提唱した耐障害テスト技法 Chaos Engineering。実行環境に実際に障害を発生させてアプリケーションの復旧をテストする方法です。 Chaos Mesh は Kubernetes クラスターで稼働するアプリケーションをターゲットに Chaos Engineering テストを実行で…

リモートワーク時代のスマホ活用 - Pixel + ThinkPad TrackPoint Keyboard

リモートワークになって、Pixel 3 XL の稼働率が如実に下がりました。外出しない日はほぼ電話を受けるだけなので、バッテリーもあまり減りません。 ところで、数ヶ月前に買った ThinkPad TrackPoint Keyboard 2 blog.kondoumh.com 最初は ThinkPad ファンと…

野良 Scrapbox アプリ - プロジェクトを選択してページ一覧を開く UI

野良 Scrapbox アプリのページ一覧は Scrapbox のプロジェクトページよりも素早く開いて見通しがいいのですが、開くには対象のプロジェクトのページを開いておく必要がありました。なので、まずプロジェクトのホームかプロジェクト内の任意のページを開いて…

GitHub CLI 1.0 がリリースされたので使ってみる

GitHub の CLI 1.0 がリリースされました。 github.blog macOS だと brew でインストールできます。 % brew install gh Updating Homebrew... ==> Auto-updated Homebrew! ==> Downloading https://homebrew.bintray.com/bottles/gh-1.0.0.catalina.bottle.t…

helmfile がステキになってた

helmfile は 複数の Helm Chart をまとめて Kubernetes cluster にデプロイするツールです。 github.com Helm のラッパーとなっており、複数の Chart から構成されるアプリを効率よくデプロイ、更新できます。Helm Chart のインストール順というか依存関係の…

GitHub Actions が手動実行に対応してた

CI

GitHub Actions にはずっと手動実行が提供されていなかったので repository_dispatch トリガーを使って GitHub API 経由で起動することでしのいでいました。この方法は Master ブランチにしか適用できないという制約がありました。 先月 workflow_dispatch …

Windows で VS Code Remote SSH を使う時のエラー対応

Windows 10 で VS Code の Remote SSH でリモートマシンへの接続が失敗すると Could not establish connection to "xx". というエラーダイアログが出ます。 エラーの要因はいろいろありますが、VS Code の出力に [09:22:02.936] > Bad owner or permissions …

iPad Pro 11 (2018) デビュー

去年奥さん用に買った iPad Pro 11 (2018)。最近は全く使ってないとのことでしばらく借りることにしました*1。 自分の Apple ID でログインして Face ID を登録。 画面オンにしたらすでに認証完了してます。眼鏡アリでもナシでも認証でき、部屋の照明点いて…

GitHub Actions のセルフホストランナーがサービスとして登録可能になってた

CI

GitHub Acitons では Self-hosted runner を利用して、独自のビルド環境でワークフローを実行することができます。 docs.github.com 企業内のプロキシサーバ配下のマシンでも利用できるので、 CI のたびにソフトウェアのインストールをしなくてもよい*1 社外…

VS Code で Jupyter Notebook を使う

VS Code + Microsoft の Python 拡張だけで Jupyter Notebook が使えるのを知りました。 code.visualstudio.com コマンドパレットから Notebook を新規作成できます。 あらかじめ Anaconda などで環境を構築するようガイドされています。とりあえず venv で…

Work from Home 環境 (PC リニューアルしたい)

テレワークではリモートデスクトップで客先マシンに接続して作業をしていて、自宅マシンにはさほど性能が要求されてませんでした。最近社内アプリ開発に関与するようになり Kubernetes ベースの開発環境を構築したら MacBook Pro 13 Early 2015 のスペック不…

GitBook から HonKit に移行する

iEdit のユーザーズガイド iedit.kondoumh.com GitBook で作ってました。 blog.kondoumh.com 今年の2月に動作環境の文言を修正しようとして久々に更新した時 gitbook-cli が Deplicated になっているのに気付きました。 GitBook の CLI は Deplicated になっ…

Blazor WebAssembly を触る

先月 Blazor WebAssembly 3.2.0 がリリースされ、.NET Core 3.1.300 以降にアップデートすることで使用できるようになりました。 devblogs.microsoft.com すでに Infragistics など著名な UI コンポーネントベンダーが対応しておりプロダクションレディな感…

Scrapbox ページ一覧と Graph 可視化のプロト PWA 作成

以前 Scrapbox から API でデータを取得して、ページ間リンクを可視化する (ための Graphviz dot ファイルを吐く) CLI を作成しました。 blog.kondoumh.com その後 Graphviz よりインタラクティブな可視化ができる技術として D3.js の force simulation を使…

ThinkPad TrackPoint Keyboard II 購入

今年初めに ThinkPad TrackPoint Keyboard のワイヤレス専用版がリニューアルされ Bluetooth に加えてワイヤレス USB 接続をサポートしました。そして先月 JP 版が発売になりました。 www.lenovo.com 昔 ThinkPad やスペースセーバーキーボードのユーザだっ…

Puppeteer Recorder でテスト用スクリプトを生成する

Puppeteer を使うと Web 画面の E2E テストが手軽に書けます。 github.com ただ最近の Web UI は DOM 要素に ID が振られていないことが多く、Selector 書くのに Chrome DevTools などで要素をインスペクトしてパスをコードに貼り付けるという作業が多くなり…

Windows Terminal 正式リリース版をチェック

Windows Terminal Preview 版を触ったのは1年ぐらい前。 blog.kondoumh.com 最近正式リリースされたらしいと聞いていたので、会社の Let's note の Windows Update をかけてからバージョンを確認したところ、確かに 1.0 に到達していました。 起動時にエラー…

Cloud Native Buildpacks を GitHub Actions で使うための Action 作ってます

Buildpacks ステキでした。 blog.kondoumh.com これを社内プロジェクトの CI で使うために GitHub Actions の Action にすることを試みました*1。 最初 Docker Action でサクッと作れるだろうとたかを括っていたのですが、よく考えるとコンテナイメージを Do…

Dockerfile 記述不要の Cloud Native Buildpacks を使ってみる

アプリがコンテナイメージで配布されていると利用者側は導入が楽で便利です。しかし Dockerfile を記述するのはそれなりに経験が必要で、試行錯誤してるうちかなりの時間が溶けてることもままあります。Dockerfile 書いた後もセキュリティスキャンとか、ベー…

setup-terraform Action で Terraform 実行を簡潔に

HashiCorp から GitHub Actions の setup-terraform Action が登場しました。 github.com 公式ドキュメントはこちら www.terraform.io 従来は terraform-github-actions が提供されていましたが、こちらは今凍結されています。 github.com Terraform は init…

ノート・メモ環境 2020 (だいたい Scrapbox)

ノート・メモやタスク管理については過去にもちょいちょい書いてました。 blog.kondoumh.com blog.kondoumh.com blog.kondoumh.com 最近はやはり Scrapbox 中心になっています。 書きはじめ 作業計画や実装方式を検討する時などまとまったテキストを書く時、…

Netlify への JSON publish を GitHub Actions に移行

以前 Tumblr の JSON データを Netlify で定期的に配信するようにしました。 blog.kondoumh.com その時は GCP の Cloud Scheduler を使って定期的に GitHub repo の Master branch を取得しデプロイ時に Netlify build を使って JSON ファイルを生成していま…

Scrapbox のページを Markdown に変換する CLI

以前、野良 Scrapbox アプリでページ本文を Markdown にしてクリップボードにコピーする機能を実装しました。 blog.kondoumh.com アプリを使っていなくて変換だけを使いたい場合もあるかもということで、CLI を作りました。Scrapbox API でページの JSON を…