notebook

都内でWEB系エンジニアやってます。

GitLabのGraphQL APIにzxを使ってクエリを投げてみる

ドキュメント読めば一通りわかるが一応やったこととか残しておく 今回はGitLabのMergeRequestの情報をAPIで取得する 一定期間内で、特定のリポジトリのMergeRequestの内容で、MergeRequestにひもづくコミットのshaと日時も欲しかったのでREST APIではなくGra…

GitHub Actionsでactions/scriptを用いてイベントの種類によってmatrixの値を変える

以前matrixを動的に設定する記事(GitHubActionsでmatrixの値を動的に扱う - notebook)を書いたがそのときは固定値だったので、今回はイベント内容によってセットするmatrixを変えてみる actions/scriptを使うとJavaScriptを書けるのでShellScriptやActionsの…

Ansibleで各タスクの実行時間を計測する

DotfilesのAnsibleで結構時間がかかっていたのでどこで時間がかかっているのか知りたくなった 執筆時のAnsibleバージョン $ ansible --version ansible [core 2.12.2] config file = /usr/local/src/ansible/ansible.cfg ansible python module location = /…

じぶん Release Notes (ver 0.34.8)

swfz (ver 0.34.8) がリリースされました、更新内容は次のとおりです 技術 やったこと GoogleSlideにコメント流すツールのchrome拡張化 https://swfz.hatenablog.com/entry/2021/08/05/091154 で扱った内容をChrome拡張にした 拡張では流れるコメントの色、…

Chrome拡張開発時のメモ

Chrome拡張を2つ作ったのでそのときに調べたこととか理解したことのメモ(manifestはv3) 作ったChrome拡張と関連記事 両方Chrome Web Storeには公開してないがリポジトリは作った 1つ目は下記記事の内容をChrome拡張にしたもの 記事 CSVダウンロードがない画…

改行含むデータがあるCSVをBigQueryにloadする

今までCSVをBigQueryにloadすることがそんなになかったので(だいたいJSONでloadしてた)改行が含まれているCSVをloadするのにオプションが必要なのを知らなかった 今回は調べる過程をせっかくなので残しておく load時のエラー 何も知らずにloadしたときのエラ…

GitHub Actionsで使用するRubyやNodeのバージョンをRenovateで更新可能にする

GitHub Actionsのruby/setup-rubyやactions/setup-nodeなどで使う言語のバージョン指定をRenovateで随時更新できるようにする 自分はRuby, Nodeを使うことが多いので掲題の2つしか試していないが他の言語の~~envでもRenovateが対応していれば流用可能 node-v…

じぶん Release Notes (ver 0.34.7)

swfz (ver 0.34.7) がリリースされました、更新内容は次のとおりです 技術 やったこと GoogleSlideでユーザーツールを使ってコメントをスライド中に流すブックマークレット 動かなくなっていたので修正した bookmarklet GitHub Actions workflow_runイベント…

Cloud Workflowsのコールロギング機能を試してみる

先日GAになったWorkflowsのロギング機能を試してみた Release notes | Workflows | Google Cloud Send logs to Cloud Logging | Workflows | Google Cloud 実行時にオプションを付けることでステップ名、関数名、関数引数、呼び出しレスポンスなどをCloud Lo…

GitHub Actionsのworkflow_runトリガーで、直前に実行されたワークフローの情報を取得する

GitHub Actionsで自作アクションや他のアクションでコードを書く場合(TypeScript) @actions/githubのcontextに色々入っているのでそれを、参照して色々行うことが多いかと思う 単純にyamlファイルで定義する場合はイベントの情報は${{ github.event }}で参照…

aws-sdkのErrors::MalformedXML対応例

Rubyのaws-sdk-s3を使っていてマルチパートアップロードをしようと試していたら 完了(Complete)リクエストで次のようなエラーに遭遇したのでメモを残しておく Aws::S3::Errors::MalformedXML: The XML you provided was not well-formed or did not validate…

S3のマルチパートアップロードをpresignedUrlを用いてフロントエンドから行う

動画などの大容量のファイルをS3にアップロードする機能の話 単純にPUTオペレーションでアップロードする場合、1度のPUTオペレーションで最大5GBのオブジェクトをアップロードできる オブジェクトのアップロード - Amazon Simple Storage Service docs.aws.a…

じぶん Release Notes (ver 0.34.6)

swfz (ver 0.34.6) がリリースされました、更新内容は次のとおりです 技術 やったこと リリースノート自動化 PV、購読者数の現状数値も追加 毎月やっているSearchConsole被リンク集計の半自動化 S3のマルチパートアップロードとPresignedURLを使ってフロント…

jqでファイルに書き出したリストを用いて比較する

