About Me My name is Hideo Hattori. Live in Hyogo, Japan. I'm a Software Engineer. I use C/C++, Python, Go, Rust. My interest are Programming Language, System Programming, Web development and System tools. GitHub Keybase Linkedin Blog (in Japanese) My projects peg-rst - reStructuredText in C. kamasu - HTTP Proxy for PHP Built-in Server, written in Rust. woothee-rust - Rust user-agent strings parser
paramiko is a module for python 2.2 (or higher) that implements the SSH2 protocol for secure (encrypted and authenticated) connections to remote machines. unlike SSL (aka TLS), SSH2 protocol does not require heirarchical certificates signed by a powerful central authority. you may know SSH2 as the protocol that replaced telnet and rsh for secure access to remote shells, but the protocol also inclu
PyInstaller Manual Version: PyInstaller 6.14.2 Homepage: https://pyinstaller.org/ Contact: pyinstaller@googlegroups.com Authors: David Cortesi, based on structure by Giovanni Bajo & William Caban, based on Gordon McMillan’s manual Copyright: This document has been placed in the public domain. PyInstaller bundles a Python application and all its dependencies into a single package. The user can run
The Hitchhiker’s Guide to Python!¶ Greetings, Earthling! Welcome to The Hitchhiker’s Guide to Python. This is a living, breathing guide. If you’d like to contribute, fork us on GitHub! This handcrafted guide exists to provide both novice and expert Python developers a best practice handbook for the installation, configuration, and usage of Python on a daily basis. This guide is opinionated in a wa
Since getting involved with Python, I’ve read a few discussions about Zope, and though I haven’t used it, I do enjoy reading articles about it, to see how other people approach common problems. In particular, a recent Satchmo discussion pointed me to an article about using Zope3 interfaces to essentially manage plugins. I knew Trac did this, as I had tried to write a Trac plugin a while back, but
I came across an interesting post Metaprogramming: Ruby vs. Javascript, which discusses and contrasts about how metaprogramming can be implemented in Ruby and Javascript. I thought it might be fun to document the same from a python perspective as well. Here are the discussed samples. All the ruby code is quoted from from the blog post linked to above whereas the python code is what I wrote. 1. Ini
I've been looking into various configuration management/automated deployment tools lately. At OpenX we used slack, but I wanted something with a bit more functionality than that (although I'm not badmouthing slack by any means -- it can definitely be bent to your will to do pretty much whatever you need in terms of automating your deployments). From what I see, there are 2 types of configuration m
Fabricは指定したコマンドを各ホストで実行する実行モデルです。この場合は特にホストの指定がなかったので、全部ローカルで、一回実行することになります。 これは結構つまんないので、本当の例を見ましょう。これは最近、仕事で作ったコマンドです。Nginxサーバーでメンテ画面を出すようなコマンドです。各ロードバランサーで実行します。 from fabric.api import run, cd, abort, require, sudo, env from fabric.decorators import runs_once, roles from fabric.contrib.console import confirm ... @roles('loadbalancers') def start_maintenance(): """ メンテナンス画面に切り替える """ _production
Fabric is an awesome tool. Like Capistrano and Vlad, it makes deployments a lot simpler than with shell scripts on their own. However, once the complexity of your setup starts to grow, you very quickly start wishing for a cleaner and more powerful API. And once you are deploying to more than 30 servers, you really wish that Fabric would run commands in parallel instead of doing them sequentially,
fabfile.pyって、task数個までならまあ1ファイルでいいんですが、それ以上増えてくるとスクリプト自体がカオスになって収集がつかなくなります。 更に似たような、けど微妙に違うtaskをいっぱい定義したりすると名前まで酷くなってきます。こんなかんじに。 @roles('lb') def lbserver_deploy(): """ロードバランサーにデプロイする""" ... @roles('app') def appserver_deploy(): """アプリケーションサーバーにデプロイする""" ... @roles('batch') def batchserver_deploy(): """バッチサーバーにデプロイする""" ... こんなファイルメンテする気が起こらないので、なんとか綺麗にしたいと思って調べたところ、fabric1.1から付いたクラスベースのtaskというのを
先日、引数に @Nullable アノテーションが付いた引数をもつ関数をリファクタリングして、関数分割してコミットしたら、ビルドサーバーに仕掛けられた FindBugs™ - Find Bugs in Java Programs に、@Nullable が付いてるのに Null チェックしてないよと怒られました (; ;) Java のコードに慣れないため、Eclipse のお告げに従ってリファクタリングし、Eclipse がチェックできなかったものを見逃してしまったわけです。もちろん修正するのは簡単だけど、何か恥ずかしい。 ちょっと調べたら、Eclipse プラグインもあるようです *1 。Eclipse に FindBugs プラグインをインストールしてみようー。 。。。 ( ゚д゚)ハッ! 間違えた! 今日は 2011 Pythonアドベントカレンダー(Python3) を書くよ!
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く