SlideShare una empresa de Scribd logo
1 de 23
Molecule入門
Hiroki Uchida
@nikuyoshi
はじめに
本スライドは、2018-12-06に実施されたAnsible Night in Tokyo 2018.12 で公開された資料です。
動作確認バージョンは以下のとおりです。
Ansible 2.7.2
Ansible Galaxy 2.7.2
Molecule 2.19.0
本資料のライセンスは、クリエイティブ・コモンズ・ライセンスのCC-BYです。
https://creativecommons.jp/licenses/
Moleculeについて
Ansible Roleのテストをシナリオベースで実行できる。Driverに対応しているインスタンス(Docker、Vagrant、
AWS、Azure、GCP等)を生成し、シナリオ終了後に削除までしてくれる。
要
件
定
義
コ
ー
デ
ィ
ン
グ
規
約
チ
ェ
ッ
ク
ユ
ニ
ッ
ト
テ
ス
ト
結
合
テ
ス
ト
CIパイプラインで必要なLint、テスト等の作成〜運用を簡単にできることが特
長
設
計
Moleculeによって何が変わるのか
規約チェック
ユニットテスト
結合テスト
システムテスト
工程 Molecule導入後今まで
ansible-lint, yamllint, etc...
Ansible Playbook, Serverspec, TestInfra, etc...
molecule test
それぞれのツールを毎回個別に実行する手間が省ける
Vagrant、Docker、AWS、GCP、Azure, etc...
・
・
・
molecule test のシーケンス
yamllint、flake8、ansible-lintを実行する。lint
destroy
dependency
syntax
create
prepare
converge
idempotence
side-effect
verify
destroy
destroy.yml をもとにVagrant、Docker等のインスタンスを削除する。
ansible-galaxy から依存関係のあるRoleをpullする。
ansible-playbook --syntax-check を実行する。
create.yml をもとにVagrant、Docker等のインスタンスを作成する。
prepare.yml をもとにRole実行時に必要なシステム設定を行う。 ex. Pythonインストール
playbook.yml をもとにRoleを実行する。
冪等性が担保されているかをチェックするためにもう一度Roleを実行する。
HA構成のフェイルオーバー試験等をできる。試験機能。
Testinfraなどで動作後の構成のチェックを行う。
destroy.yml をもとにVagrant、Docker等のインスタンスを削除する。
molecule test 以外のシーケンス
create
create
prepare
destroy
dependency
create
prepare
converge
check
destroy
dependency
create
prepare
converge
destroy
check converge destroy
lint
destroy
dependency
syntax
create
prepare
converge
idempotence
side-effect
verify
destroy
test
Molecule - Configuration - Scenario
Moleculeのコマンドについて
用語の確認
create
create
prepare
destroy
dependency
create
prepare
converge
check
destroy
dependency
create
prepare
converge
destroy
check converge destroy
lint
destroy
dependency
syntax
create
prepare
converge
idempotence
side-effect
verify
destroy
test
コマンド
シーケンス
次の3つを実行する。
● yamllint - Roleディレクトリに存在するすべてのYAMLファイルをyamllintにかける。
lint コマンド
molecule.yml (molecule/test/scenarios/driver/ec2/molecule/default/molecule.yml)
● flake8 - Pythonのソースコード用Lint。Testinfra向けに作られたコードをチェックする。
● ansible-lint - Ansible Playbook用Lint。実行されうるすべてのPlaybookに対してLintがかけられる。
create コマンド、 destroy コマンド
Moleculeが作成したインスタンスを作成、削除する。create, destroyの挙動を変更したい場合は Role名 フォ
ルダ配下に create.yml 、 destroy.yml を配置する。以下の例はVagrantに関するPlaybookだが、公式リポジト
リの molecule/molecule/provisioner/ansible/playbooks を探せばDockerなどのサンプルもある。
prepare コマンド
prepare.yml をもとにRole実行時に必要なシステム設定を行う。ドライバーによって、デフォルトで用意され
るもの(ex. Vagrant)と用意されないもの(ex. Docker)がある。選択したドライバーによってどのような設定フ
ァイルが作成されるかは、molecule/molecule/cookiecutter/scenario/driver/ が参考になる。
以下の prepare.yml はVagrantの場合である。
verify コマンド
molecule.yml で選択したVerifierによって、実行されるテストランナーが異なる。Molecule2系で選択できる
Verifierは、Testinfra(デフォルト)、Goss、Inspec。1系まではServerspecが選択できていた。LintはFlake8(デ
フォルト)、RuboCopを選択できる。設定項目の詳細は公式ドキュメントのConfiguration > Verifierを参照する
こと。それぞれのVerifierでどのような設定ファイルが生成されるかは
molecule/molecule/cookiecutter/scenario/verifier/ を参照すること。
その他のコマンド ※molecule --helpで確認できます
コマンド サブコマンド 説明
molecule init role AnsibleのRoleを生成する。
scenario Moleculeのテストシナリオを作成する。
template URLからRoleを作成する。
molecule list - Moleculeで作成したインスタンスのステータス
を確認する。
molecule matrix check, converge, create, dependency,
destroy, idempotence, lint, prepare,
side-effect, syntax, test, verify
指定したサブコマンドが何のシナリオを実行す
るかチェックする。
molecule login - Moleculeで作成したインスタンスにログインす
る。
このスライドまでで紹介されていないコマンドを以下に記載する。
init コマンド(1/2)
molecule init - role、scenario、templateの作成
● molecule init role
○ AnsibleのRoleを作成する。 -d でドライバーを設定しないとDockerが選択される。また、 ansible-
galaxy コマンドで生成されるディレクトリ構成と異なる。
molecule init role -r apache -d vagrant ansible-galaxy init --init-path=. apache
参考: wata さんのAnsible Galaxyのスケルトン
init コマンド(2/2)
● molecule init scenario
○ Moleculeのテストシナリオを作成する。Roleディレクトリ直下で実行しないと失敗するため注意。
molecule test も同様。また、 ansible-galaxy で作成されたRoleに対して初めてシナリオを追加す
る場合は、シナリオ名をdefaultにしないと作成に失敗する。
● molecule init template - URLからRoleを作成する
○ ex. molecule init template --url https://example.com/user/cookiecutter-repo
list コマンド, matrix コマンド
molecule list - Moleculeで作成したインスタンスのステータスを確認する。
molecule matrix - 指定したサブコマンドが何のシナリオを実行するかチェックする。
login コマンド
molecule login - Moleculeで作成したインスタンスにログインする。
Moleculeのインストールについて
公式ドキュメントをもとに、インストールを行う。
参考: Pythonの仮想環境構築 2017.01版
$ mkdir ansible-night-2018-12
$ cd ansible-night-2018-12
$ python3 -m venv .venv
$ source .venv/bin/activate
$ pip install molecule
Molecule利用時のフローチャート
Role作成済み
cd Roleディレクトリ
molecule init scenario -r Role名 -s default
molecule init role -r Role名 -d ドライバ名
Role修正、シナリオ修正
はい
いいえ
実行したいものは
molecule test --all
シナリオ全実行
(結合テスト、シナリオテスト)
molecule test -s シナリオ名
指定シナリオの実行
molecule create
Roleを実行して動作後のチェック
(ユニットテスト)
molecule converge
molecule verify
molecule destroy
molecule lint
規約チェック
良い点、懸念点
● 良い点
○ AnsibleのRoleをテストしたい時に、必要なファイル一式をサクッと作成できるようになる。
○ Lint, テストを実行するのに、Moleculeから一律操作ができるようになり操作がシンプルになる。
○ 公式のAnsibleプロジェクトに追加されたため、Red Hatが公式にサポートしている。
● 懸念点
○ Serverspecから移行する際に、Testinfra、InSpec、Gossのどれかに書き換える必要がある。
■ 実際に移行コストはかなり高いという声あり。
● Serverspecのリソースタイプ vs TestInfraのModule
■ InSpecへ乗り換えればMoleculeで利用できる。マイグレーションガイド
■ Molecule 1系はServersecが使えたため、あえて1系を使うのも手。サンプルは、wateさんの
ansible-role-mariadbを参考のこと。 ちなみに、2系はServerspecに対応しないとのこと。
● 1系から2系へのコンバートスクリプトがある。
○ molecule test に-vオプションがない。デバッグをどうするのか知りたい。
■ Pipfile 内の scripts に、 --debug をつければ確認できるらしい。
[scripts]
(...)
test = "molecule --debug test"
(...)
困ったことがあれば、ansiblejpのSlack部屋に相談すれば、きっとガチ勢が答えてくれるはず!
http://bit.ly/slack-ansiblejp
時間があればデモをします
謝辞
レビュアーとしてコメントいただきありがとうございます!!
● lu_iskun さん
● wate さん
● curry9999 さん
参考
● Molecule公式ドキュメント Version 2.19
● Molecule公式ドキュメント Version 1.25
● Moleculeリポジトリ
● How To Test Ansible Roles with Molecule on Ubuntu 16.04
● Infrastructure Testing with Molecule

