Download & Run Jenkins
./jenkins run
-> http://127.0.0.1:8080/jenkins
Use Jenkins cli
cat /usr/share/applications/google-chrome.desktop \ | |
| sed -E 's,^(Exec=[^ ]+)(.*),\1 --force-device-scale-factor=1.15\2,g' \ | |
> ~/.local/share/applications/google-chrome.desktop |
#!/usr/bin/env python | |
# coding: utf-8 | |
# Usage: | |
# python countries.py | jq -R 'split("\t") | {code: .[4], name: .[0], nameEn: .[1], location: .[5]}' | jq -s . | |
import sys | |
import urllib.request | |
import lxml | |
import lxml.html |
#!/usr/bin/env bash | |
# cp <module_name>.sh ./library/ | |
# ansible localhost -M ./library/ -m <module_name> -a 'arg1=foo' --check -vvv | |
set -eu -o pipefail | |
# Arguments are passed as a file | |
arg_file="$(dirname "${BASH_SOURCE[0]}")/args" |
Download & Run Jenkins
./jenkins run
-> http://127.0.0.1:8080/jenkins
Use Jenkins cli
pacman --sync PACKAGE_NAME # install package | |
pacman --sync --refresh --sysupgrade # upgrade all package | |
pacman --remove --recursive PACKAGE_NAME # remove package | |
cat 'IgnorePkg = PACKAGE_NAME' >> /etc/pacman.conf # ignore upgrade | |
asp checkout PACKAGE_NAME # get package source | |
makepkg --syncdeps --skippgpcheck # build package, require base-devel package group | |
# remove unneeded packages |
#!/usr/bin/env bash | |
set -eu -o pipefail | |
# given: | |
input=$(cat << JSON | |
{ | |
"a": 1, | |
"b": { "c": 2 }, | |
"d": { "e": [3, 4] } |
Recruit Engineers Advent Calendar 2019 の3日目(12/3)のエントリーです。
アプリケーションのテスト、ビルドなどを始め様々な用途で使われるJenkinsですが、私は以下のような運用作業の自動化に利用しています。
# show sentinel status | |
redis-cli -p $sentinel_port info sentinel |
#!/usr/bin/env bash | |
set -eu | |
on_exit() { | |
exit_status="$?" | |
echo "--- on_exit: exit_status=$exit_status" | |
return "$exit_status" | |
} |
# ボリュームから複数ファイルを取り出す | |
docker run --rm -v data:/data busybox tar -C /data -cf - hoge huga | tar -xf - |