Jenkins

Kubernetes時代のCI/CD Jenkins Xとは?-前編

2018年3月に Jenkins を開発している CloudBee から「Jenkins X」というプロダクトが発表されました。

https://jenkins.io/blog/2018/03/19/introducing-jenkins-x/

社内で検証する機会がありましたので、この記事では前後編に渡って、CI/CD の解説から、Jenkins X を実際に使うまでに必要となった道のりや、使ってみての感想を書いていきたいと思います。

続きを読む

Jenkinsとwebpack bundle analyzerでフロントエンドプロジェクトの合計サイズを定常的に計測

今回はフロントエンド側の成果物がどの程度容量で出力されているか計測するための Tips をご紹介したいと思います。

そもそも SEROKU ではバックエンドとフロントエンドにプロジェクトが分かれており、フロントエンドプロジェクトは Angular を利用しています。実装のモチベーションとなったのは、「プロジェクト内で minify されていない画像や動画がプロジェクトに紛れ込んだ時にすぐに気づける仕組みを構築したかった」ためです。

SEROKU の開発では CI を積極的に採用しており、Jenkins の Multibranch pipeline を活用して、ブランチにマージする前にテストを自動的に行うようになっています。この既存の Multibranch pipeline を使っているジョブに対して、プロジェクトの成果物の総容量の遷移をグラフで出力する機能を付け加えました。

続きを読む

Kubernetes時代のCI/CD Jenkins Xとは?|最終回

いよいよ長期に渡り連載してきた本シリーズも最終回です!

後編その1 で予告した通り、前回作成した quickstart プロジェクト中のコードを修正し、production 環境へのリリース作業を実施し、最後に筆者が Jenkins X を実際に触って受けた印象を書いてみたいと思います。

本記事では、前回の記事からの作業をそのまま引き継いだ形で記載しているため、まだ読まれていない方は先に 後編その1 から読まれることをお勧めします。

続きを読む

Puppeteerで定期的にスクリーンショットを取得する方法

たかがスクリーンショット、されどスクリーンショット。

昔からWebページやWebシステムなどのスクリーンショットを手軽に撮りたい、定期的・自動的に撮りたいというニーズは存在し、古くは ImageMagick 利用が主流の時代があり、ここ5年程では Selenium の利用が活発でした。そして2018年現在注目を集めているのが、Google 製の Headless Chrome API の node.js 実装である Puppeteer です。

既に Selenium のノウハウを持っているチームにとっては、Puppeteer の利用自体が大きなパラダイムシフトになるわけではないのかもしれませんが、こういった小さなタスクから最新かつスマートな技術を実験し取り入れていくのが、チーム内のリテラシー向上や学習意欲アップには効果的です。

本記事では、Puppeteer と docker、そして Jenkins を使って、サクッと定期的にスクリーンショットを撮る方法を、実際の現場で利用できるスクリプトと共に紹介します。

続きを読む