読者です 読者をやめる 読者になる 読者になる

ようへいの日々精進XP

よかろうもん

2017 年 01 月 22 日(日)

日々

ジョギング

寒すぎて、風が強すぎて...香椎浜を一周してから近隣をトコトコと 45 分程。

精米

久々に精米に行く。

ヘイ、カール!、ヘイ、カール!、ヘイ、curl で Backlog API を叩いて課題を作成するメモ(今回は子課題)

Backlog メモ

ヘイ、カール

www.youtube.com

懐かしいです。

子課題を Backlog APIcurl で叩いて作成してみます

以下の例は親課題ありきですが、"parentIssueId=${_BACKLOG_PARENTISSUE_ID}" 外せば、普通に親課題も作成することが出来ます。

gist.github.com

正しく課題が作成されると以下のように出力されます。

$ ./create_issue.sh
Your Name: おれおれおれ
Backlog API Key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Backlog に課題を起票します.
処理を続行しますか? [Y/n]
y

https://${貴方の Backlog チーム}.backlog.jp/view/${Baclklog 課題番号} に起票しました.

以上

メモでした。

じゃんじゃん API を叩いて省力化していきましょう。

2 つの list 型データ(1 つは dict 型を内包している)でフィルタっぽいことをするメモ

python メモ

参考

stackoverflow.com

有難う、Stack Overflow 様様。

やりたいこと

以下のような sake_list という dict 型のデータを内包した list 型データがあるとする。

sake_list=[
    {'銘柄': '八海山', '酸度': '1.0', '日本酒度': '+4.0'},
    {'銘柄': '獺祭', '酸度': '1.1', '酒度': '+4.0'},
    {'銘柄': '鍋島', '酸度': '未公表', '酒度': '未公表'},
    {'銘柄': '久保田萬寿', '酸度': '1.2', '酒度': '+2.0'}
]

このデータを drank という list 型データと比較して、drank に含まれている銘柄の dict 型データだけフィルタして取り出したい。

drank=['八海山', '獺祭']

こんな感じで

# -*- coding: utf-8 -*-
from prettyprint import pp

drank=['八海山', '獺祭']
sake_list=[
    {'銘柄': '八海山', '酸度': '1.0', '日本酒度': '+4.0'},
    {'銘柄': '獺祭', '酸度': '1.1', '酒度': '+4.0'},
    {'銘柄': '鍋島', '酸度': '未公表', '酒度': '未公表'},
    {'銘柄': '久保田萬寿', '酸度': '1.2', '酒度': '+2.0'}
]

sake = list(filter(lambda data: data['銘柄'] in drank, sake_list))
for drink in sake:
    # print str(drink).decode("string-escape")
    pp (drink)

事前に prettyprint モジュールをインストールしておきましょう。

pip install prettyprint

今宵も一献

# 試した環境
$ python -V
Python 2.7.12

$ python sake.py
{
    "日本酒度": "+4.0",
    "酸度": "1.0",
    "銘柄": "八海山"
}
{
    "酒度": "+4.0",
    "酸度": "1.1",
    "銘柄": "獺祭"
}

いけた。

飲み過ぎに

注意しましょう。

EBS スナップショットから EC2 を復元するシェルスクリプトの例

aws bash メモ

ということで

以下のように OS と DATA で 2 つの EBS が繋がった EC2 でメンテナンスを行う際に、事前にスナップショットを取得しておくのだが、仮にメンテナンスに問題が発生した場合に、スナップショットから元の環境を復元する際に実行する処理をシェルスクリプトにしてみたのでメモしておきます。

f:id:inokara:20170122114857p:plain

なんばしよっと

スナップショット

まずは、以下のようなスクリプトでスナップショットを取得します。

gist.github.com

スナップショットを取得してから男は気づきました。そう、スナップショットには OS 上のデバイス情報が紐付いていない。

男は三日三晩悩みました...。そして、思いついたのがスナップショットのタグにデバイス名を書き込むことにしましたとさ。

$ for id in $(cat tmp/snapshot_ids); do aws ec2 describe-tags --filters "Name=resource-id,Values=${id}"; done
{
    "Tags": [
        {
            "ResourceType": "snapshot",
            "ResourceId": "snap-08xxxxxxxxxxxxxxxxx",
            "Value": "OS",
            "Key": "Name"
        },
        {
            "ResourceType": "snapshot",
            "ResourceId": "snap-08xxxxxxxxxxxxxxxxx",
            "Value": "/dev/sda1",
            "Key": "device"
        }
    ]
}
{
    "Tags": [
        {
            "ResourceType": "snapshot",
            "ResourceId": "snap-0xxxxxxxxxxxxxxxxx",
            "Value": "DATA",
            "Key": "Name"
        },
        {
            "ResourceType": "snapshot",
            "ResourceId": "snap-0xxxxxxxxxxxxxxxxx",
            "Value": "/dev/sdf",
            "Key": "device"
        }
    ]
}

アンサーソング(復元)

以下のアンサーソングスクリプトでスナップショットから EC2 を復元します。

gist.github.com

以上

waiter

待機中に何かメッセージを出せると良いと思いました。

メモでした

もっと良い方法がありそうですが、メモでした。

2017 年 01 月 21 日(土)

日々

ジョギング

  • 香椎浜 x 3 周
  • 両足筋肉痛、なんでやねん

冬の晴れ間

  • 過ごしやすかったので、奥さんと協力して洗濯や掃除

ヨカ太郎

ヨカ太郎、ハカタデアッポペン。

博多駅のプロント

電源も貸してもらえるし、お酒も飲めるのでヨシ。

2017 年 01 月 20 日(金)

日々

1 月もあっという間に...

後半。

年始に色々と目標を掲げていたけど着手出来ていないなあ。

AWS CLI の Waiter

EC2 の起動待ちとか自前で実装するよりも楽だよなと思いつつ、待ちの間にメッセージとか出せないのかなと思ったり。

最近は

ほぼ、夕飯は鍋。

色々と捗るけど、たまに飽きる。

2017 年 01 月 19 日(木)

日々

左膝

だいぶん良くなってきた。

技術的なメモ

Python

  • filter が便利だった

DynamoDB

  • ちゃんと勉強せねば
  • Document を読もう

Backlog

  • curl で課題作成、コメント、ファイルアップロードが一通り出来た
  • 付随して色々な情報を取得出来た

Hashcorp の Vault

  • 色々と自動化を考えると API キーやパスワードをどのように管理するかが悩ましい

2017 年 01 月 18 日(水)

日々

膝をぶつけて

左膝を机の角に強打。青く腫れ上がっているのでジョギングは一回休み。

やれやれ。

2017 年 01 月 17 日(火)

日々

ジョギング

ランチ

  • 香椎の座射豚でラーメンと明太子ご飯

2017 年 01 月 16 日(月)

日々

ジョギング

  • 香椎浜 2 周
  • 寒かったけど走りやすかった

Docker に特権昇格の脆弱性

Docker Engine の v1.12.6 で fix されている。

CORS

CORS について学んだ。