何故作った

何に使うものなのか分からない方がほとんどだと思いますが、npmに月額7$払ってプライベートパッケージとして自分用にカスタマイズしたものを作れるのが前提みたいな話だったりします。誰にでも見られてもいいならいいやつならパブリックでもいいと思いますが!

作った理由は、

  1. .dotfilesなんかに書くのはちょっと…

  2. トークンなど諸々引っ張ってこれるものが欲しかった

  3. パブリックじゃない所で というのが主な理由です。

まず、こんなJSONが配置されているとします。

{
  "foo": {
    "token": "..."
  }
}

その時にこんなコマンドを叩くと、そのパスの値が取れるというだけです。ちなみにパスが途中だった場合はhelpが表示されます。

locker-keys foo token ...

自分用ツールを作る

毎回JSONを作るのは面倒くさいので、自分用の読み込まれている状態のコマンドを作ります。まずlocker-keysをインストールします。

yarn add locker-files

コマンド実行時に実行されるファイルcli.jsはこんな感じにします。

#!/usr/bin/env node
const lockerKeys = require('locker-keys').default;

(async () => {
  await lockerKeys.process(__dirname);
})()
  .catch(err => {
    console.error(err);
  })

あとは、同じディレクトリにlocker.jsonというファイルを置くだけです!
あ、package.json"bin": {"コマンドになる名前": "cli.js"}はお忘れなく。

プライベート公開後それをインストールして、コマンドになる名前 <prop> <prop>で想定通りの値が表示されてば完了です!

JavaScript で飯食べたい歴約 5 年、 純( nju33 ) によるノートサイトです。

このサイトではドリンク代や奨学金返済の為、広告などを貼らせて頂いてますがご了承ください。

Change Log