ファブリックのJavascriptベースの代替


8

似DevOpsチームのツールがあります生地のスクリプト言語としてJavaScriptを使用しては?特にリモート実行側に興味があります。

私が見つけたほとんどのツールは、python(例:fabric)またはRuby(例:Capistrano、Chef)に依存しています。ただし、私のチームでは、これらの言語を他の目的で使用することはありません。これらの言語はすばらしいかもしれませんが、Web開発業界ではJavaScriptほど普遍的ではありません。

私が最小限のpythonスキルを持っていることを除いて、私が欲しいものに理想的であるので、ファブリックについて言及します(悲しいことに)。


2
何の生地を指していますか?リンクを取得できますか?これはMySQLファブリックですか?「欲しいもの」に理想的ですが、何が欲しいですか?
James Shewey

2
@JamesShewey投稿を更新しました。fabfile.org。Thx
ヘンリー

回答:


1

Shipitはあなたが探しているものです。

Shipitは自動化エンジンであり、node / iojs用に作成されたデプロイメントツールです。

Shipitは、ルビーを知らない人、またはルビーで問題が発生した人のためのカピストラーノ代替品として構築されました。JavaScriptでタスクを記述してノードエコシステムを楽しみたい場合は、Shipitも役立ちます。

Shipitで何でも自動化できますが、ほとんどの場合、Shipitデプロイタスクを使用してプロジェクトをデプロイします。


6

ファブリック(およびCapistrano、おそらく出会った無名のRubyツール)は、リモートホストでタスクを簡単に実行するための追加機能を備えたタスクランナーであるという点で、少し変わっています。まったく同じことをする他の一般的なツールは知りませんが、ニーズによっては、他にもいくつかのオプションが機能する場合があります。

GruntGulpは、Javascriptエコシステムで最も重要なタスクランナーです。ソフトウェアを展開するために特別に設計されていないが、それらの両方は、あなたがこれを行うできるシステムをプラグインベースのしている、とあなたは使っている人の記事をたくさん見つけることができますいずれか 1を、そうすることを。たとえば、このチュートリアルでプラグインを使用しgrunt-ssh sshをgruntと統合しますが、これはに依存していgulp-rsyncます。

タスクランナーを使用してコードを展開することは、opsの帽子をかぶっている開発者が好むアプローチです。運用エンジニアに尋ねると、この動作を構成ツールにハッキングすることを提案する可能性が高くなります。これは多くの形をとることができます(たとえば、アプリをrpmまたはdebにパッケージ化してから、他のソフトウェアと同様にインストールします)。しかし、私が最も簡単で最も直接的な方法だと思うことに焦点を当てます。

Ansibleは表面的には構成管理ツールですが、「サーバーのセット全体でアクションのセットを実行する」と私が定義するタスクオーケストレーションは本当に優れています公式ドキュメントは開始するのに適した場所ですが、これがどのように見えるかを理解するために、次のようなプレイブック(一連のタスクを定義するYAMLファイル)があるとします。

- hosts: webservers
  tasks:
    - name: update code checkout
      git:
        repo: ssh://git@github.com/mylogin/hello.git
        dest: /var/www
        version: master

    - name: restart webserver
      command: restart-command-you-run

このファイルをansible-playbookで実行すると、ホストリスト(iniファイルと同じくらい簡単ですが、任意のプログラミング言語で記述された動的リストにすることもできます)を検索して、存在するサーバーとサーバーが属するグループを特定します。指示したサーバー上で定義されたタスクを実行します。

これで、JavaScriptエコシステムにとどまりたいと指定しました。ただし、Ansibleは新しいものですが、構成はYAMLで記述されているため、他のプログラミング言語のような複雑さはありません。また、後でもっと多くのことができるようになり、競合他社のいくつかとは異なり、sshを使用して通信するため、関係する設定はほとんどありません(リモートマシンにインストールするものはありません)。


1
とても役に立ちました。(そしてはい、私はカピストラーノを参照していました-私は私の投稿を更新しました)
ヘンリー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.