bundlewrap/bundles/gitea/items.py

84 lines
1.9 KiB
Python
Raw Normal View History

2020-08-20 13:34:27 +00:00
downloads = {
'/usr/local/bin/gitea': {
'url': 'https://dl.gitea.io/gitea/{version}/gitea-{version}-linux-amd64'.format(version=node.metadata['gitea']['version']),
'sha256': node.metadata['gitea']['sha256'],
'triggers': {
'svc_systemd:gitea:restart',
},
'preceded_by': {
2021-02-20 14:47:35 +00:00
'svc_systemd:gitea:stop',
},
2020-08-20 13:34:27 +00:00
},
}
users = {
'git': {},
}
2020-08-20 13:34:27 +00:00
directories = {
'/home/git': {
'mode': '0755',
'owner': 'git',
'group': 'git',
},
'/home/git/.ssh': {
'mode': '0755',
'owner': 'git',
'group': 'git',
},
2020-08-20 13:34:27 +00:00
'/var/lib/gitea': {
'owner': 'git',
'mode': '0700',
'triggers': {
'svc_systemd:gitea:restart',
},
},
}
actions = {
'chmod_gitea': {
'command': 'chmod a+x /usr/local/bin/gitea',
'unless': 'test -x /usr/local/bin/gitea',
2020-10-18 14:18:12 +00:00
'needs': {
'download:/usr/local/bin/gitea',
},
2020-08-20 13:34:27 +00:00
},
}
files = {
'/etc/systemd/system/gitea.service': {
'content_type': 'mako',
'context': node.metadata['gitea'],
'triggers': {
'action:systemd-reload',
2021-02-20 14:47:35 +00:00
'svc_systemd:gitea:restart',
2020-08-20 13:34:27 +00:00
},
},
'/etc/gitea/app.ini': {
'content_type': 'mako',
'context': node.metadata['gitea'],
'triggers': {
'svc_systemd:gitea:restart',
},
},
}
if node.metadata['gitea'].get('install_ssh_key', False):
files['/home/git/.ssh/id_ed25519'] = {
'content': repo.vault.decrypt_file(f'gitea/files/ssh-keys/{node.name}.key.vault'),
'mode': '0600',
'owner': 'git',
'group': 'git',
}
2020-08-20 13:34:27 +00:00
svc_systemd = {
'gitea': {
'needs': {
'action:chmod_gitea',
'download:/usr/local/bin/gitea',
'file:/etc/systemd/system/gitea.service',
'file:/etc/gitea/app.ini',
},
},
}