タグ

fabricに関するhohoho_ho2005のブックマーク (83)

  • Pythonタスクランナー Fabric 2 の紹介 - 前編 Fabricの概要 -

    こんにちは、滝澤です。 いくつかのプロジェクトでタスクランナーFabric 2を使う機会がありました。少しですが知見が溜まったので紹介します。 また、Fabric 1.xを利用していた方は互換性も気になると思いますでのその点についても紹介します。 記事が長くなったので3編に分けます。 前編: Fabricの概要 中編: Invokeの使い方 後編: Fabricの使い方 記事は前編の「Fabricの概要」になります。 なお、執筆時点(2018年11月21日)での最新バージョンはFabric 2.4.0、Invoke 1.2.0です。 動作確認はPython 3.7.1にて行っています。 FabricはSSH経由でリモートシェルコマンドを実行するPythonライブラリです。 タスクランナーとして利用できます。 Fabricの簡単な理解のために、実行例を紹介します。 次のような内容のfabf

  • Fabric2 へ移行した際の雑Tips - kumak1’s blog

    更新履歴 2018/08/20 コマンドのエラーを無視して後続処理する方法を追記 2018/10/24 接続先でシェルを使いたい場合のオプションを追記 はじめに Python 製タスクランナーの Fabric 2 が公開され、Mac の brew でもこのバージョンになりました。 Fabric 1 の記法では動かなくて私は阿鼻叫喚したのですが、みなさんはいかがでしょうか? まだまだ日語ドキュメントも少ない(ほぼない?)し、移行事例があまりなかったので、雑なものですがメモを残しておきます。 なお、ここでは英語ドキュメントで大々的に示してるメイン機能(Connection や Group など)の使い方を説明するものではなく 「あれ、v1 でやってたこの処理、どうやってやるんだろ?」という細かなものを中心をしています。 Fabric 1 と 2 って、ゆうてそんなに変わらんのやろ? めっちゃ

    Fabric2 へ移行した際の雑Tips - kumak1’s blog
  • Fabricのドキュメントへようこそ ! — Fabric ドキュメント

    注意!!!! このドキュメントはFabricバージョン1.10.1の日語訳で、古いものです。 最新のFabric2.xのドキュメントはオリジナルの英語ドキュメントhttp://www.fabfile.org/を参照してください。 Fabricのドキュメントへようこそ !¶ このサイトではFabricの利用法とAPIのドキュメントをカバーしています。公開されている変更履歴とこのプロジェクトがどのようにメンテされているかを含んだ、Fabricとは何かとうことに関する基的な情報は メインのプロジェクトウェブサイト をご覧ください。 チュートリアル¶ 新しいユーザーや Fabricの基的な機能の概要を知りたい方は 概要とチュートリアル を参照してください。このドキュメントの残りの部分では、内容に関して少なくとも一時的にはよく知っていることと仮定します。

    Fabricのドキュメントへようこそ ! — Fabric ドキュメント
  • Fabricのドキュメントへようこそ ! — Fabric ドキュメント

    注意!!!! このドキュメントはFabricバージョン1.10.1の日語訳で、古いものです。 最新のFabric2.xのドキュメントはオリジナルの英語ドキュメントhttp://www.fabfile.org/を参照してください。 Fabricのドキュメントへようこそ !¶ このサイトではFabricの利用法とAPIのドキュメントをカバーしています。公開されている変更履歴とこのプロジェクトがどのようにメンテされているかを含んだ、Fabricとは何かとうことに関する基的な情報は メインのプロジェクトウェブサイト をご覧ください。 チュートリアル¶ 新しいユーザーや Fabricの基的な機能の概要を知りたい方は 概要とチュートリアル を参照してください。このドキュメントの残りの部分では、内容に関して少なくとも一時的にはよく知っていることと仮定します。

  • Python: Fabric を組み込みで使うときの注意点 - CUBE SUGAR CONTAINER

    以前、このブログで Fabric をスクリプトに組み込んで使う方法について書いた。 blog.amedama.jp ただ、このやり方はちょっとした注意点があるので追記しておく。 今回使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G1108 $ python --version Python 3.5.2 インストール 何はともあれ、まずは Fabric をインストールしておく。 Python 3 に対応したものは fabric3 という名前でインストールできる。 $ pip install fabric3 Python 2 なら数字なし。 $ pip install fabric 下準備 前回のエントリと同じように Fabric で操作する対象は Vagrant で作った

    Python: Fabric を組み込みで使うときの注意点 - CUBE SUGAR CONTAINER
  • Python: Fabric をスクリプトに組み込んで使う - CUBE SUGAR CONTAINER

    Fabric は Python で書かれたデプロイやオペレーションを自動化するためのツール。 Fabric では、タスクと呼ばれるオペレーション内容も Python で書く。 今回は、普段ならコマンドラインツールから使うことが多い Fabric を Python のスクリプトに組み込んで使う方法について書く。 尚、Fabric はリモートのホストに接続して使うことが多いため、そのホストとして Vagrant を使って Ubuntu 16.04 LTS のマシンを用意した。 使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.6 BuildVersion: 15G1004 $ python --version Python 2.7.10 インストール まずは pip を使って Fabric をインストールしておく

    Python: Fabric をスクリプトに組み込んで使う - CUBE SUGAR CONTAINER
  • cuisineでfabricに冪等性を授ける - Qiita

    cuisineとは cuisineは、fabricに冪等性を授けるライブラリです。 冪等性とは、1回実行しても複数回実行しても同じ結果になる特性のことです。インフラ界隈で言うと、ChefやPuppet、Ansibleなどのツールが冪等性を持っています。つまり、これらのツールは1回実行しても複数回実行してもサーバが同じ状態になる特性を持っています。 しかしながら、fabricは冪等性がないため実行時の設定状態に配慮しなければ、複数回実行するとエラーになります。例えば、ユーザを追加するスクリプトを書いた場合、1回目の実行は上手く追加されますが、2回目はすでにユーザが存在するためエラーになってしまいます。 サーバの初期設定にfabricを使っていましたが、初期設定しか意識せずにスクリプトを書いていたので、ちょっとした変更や修正でも再実行できなくて困っていました。いまさら、ChefやPuppet、

    cuisineでfabricに冪等性を授ける - Qiita
  • 3分でサーバオペレーションコマンドを作る技術

    #pyconjp 2015 の LTで発表した際に利用した資料です https://pycon.jp/2015/ja/schedule/presentation/93/Read less

    3分でサーバオペレーションコマンドを作る技術
  • Fabricで幸せなデプロイライフ | 俺はもうエンジニアだ

    自分のサーバでは現時点で、 Playframework2.4JavaScalaがそれぞれ動いていて デプロイを自動化する際にfabricを使用したので備忘録も兼ねてここに記します。【Sponsored Link】  FabricとはFabricはコマンドライン 経由で 任意の Python 関数 を実行するツールです。(低レベルライブラリの上に構築された)サブルーチンのライブラリで、SSH経由で簡単に かつ Python風に シェルコマンドを実行します。(概要とチュートリアルFabric ドキュメントより引用)つまり、このFabricを使えばいちいちサーバーに手動でアクセスして作業せずともデプロイのようなタスクを自動化できるのです! 例えば下記のようにyum_updateというメソッドを作成したファイルを用意します。   そうするとこのメソッドを次のように叩くことができます。   これを

    Fabricで幸せなデプロイライフ | 俺はもうエンジニアだ
  • Fabricを試してみた - Sanwa Systems Tech Blog

    こんにちは、おにぎりエンジニア平尾です。弊社のとあるプロダクトでそろそろデプロイツールを導入したくて、今回はFabricを試してみました。 デプロイツールといえばCapistranoも有名ですが、ある記事に「シェルスクリプトを書き慣れた人が使いやすい」みたいな事が書かれていて、とっつきやすそうなので今回はFabricを試してみました。ドキュメントが日語なので嬉しいですね。 Fabricのドキュメントへようこそ ! — Fabric ドキュメント 特徴 コマンドライン経由で、任意のPython関数を実行するツールで、 シェルスクリプトをそのままFabricのメソッドrun()やsudo()メソッドで囲むだけで、使うことがきる。 インストール 今回Fabricをインストールするサーバ環境は、以下です。 CentOS 6.5 Python 2.7.9 pipを使用してFabricをインストール

    Fabricを試してみた - Sanwa Systems Tech Blog
  • Fabricを使う上で知ってると嬉しいN 個の事 • masu-mi's blog(dirty pages)

    Fabric を使っていて早めに知りたかった事をまとめた。 タスクに説明をつける Fabricはタスクのドキュメンテーション文字列(docstring)をタスクの説明として利用する。 そのためfabfile.pyを以下の様に定義するとfab --listの際に説明が表示される。 # coding: utf-8 from fabric.api import task, run @task def setup(): """ 空行を除く最初の1行が表示される ここは表示されない """ run("hostname")

  • Python+SSHな自動化・デプロイメントツールFabricを活用するTips

    こんにちは。CTOの馬場です。 みんな大好きFabricのTipsです。 Welcome to Fabric! -- Fabric documentation よくデプロイツールとして紹介されますが、 自動化のためのPython+SSH+コマンド実行フレームワークとして柔軟に使えて超便利です。 基的には 手元でのコマンド実行 SSHごしのリモートサーバでのコマンド実行 SSHごしのリモートサーバでsudoしてコマンド実行 ができるツールなのですが、使い方の例を紹介します。 間違いなどあればお近くのハートビーツ社員か @netmarkjp に教えていただけると嬉しいです。 Python 2.7.10 + Fabric 1.10.2 + Paramiko 1.15.2で動作確認しました。 複数のサーバに対して同じユーザ・パスワードでログインする ユーザ名やパスワードを一括指定できます。 鍵認

    Python+SSHな自動化・デプロイメントツールFabricを活用するTips
  • pyfes_fabric/package at master · drillbits/pyfes_fabric

    1 ファイルに全タスク書くのはつらい、という話です。 -f オプションを省略すると fabfile.py を使うということを書きましたが、fabfile という名前で Python のパッケージを作っておいても OK です。 内容はこのディレクトリの fabfile 見て下さい。 __init__.py でその他のモジュールを import しておきます。そうすると fab モジュール名.タスク みたいな感じで実行できます。 # fabfile/__init__.py from . import hosts from . import repository # fabfile/hosts.py from fabric.api import task @task def localhost(): env.hosts = ["localhost"] env.user = "pyfes" 1 フ

    pyfes_fabric/package at master · drillbits/pyfes_fabric
  • GitHub - EverythingMe/fabric-aws: fabric AWS integration

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - EverythingMe/fabric-aws: fabric AWS integration
  • Memo/Fabric - DEX Lab

    Fabric † Fabric デプロイツール。sshの作業等を自動化できる。シェルスクリプトより構造化が可能 Python 2.5以上 スクリプトはpython構文で書く Fabric Fabric 1.0 documentation 日語ドキュメント Overview and Tutorial — Fabric 1.7 documentation チュートリアル Execution model — Fabric 1.7 documentation コマンド実行する場合 Operations Fabric 1.7 documentation get(), put(), run(), sudo() 等 記事 【30分で動かすシリーズ】Fabricでbash祭に対応してみる サーバーワークス エンジニアブログ Tav's Blog Fabric Python with Cleaner AP

  • 超速でCentOS6.6(さくらのVPS)をセットアップする俺史上最強のFabricスクリプトをさらす - 憂鬱な世界にネコパンチ!

    先日公開したはじめてでも爆速でCentOS6.6(さくらのVPS)をセキュアにセットアップする方法まとめの事実上の後編だ。記事ではセットアップ手順をFabricのスクリプトにして公開する。 Fabricスクリプトのセットアップ ダウンロード GitHubで公開してるので、それを取ってこよう。 $ git clone git@github.com:tmknom/setup-centos.git $ cd setup-centos 自分の環境用に設定を変更する テキストエディタで fabfile.py を開いて、設定を変更しよう。 以下の項目は必ず変更してほしい。 作業用ユーザ名:USER_NAME 作業用ユーザのパスワード:PASSWORD 接続先のVPSサーバのIPアドレス:env.hosts また、次の項目も変更をすることを推奨するぞ。(変えなくても動くけど) rootのメールアドレス

    超速でCentOS6.6(さくらのVPS)をセットアップする俺史上最強のFabricスクリプトをさらす - 憂鬱な世界にネコパンチ!
  • vagrant + ansible + fabric でpythonの開発環境作る - Qiita

    vagrantで開発サーバ作って そこにansibleでpython環境作る flask + uwsgiを使用して fabricでデプロイできるように みたいな。 あんま突っ込んだ内容には触れてないです。 中途半端だけど、一通りまとまった情報がなかなか無くてけっこう時間費やしたので、 その辺のまとめておいてもいいかなって。 ハマりどころとかtips的に。 最終的なファイル構成はこんな感じ。 . ├── Vagrantfile ├── ansible.cfg ├── fabfile.py ├── flask │   ├── main.py │   ├── reload.trigger │   ├── runserver.py │   └── uwsgi.ini ├── inventory ├── playbooks │   └── python.yml └── ssh.config

    vagrant + ansible + fabric でpythonの開発環境作る - Qiita
  • 一歩すすんだ Fabric のタスク定義のしかた | 株式会社ヌーラボ(Nulab inc.)

    Backlog ではユーザのみなさまに安定して Backlog をご利用いただけるよう 定期的にサーバやストレージの増強などのメンテナンスを行っています。 そして気付けば現在では数十台のホストで構成されるサービスとなっています。 さて、それだけのホストを運用していると、例えばアプリケーションを配備したり、 ミドルウェアを再起動するのも手動で行うには限界があります。 こういった作業に対して Backlog では Fabric を利用しています。 Fabric の魅力の一つはそのシンプルさです。例えばリモートホストに接続してコマンドを実行するには、以下のようなタスクを定義し、 @task def simple(): """ show uname -a """ run('uname -a') fab コマンドで以下のように呼び出すだけです。 $ fab simple [default] Exec

    一歩すすんだ Fabric のタスク定義のしかた | 株式会社ヌーラボ(Nulab inc.)
  • GunicornをFabric経由で操作する - Qiita

    Gunicornで動いているアプリをサーバー側で起動、再起動ができるようにした。 プロセスを止めるにはpidを指定してkillすればいいということを学んだ。 gunicorn.conf.py usr/bin/python gunicorn.conf.py bind = "0.0.0.0:5000" workers = 2 worker_class = 'sync' max_requests = 1000 timeout = 30 keep_alive = 2 preload = True daemon = True GUNICORN=/usr/bin/gunicorn ROOT=/your/app/path PID=/var/run/gunicorn/your.pid APP=run:app if [ -f $PID ]; then rm $PID; fi cd $ROOT source

    GunicornをFabric経由で操作する - Qiita
  • 意識の低い自動化

    意識を低く保ったまま、定型作業を自動化する話です。 ※どうも言葉足らずで誤解させてしまっているようなので補足を書きました。ご覧ください http://qiita.com/greenspa/items/fff535d2ae5da36e36feRead less

    意識の低い自動化