くりにっき

フルスタックキュアエンジニアです

CI

mainブランチよりも古いブランチでCIを実行できなくしたい

CI

たまにやりたくなるやつメモ モチベーション 実際のスクリプト おまけ:実際にGitLab CIで動かしてるやつ モチベーション CIでTerraformを動かしていると mainブランチを自動apply PRとかでマージ前に挙動を確認したい場合はPRに出ているブランチを手動apply…

Keyless Terraformに特化したTerraformテンプレートリポジトリを作った(AWS, GCP対応)

tl;dr; 前置き モチベーション テンプレートリポジトリについて 頑張った点:Terraformを実行するための初期設定をCloud FormationやDeployment Managerで行うようにした tl;dr; github.com github.com 前置き 9月くらいにGitHub ActionsでOpenID Connector…

GitHub-native DependabotでもAuto mergeをやりたかった

tl;dr; 前置き GitHub Actionsでやる方法 Dependabot Auto Merge メリット デメリット 備考 Merge me! メリット デメリット Dependabot Pull Request Action メリット デメリット 番外編 Renovateを使う 近況 tl;dr; いくつかやり方はあるんだけどどれも一長…

ItamaeのCIをTravis CIからGitHub Actionsに移行した

tl;dr; 前置き:ItamaeのCIの式年遷宮の歴史 移行のモチベーション ハマったこと 良かったこと 悪かったこと tl;dr; github.com 前置き:ItamaeのCIの式年遷宮の歴史 僕がコミッタになる前はWercker + Vagrant + DigitalOceanを利用 僕とうなすけさん( id:y…

GitHub Actionsのpushイベントとpull_requestイベントではGITHUB_SHAが異なる

tl;dr; 検証内容 サンプルコード masterブランチに普通にpushした時 PullRequestに対してpushした場合 pushイベントの結果 pull_requestイベントの結果 解説 2021/01/08 追記 GITHUB_SHAが異なることで何が困るか 余談:tfnotifyでpull_requestイベントの時…

Cloud Functions CI/CD俺的ベストプラクティス

AWS Lambda CI/CD俺的ベストプラクティス - くりにっき のCloud Functions版です sue445.hatenablog.com 最近Cloud Functions使うことがあってCI面からフレームワークなどを検討しました。AWS Lambdaほどガッツリ使ってないので比較対象が少ないのはご愛嬌 T…

GitHub Actions上でPRを作る時はsecrets.GITHUB_TOKENは使わない方がよさそう

事象 GitHub Actions上で使える secrets.GITHUB_TOKEN だと別のジョブを起動できないというのが一番の理由。 https://docs.github.com/en/actions/reference/events-that-trigger-workflows#triggering-new-workflows-using-a-personal-access-token 具体的…

#ginzarails にRuby on CIで発表した

RubyKaigi2020 用に準備してた資料の供養として発表させていただきました。 僕が知ってるCIの知見や2020年時点でのCIのトレンドはだいたい詰め込めたと思っています。 connpass ginza-rails.connpass.com スライド

RubyKaigi 2020のCFPに採択されました

昨年 に続き、今年も登壇させてもらえることになりました! rubykaigi.org 今回は「Ruby on CI」というタイトルで、CIマニアがRuby製のgemやアプリのCIについて延々と話します。 https://rubykaigi.org/2020/presentations/sue445.html#apr10 CFPはここにあ…

GitHub ActionsでTravis CIのallow_failures的なやつをやりたい

いわゆるジョブが失敗しても成功扱いしたい的なやつ tl;dr; jobs: test: runs-on: ubuntu-latest container: ${{ matrix.ruby }} strategy: fail-fast: false matrix: ruby: - ruby:2.2 - ruby:2.3 - ruby:2.4 - ruby:2.5 - ruby:2.6 - ruby:2.7 - rubylang/…

個人gemのCIをほぼ全部Travis CIからGitHub Actionsに移行した

2日間で30個くらいのリポジトリでGitHub Actionsに移行したのでメモ tl;dr; モチベーション GitHub Actionsを選んだ理由 GitHub ActionsでgemのCIをするための設定 2020/1/4 0:40追記 weekly build 公式のactions/setup-rubyではなくmasa-iwasaki/setup-rben…

CIマニアから見たGitHub Actions(Beta)の使い所

1ヶ月くらい使って勘所が見えてきたのでメモ メリット 1リポジトリ辺り20並列までジョブを並列実行できる ジョブ実行時はアクセストークンが勝手に設定されている マトリクステストがやりやすい 実際にGitHub Actionsに移行したプロダクト zatsu_monitor act…

AWS Lambda CI/CD俺的ベストプラクティス

Lambdaで動くアプリやフレームワークの事例はよく見るのですが、LambdaのCIやCDにしやすさに主眼をおいた紹介はあんまり見ないので現時点での自分のベストプラクティスのメモです tl;dr; このエントリで書いていること Lambdaをデプロイするのに肝になること…

34歳になった&itamaeプラグインを本気でCIする #omotesandorb

自分の誕生日である4/7に表参道.rb #10が開催ということでバースデーLTをしてきました omotesandorb.connpass.com 例のやつ 近況 最近送ったPullRequest vagrant-awsプラグイン(のスポットインスタンス対応版のフォーク) vagrant-cloudstackプラグイン(1…

Travis CIで暗号化したパラメータを2つ以上使う方法

テストコード中でTwitter APIを使っているんだけど、それをそのままTravis CIでテストしようとするとgithubにconsumer keyやconsumer serrectをcommitする必要が出てくるため、Travis CIで使うために暗号化したパラメータを複数渡す方法を探していました。 …

GithubにあるリポジトリをTravis CI連携する手順 #junitbook

『JUnit実践入門』写経・実践会 in 横浜 #7 のハンズオン用。このエントリではJava(Groovy)について書いていますが他言語でもだいたい同じです。 前準備 : MavenかGradleでテストできる状態にあるプログラムをGithubに公開する 1 : Travis CIにアクセスする …