動かざることバグの如し

近づきたいよ 君の理想に

2022-09-01から1ヶ月間の記事一覧

KubernetesでCronjobを手動で即時実行する

環境 Kubernetes 1.24 やりたいこと Kubernetes上に作成したCronjobが正常に動くか手動でテストしたい やり方 例えば元のCronjobがlog_rotateで、即時実行の名前をonetimeとすると kubectl create job onetime --from=cronjob/log_rotate で実行される。 実…

GitHub Actionsでgit差分がある時のみコミットする方法

環境 actions/checkout@v3 やりたいこと GitHub ActionsでCI実行後にgit差分があればコミット&pushする。 なければそのまま終了する どういうとき使うのかって言うと自動定期アップデートとか コード - name: Commit updated files run: | git config core.f…

InferGetStaticPropsTypeを使ってnextjsをよりラクラクに

環境 nextjs 12.3 InferGetStaticPropsTypeってなに getStaticPropsの返却値をもとにNextPageに渡されるPropsの型を推論してくれる機能 よくあるgetStaticPropsの例 例えばこんな感じにあったとして import type { NextPage } from 'next'; import { GetStat…

TypeScriptで配列をグルーピングするgroupBy関数

やりたいこと JSONとかのJavaScriptオブジェクトの配列があったとき、特定のキーとかでグルーピングしたい 例えば const list = [ { "name": "taro", "role": "admin" }, { "name": "jiro", "role": "staff" }, { "name": "hanako", "role": "admin" } ]; っ…

Javascriptでスネークケースをキャメルケース等に相互変換できるライブラリ「change-case」

やりたいこと 「test string」を「testString」に変換したり、「test_string」に変換したりと色々スネークケースやらキャメルケースを相互変換したい。 色々調べた結果、jsの場合はblakeembrey/change-caseのライブラリがよさげだった インストール npm inst…

Typescript PlaywrightでinnerTextを取得する

環境 Playwright 1.25 やりたいこと ページにある要素のinnerTextを取得したい コード ポイントは el: HTMLElement していること。これがないと型がanyになってしまいエラーになる。 import { chromium } from 'playwright'; (async () => { const browser =…

ReactでContext-apiを使うサンプルコード

環境 React v18 問題点 ReactにはProps機能があり、それを使うとコンポーネント間でデータのやり取りが出来る。 が孫とかまでやりとりしようとすると一気に面倒になる import type { NextPage } from 'next'; import { useState } from 'react'; const Home:…

KubernetesでSecretsをファイルから作成する方法

環境 Kubernetes 1.24 シークレットが当たり前過ぎて全然記事がなかったのでまとめ 追加方法 まずは秘匿情報が書かれたキーとバリューの組み合わせが書かれたファイルを用意する NAME=taro PASSWORD=12345 kubectl create secret generic 構文でシークレット…