bouzuya/borage を廃止 (archive) した。
borage は bouzuya/blog.bouzuya.net のデプロイに使っていたもの。 Amazon S3 にアップロードする。ローカルとリモートのそれぞれの hash をとって変更があればアップロードするようになっていた。
AWS CLI で置き換えた。 AWS CLI のインストールを除けば↓だけ。
aws s3 sync --size-only dist s3://blog.bouzuya.net/
--size-only
をつけないとタイムスタンプの違いでアップロードしてしまう。名前どおりサイズしか見ていないなら一文字だけの変更だとアップロードされなくなってしまう。あまりないと予想して妥協した。
borage の廃止は CoffeeScript & JavaScript リポジトリ廃止 (2019-01-07) の一貫。これで残るリポジトリはふたつ。
あとひといきだ。
いまのぼくの言語別リポジトリ数は↓のとおり。ぼくの持つフォークではなくアーカイブされていないリポジトリだ。
77,TypeScript 42,PureScript 24,Clojure 14,null 8,Ruby 6,Java 6,Haskell 5,VimL 5,CSS 3,Visual Basic 3,Rust 3,HTML 2,Shell 2,C# 1,Swift 1,JavaScript 1,CoffeeScript
来月以降に Clojure や Ruby のリポジトリを廃止するつもりでいる。
↓が↑を生成するシェルスクリプト。 curl と jq でがりがり。たぶん他の人でも動くと思う。
#!/bin/bash user="$1" # 'bouzuya' user_url="https://api.github.com/users/${user}" page_count_query='((.public_repos - 1) / 100 | floor) + 1' page_count=$(curl --silent "${user_url}" | jq "${page_count_query}") all_repos='' for i in $(seq 1 "${page_count}") do repos_url="https://api.github.com/users/${user}/repos" repos_query="type=owner&sort=full_name&direction=asc&per_page=100&page=${i}" repos=$(curl --silent "${repos_url}?${repos_query}") all_repos="${all_repos}${repos}" done echo "${all_repos}" | \ jq -s add - | \ jq '. | map(select(.fork == false)) | map(select(.archived == false)) | map({full_name,language}) | group_by(.language) | map({ language:(.[0].language), length:(. | length), repositories:map(.full_name) })' | \ jq -r '. | sort_by(.length) | reverse | .[] | (.length|tostring)+","+(.language|tostring)'