Más contenido relacionado

La actualidad más candente

Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門tsukasamannen
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Kohei Tokunaga
 
Rootlessコンテナ
RootlessコンテナRootlessコンテナ
RootlessコンテナAkihiro Suda
 
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話Yuta Shimada
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)NTT DATA Technology & Innovation
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能Kohei Tokunaga
 
爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話Kentaro Yoshida
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with KarateTakanori Suzuki
 
その ionice、ほんとに効いてますか?
その ionice、ほんとに効いてますか?その ionice、ほんとに効いてますか?
その ionice、ほんとに効いてますか?Narimichi Takamura
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoTakayuki Shimizukawa
 
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】WESEEKWESEEK
 
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Yahoo!デベロッパーネットワーク
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021Hiroshi Tokumaru
 
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話すWebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話すTakaya Saeki
 
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来についてshinjiigarashi
 

La actualidad más candente (20)

Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門Spring Boot ユーザの方のための Quarkus 入門
Spring Boot ユーザの方のための Quarkus 入門
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
Goss入門
Goss入門Goss入門
Goss入門
 
Rootlessコンテナ
RootlessコンテナRootlessコンテナ
Rootlessコンテナ
 
コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話コンテナにおけるパフォーマンス調査でハマった話
コンテナにおけるパフォーマンス調査でハマった話
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話爆速クエリエンジン”Presto”を使いたくなる話
爆速クエリエンジン”Presto”を使いたくなる話
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate人生がときめくAPIテスト自動化 with Karate
人生がときめくAPIテスト自動化 with Karate
 