調査などである値のリスト出力して他のリストと付け合わて比較したいみたいな場合のメモ書き users.json [ { "name": "foo1", "description": "bbbbb" }, { "name": "foo2", "description": "aaaaa" }, { "name": "bar1", "description": "ccccc" }, { "name…

SlackワークフローとSpreadsheetで簡単ToDoリマインダー

Slackのワークフローを使って日によって都度内容の違うリマインドを行う SlackのワークフロービルダーでSpreadsheet連携(Select Spreadsheet Row)を使うと特定の行を取り出し後続のステップに変数として含めることができる さらに、スプレッドシートに工夫…

Spreadsheetの特定カラムの値でグループ化して結合する

よくあるかはわからないが、タスクリストをスプレッドシートに落とし込んで日毎にまとめてフォーマットする、みたいなやつ すぐ忘れるだろうなと思ったので残しておく 画像のようにB列の日付ごとにD列の情報をグループ化してI列に表示している いきなり式だ…

じぶん Release Notes (ver 0.34.5)

swfz (ver 0.34.5) がリリースされました、更新内容は次のとおりです 技術 やったこと じぶんリリースノートの定形コンテンツの自動化 GitHub Actions BigQuery JavaScript ZenHubをGitHubProjectsへ移行 BigQuery(native json型でやったみた) dotfilesのメ…

ASTを経由してMarkdownのparse、compileを行う

毎週、毎月ある程度テンプレート化された記事を公開する場合 毎週、毎月の変動するデータをもとに自動でテンプレートに当て込みMarkdownを生成したい この処理をある程度自動で行えたら良いなと思い調べてやってみた 完結にするためテンプレートは下記のよう…

ZenHubでの個人タスク管理をGitHubProjects(beta)へ移行した

ZenHubで個人タスクを管理していたがGitHubProjects(beta)が良さそうだったので移行することにした 移行に際して、一部過去の情報も含めて移行したいのでそこまでやったので作業ログ的に残しておく ZenHubをフル活用できているわけでもなかったので割とすん…

NotionのAPIを使ってTimeTrack機能を付けてみる

最近FLEXISPOTの電動昇降机を買ったので会議のときとか気分を変えたいときなど立ち姿勢で仕事することが増えた そして、1日どれくらい立ち姿勢で仕事していたか測りたくなってきた ちょうどNotionを使って習慣化や目標を管理していたのでどうせならNotionの…

じぶん Release Notes (ver 0.34.4)

swfz (ver 0.34.4) がリリースされました、更新内容は次のとおりです 技術 やったこと GitHub ProjectsのデータをBigQueryに取り込んで消化状況を可視化 BigQuery dataform GraphQL Notion JavaScript SDKを使って色々自動化 習慣化管理のためのデータベース…

jqでjsonからCSVを生成する

ちょっとした集計などで使うデータの形式はjsonが多いが、たまにツール側の事情でCSVが欲しくなるときもある 具体的に言うと、データポータルにアップロードして単発で使いたい場合はCSVしかサポートされていないのでCSVが必要だったりする さくっと変換でき…

Natural Lauguage APIを使って過去1年分のリリースノートから感情の上下を測ってみる

2020年からじぶんリリースノート(毎月の振り返り的な記事)を書いていた 2021-12 2021-11 2021-10 ここ1年くらいは書く項目が「仕事」「生活」など固定化されてきていたためこれらの文章を使って感情分析にかけたら年間を通してどんな感情だったのかという…

じぶん Release Notes (ver 0.34.3)

swfz (ver 0.34.3) がリリースされました、更新内容は次のとおりです 技術 やったこと Workflows BigQuery プライベートでやっているデータ集めのプロジェクトでWorkflowのアップデートに追従して更新したりSQLのメンテナンスしたり Natural Language(GCP) …

2021年ブログの振り返り

2021年も終わったのでデータを色々出してみてブログの振り返りをする 文字数、記事数 2021年は52記事を書いた 文字数は10万文字ちょい 数字で見ると「結構書いたなー」って感想を抱いた ただ、ほぼ週1ペースを保つことができたもののそれ以上のペースは出せ…

2021年の振り返り

全体的な総括のための振り返り 2020年と同じような形で思い付くままに書いていく 2020年の振り返り - notebook 生活 引っ越したばかりだったので習慣やルーティーンが変わった 新たに模索する段階だった気がするがやろうとしてたことはほとんど失敗した気も…

BigQueryの名前つきウィンドウでウィンドウ指定のあるクエリを読みやすくする

Window Frame句 SQL中にWINDOW ~~~と書くことでPARTITION BY ~~~やORDER BY ~~~などの指定に名前をつけることができOVER句で参照できる 分析関数のコンセプト | BigQuery | Google Cloud cloud.google.com 今までこの存在を知らず1つずつウィンドウ指定を書…

Reactでタイマーを作ってPicture in Pictureで表示する

この記事は Reactのカレンダー | Advent Calendar 2021 - Qiita 9日目の記事です 会議やワークなどでファシリテーションする際、「ちょっと時間取るのでこの作業しましょう」や「1人○分で意見を言いましょう」といったことが良くある Miroなどはタイマー機能…

GCPのWorkflowsで日付をフォーマットした値を生成する

この記事はGoogle Cloud Platform Advent Calendar 2021のカレンダー | Advent Calendar 2021 - Qiita6日目の記事です qiita.com GCPのWorkflowsでtime.format, time.parseが使えるようになった 今まではWorkflowsから何かAPIへ対してリクエストを送る際に日…

Google Apps ScriptでDataportalのレポートを毎日Slackに配信する

この記事は Google Apps Script Advent Calendar 2021のカレンダー | Advent Calendar 2021 - Qiita 2日目の記事です qiita.com Dataportalのレポートをメール配信する機能が結構良かったのでGASと合わせてSlackに投稿する というのをやってみた 流れは次の…