Compare commits
4 commits
0f74cc8c7e
...
b6cfc84e86
Author | SHA1 | Date | |
---|---|---|---|
b6cfc84e86 | |||
c0ccd78517 | |||
5b6d31742e | |||
04a271a1e5 |
5 changed files with 56 additions and 57 deletions
12
.envrc
12
.envrc
|
@ -13,9 +13,17 @@ PATH_add bin
|
||||||
python3 -m pip --require-virtualenv --quiet install --upgrade pip wheel
|
python3 -m pip --require-virtualenv --quiet install --upgrade pip wheel
|
||||||
python3 -m pip --require-virtualenv --quiet install --upgrade -r requirements.txt
|
python3 -m pip --require-virtualenv --quiet install --upgrade -r requirements.txt
|
||||||
|
|
||||||
rm -rf .cache/bw/git_deploy
|
# git deploy cache
|
||||||
export BW_GIT_DEPLOY_CACHE=.cache/bw/git_deploy
|
export BW_GIT_DEPLOY_CACHE=".cache/bw/git_deploy"
|
||||||
|
CREATED_AT=$(stat -f "%Sa" "$BW_GIT_DEPLOY_CACHE" | xargs -I{} date -f '%b %d %H:%M:%S %Y' -j "{}" '+%s')
|
||||||
|
NOW_AT=$(date +%s)
|
||||||
|
SECONDS_SINCE=$(expr "$NOW_AT" - "$CREATED_AT")
|
||||||
|
if [[ "$SECONDS_SINCE" > 86400 ]]
|
||||||
|
then
|
||||||
|
rm -rf "$BW_GIT_DEPLOY_CACHE"
|
||||||
|
fi
|
||||||
mkdir -p "$BW_GIT_DEPLOY_CACHE"
|
mkdir -p "$BW_GIT_DEPLOY_CACHE"
|
||||||
|
|
||||||
export EXPERIMENTAL_UPLOAD_VIA_CAT=1
|
export EXPERIMENTAL_UPLOAD_VIA_CAT=1
|
||||||
export BW_ITEM_WORKERS=32
|
export BW_ITEM_WORKERS=32
|
||||||
export BW_NODE_WORKERS=12
|
export BW_NODE_WORKERS=12
|
||||||
|
|
|
@ -4,6 +4,7 @@ from shlex import quote
|
||||||
directories['/var/lib/influxdb'] = {
|
directories['/var/lib/influxdb'] = {
|
||||||
'owner': 'influxdb',
|
'owner': 'influxdb',
|
||||||
'group': 'influxdb',
|
'group': 'influxdb',
|
||||||
|
'mode': '0750',
|
||||||
'needs': [
|
'needs': [
|
||||||
'zfs_dataset:tank/influxdb',
|
'zfs_dataset:tank/influxdb',
|
||||||
],
|
],
|
||||||
|
|
|
@ -1,58 +1,13 @@
|
||||||
size = node.metadata.get('systemd-swap')
|
|
||||||
|
|
||||||
actions = {
|
|
||||||
'stop_swap': {
|
|
||||||
'command': f'systemctl stop swapfile.swap',
|
|
||||||
'unless': f'! systemctl is-active swapfile.swap',
|
|
||||||
'triggered': True,
|
|
||||||
},
|
|
||||||
'remove_swapfile': {
|
|
||||||
'command': f'rm /swapfile',
|
|
||||||
'unless': f'! test -e /swapfile',
|
|
||||||
'triggered': True,
|
|
||||||
'needs': {
|
|
||||||
'action:stop_swap',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'create_swapfile': {
|
|
||||||
'command': f'fallocate -l {size} /swapfile',
|
|
||||||
'unless': f'stat -c %s /swapfile | grep ^{size}$',
|
|
||||||
'preceded_by': {
|
|
||||||
'action:stop_swap',
|
|
||||||
'action:remove_swapfile',
|
|
||||||
},
|
|
||||||
'triggers': {
|
|
||||||
'action:initialize_swapfile',
|
|
||||||
'svc_systemd:swapfile.swap:restart',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'swapfile_mode': {
|
|
||||||
'command': f'chmod 600 /swapfile',
|
|
||||||
'unless': f'stat -c "%a" /swapfile | grep -q "^600$"',
|
|
||||||
'needs': {
|
|
||||||
'action:create_swapfile',
|
|
||||||
},
|
|
||||||
'triggers': {
|
|
||||||
'svc_systemd:swapfile.swap:restart',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'initialize_swapfile': {
|
|
||||||
'command': f'mkswap /swapfile',
|
|
||||||
'triggered': True,
|
|
||||||
'needs': {
|
|
||||||
'action:swapfile_mode',
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
svc_systemd = {
|
svc_systemd = {
|
||||||
|
'swapfile-prepare.service': {
|
||||||
|
'enabled': True,
|
||||||
|
'running': None,
|
||||||
|
},
|
||||||
'swapfile.swap': {
|
'swapfile.swap': {
|
||||||
'preceded_by': {
|
'enabled': True,
|
||||||
'action:initialize_swapfile',
|
'running': True,
|
||||||
},
|
'needs': [
|
||||||
'needs': {
|
'svc_systemd:swapfile-prepare.service',
|
||||||
'action:initialize_swapfile',
|
],
|
||||||
'action:systemd-reload',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,3 +10,38 @@ defaults = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@metadata_reactor.provides(
|
||||||
|
'systemd/units/swapfile.swap',
|
||||||
|
)
|
||||||
|
def unit(metadata):
|
||||||
|
size = metadata.get('systemd-swap')
|
||||||
|
|
||||||
|
return {
|
||||||
|
'systemd': {
|
||||||
|
'units': {
|
||||||
|
'swapfile-prepare.service': {
|
||||||
|
'Unit': {
|
||||||
|
'Before': {
|
||||||
|
'swapfile.swap',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'Service': {
|
||||||
|
'Type': 'oneshot',
|
||||||
|
'ExecStartPre': [
|
||||||
|
'-/bin/rm /swapfile -f',
|
||||||
|
f'/bin/fallocate -l {size} /swapfile',
|
||||||
|
'/bin/chmod 600 /swapfile',
|
||||||
|
],
|
||||||
|
'ExecStart': '/usr/sbin/mkswap /swapfile',
|
||||||
|
},
|
||||||
|
'Install': {
|
||||||
|
'RequiredBy': {
|
||||||
|
'swapfile.swap',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@ template = '''
|
||||||
${option}=${k}=${v}
|
${option}=${k}=${v}
|
||||||
% endfor
|
% endfor
|
||||||
% elif isinstance(value, (list, set, tuple)):
|
% elif isinstance(value, (list, set, tuple)):
|
||||||
% for item in sorted(value):
|
% for item in (sorted(value) if isinstance(value, set) else value):
|
||||||
${option}=${item}
|
${option}=${item}
|
||||||
% endfor
|
% endfor
|
||||||
% elif isinstance(value, type(None)):
|
% elif isinstance(value, type(None)):
|
||||||
|
|
Loading…
Reference in a new issue