その ionice、ほんとに効いてますか?
その ionice、ほんとに効いてますか?その ionice、ほんとに効いてますか?
その ionice、ほんとに効いてますか?
 
RLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for DjangoRLSを用いたマルチテナント実装 for Django
RLSを用いたマルチテナント実装 for Django
 
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】
もう知らずにはいられないGitOpsをArgoCDで学ぶ【WESEEK Tech Conf #3】
 
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajpAt least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
 
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
Micrometer/Prometheusによる大規模システムモニタリング #jsug #sf_26
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
WebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話すWebAssemblyのWeb以外のことぜんぶ話す
WebAssemblyのWeb以外のことぜんぶ話す
 
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
 

Similar a Molecule入門

知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点d-shen
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話JustSystems Corporation
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireAkio Katayama
 
Modeller_doc_japanese_ver.1.0
Modeller_doc_japanese_ver.1.0Modeller_doc_japanese_ver.1.0
Modeller_doc_japanese_ver.1.0Satoshi Kume
 
Java SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にJava SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にTaku Miyakawa
 
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPOCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPTetsuya Sodo
 
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化するLIFULL Co., Ltd.
 
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)シスコシステムズ合同会社
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Akio Katayama
 
AWSマイスターシリーズ(Elastic Beanstalk)
AWSマイスターシリーズ(Elastic Beanstalk)AWSマイスターシリーズ(Elastic Beanstalk)
AWSマイスターシリーズ(Elastic Beanstalk)Akio Katayama
 
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-SORACOM, INC
 
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニックOpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニックEtsuji Nakai
 
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術までAkihiro Suda
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsYoshio Terada
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisitedUptime Technologies LLC (JP)
 
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システムTomohiro Ohtake
 

Similar a Molecule入門 (20)

知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点
 
AlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetesAlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetes
 
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
Spring Boot の Web アプリケーションを Docker に載せて AWS ECS で動かしている話
 
SDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 WhireSDLoader SeasarCon 2009 Whire
SDLoader SeasarCon 2009 Whire
 
FlexUnit4とMockitoFlex
FlexUnit4とMockitoFlexFlexUnit4とMockitoFlex
FlexUnit4とMockitoFlex
 
Modeller_doc_japanese_ver.1.0
Modeller_doc_japanese_ver.1.0Modeller_doc_japanese_ver.1.0
Modeller_doc_japanese_ver.1.0
 
Java SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心にJava SE 9の紹介: モジュール・システムを中心に
Java SE 9の紹介: モジュール・システムを中心に
 
OCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCPOCP Meetup Tokyo #05 ECK on OCP
OCP Meetup Tokyo #05 ECK on OCP
 
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する
【Ltech#10】LIFULL HOME'S ネイティブアプリ用APIのデプロイを自動化する
 
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
Cisco Modeling Labs (CML)を使ってネットワークを学ぼう!(DevNet編)
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012
 
AWSマイスターシリーズ(Elastic Beanstalk)
AWSマイスターシリーズ(Elastic Beanstalk)AWSマイスターシリーズ(Elastic Beanstalk)
AWSマイスターシリーズ(Elastic Beanstalk)
 
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
AWS Elastic Beanstalk 詳細 -ほぼ週刊AWSマイスターシリーズ第9回-
 
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニックOpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
 
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
Dockerセキュリティ: 今すぐ役に立つテクニックから,次世代技術まで
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited「今そこにある危機」を捉える ~ pg_stat_statements revisited
「今そこにある危機」を捉える ~ pg_stat_statements revisited
 
Spring3.1概要x di
Spring3.1概要x diSpring3.1概要x di
Spring3.1概要x di
 
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
毎日が憧れの新築、反復可能なデリバリーによる常時新築システム
 

Molecule入門