最初に 5 ~ 10 分程度お時間を頂いて本日お時間を頂いた経緯などを説明したあと、色々お話を聞かせてもらえたらと思います。
- 如何に Terraform の state を分割するか
- 如何に Terraform によるリソースの管理を SRE から developer に委譲するか
- AWS のリソースを Terraform で管理している
.*\[ci skip\].*|.*\[CI SKIP\].*|.*\[skip ci\].*|.*\[SKIP CI\].* |
#!/usr/bin/env bash | |
set -eu | |
if [ -z "${CODEBUILD_WEBHOOK_EVENT:-}" ]; then | |
repo=$(echo "${CODEBUILD_SOURCE_REPO_URL}" | sed -E "s|https://github\.com/(.*)$|\1|" | sed -E "s|\.git$||") | |
# https://docs.github.com/en/rest/reference/repos#list-pull-requests-associated-with-a-commit | |
body=$(curl \ | |
-H "Authorization: token $GITHUB_TOKEN" \ | |
-H "Accept: application/vnd.github.groot-preview+json" \ |
package sentry | |
import ( | |
"time" | |
"github.com/getsentry/sentry-go" | |
) | |
type Event struct { | |
Error error |
commands: | |
apply: | |
description: | | |
Run `terraform apply` and add a comment to the pull request or Git commit. | |
parameters: | |
apply_options: | |
default: "" | |
description: | | |
The options of `terraform apply` command. The option `-auto-approve` is set automatically. | |
For example, `-refresh=false -parallelism=20`. |
curl -u admin:admin -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'X-Requested-By: api' -X POST 'http://127.0.0.1:9000/api/events/definitions?pretty=true' -d ' | |
{ | |
"title": "new-event-definition", | |
"description": "", | |
"priority": 2, | |
"alert": true, | |
"config": { | |
"type": "aggregation-v1", | |
"query": "test", | |
"streams": [ |
package main | |
import ( | |
"fmt" | |
"os" | |
"os/exec" | |
) | |
func main() { | |
cmd := exec.Command("sh", "-c", "ls | fzf") |
send-pr() { | |
local remote=`git config branch.master.remote` | |
local remote_url=`git config remote.${remote}.url` | |
case "$remote_url" in | |
https://github.com*) | |
git-pr | |
;; | |
https://ghe.example.com*) | |
ghe-pr | |
;; |
dctag() { | |
if [ $# -eq 0 -o "$1" = "help" -o "$1" = "--help" -o "$1" = "-help" ]; then | |
cat << EOS | |
List Docker image tags | |
Usage: $ dctag <image name> | |
ex. $ dctag alpine | |
EOS | |
return 0 | |
fi | |
if [ $# -ne 1 ]; then |
docker run -v /var/run/docker.sock:/var/run/docker.sock -ti --rm -e USER_NAME=$USER_NAME -e PASSWORD=$PASSWORD docker:19.03.1 sh -c 'echo $PASSWORD | docker login $REGISTRY --username $USER_NAME --password-stdin > /dev/null 2> /tmp/error.txt && cat /root/.docker/config.json || (cat /tmp/error.txt >&2 && exit 1)' |