aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeo <thinkabit.ukim@gmail.com>2020-10-16 05:45:06 -0300
committerLeo <thinkabit.ukim@gmail.com>2020-10-16 14:13:46 +0000
commitaac120479b3516c1a93475d820de0f4d9d419dee (patch)
tree438140a407fb0d74a14a219ee8a8e8866f98be3b
parent1c91c42488dbe0f50748aa289bb20c5c4c29be2c (diff)
downloadaports-aac120479b3516c1a93475d820de0f4d9d419dee.tar.gz
aports-aac120479b3516c1a93475d820de0f4d9d419dee.tar.bz2
aports-aac120479b3516c1a93475d820de0f4d9d419dee.tar.xz
main/ansible: new aport
https://ansible.com/ A configuration-management, deployment, task-execution, and multinode orchestration framework
-rw-r--r--main/ansible/0001-new-module-lbu.patch151
-rw-r--r--main/ansible/APKBUILD29
2 files changed, 180 insertions, 0 deletions
diff --git a/main/ansible/0001-new-module-lbu.patch b/main/ansible/0001-new-module-lbu.patch
new file mode 100644
index 0000000000..6147d3d3dd
--- /dev/null
+++ b/main/ansible/0001-new-module-lbu.patch
@@ -0,0 +1,151 @@
+From a419a9539ddff10fa4d3fd7460b117a9f4dd2691 Mon Sep 17 00:00:00 2001
+From: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
+Date: Thu, 19 Sep 2019 10:58:07 +0300
+Subject: [PATCH] new module: lbu
+
+Alpine Linux Local Backup Utility
+---
+ lib/ansible/modules/system/lbu.py | 131 ++++++++++++++++++++++++++++++
+ 1 file changed, 131 insertions(+)
+ create mode 100644 lib/ansible/modules/system/lbu.py
+
+diff --git a/lib/ansible/modules/system/lbu.py b/lib/ansible/modules/system/lbu.py
+new file mode 100644
+index 0000000000..9952ec29f1
+--- /dev/null
++++ b/lib/ansible/modules/lbu.py
+@@ -0,0 +1,131 @@
++#!/usr/bin/python
++
++# Copyright: (c) 2019, Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
++# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
++
++from __future__ import absolute_import, division, print_function
++__metaclass__ = type
++
++ANSIBLE_METADATA = {
++ 'metadata_version': '1.1',
++ 'status': ['preview'],
++ 'supported_by': 'community'
++}
++
++DOCUMENTATION = '''
++---
++module: lbu
++
++short_description: Local Backup Utility for Alpine Linux
++
++version_added: "2.10"
++
++description:
++- Manage Local Backup Utility of Alpine Linux in run-from-RAM mode
++
++options:
++ commit:
++ description:
++ - Control whether to commit changed files.
++ type: bool
++ exclude:
++ description:
++ - List of paths to exclude.
++ type: list
++ include:
++ description:
++ - List of paths to include.
++ type: list
++
++author:
++- Kaarle Ritvanen (@kunkku)
++'''
++
++EXAMPLES = '''
++# Commit changed files (if any)
++- name: Commit
++ lbu:
++ commit: true
++
++# Exclude path and commit
++- name: Exclude directory
++ lbu:
++ commit: true
++ exclude:
++ - /etc/opt
++
++# Include paths without committing
++- name: Include file and directory
++ lbu:
++ include:
++ - /root/.ssh/authorized_keys
++ - /var/lib/misc
++'''
++
++RETURN = '''
++msg:
++ description: Error message
++ type: str
++ returned: on failure
++'''
++
++from ansible.module_utils.basic import AnsibleModule
++
++import os.path
++
++
++def run_module():
++ module = AnsibleModule(
++ argument_spec={
++ 'commit': {'type': 'bool'},
++ 'exclude': {'type': 'list', 'elements': 'str'},
++ 'include': {'type': 'list', 'elements': 'str'}
++ },
++ supports_check_mode=True
++ )
++
++ changed = False
++
++ def run_lbu(*args):
++ code, stdout, stderr = module.run_command(
++ [module.get_bin_path('lbu', required=True)] + list(args)
++ )
++ if code:
++ module.fail_json(changed=changed, msg=stderr)
++ return stdout
++
++ update = False
++ commit = False
++
++ for param in ('include', 'exclude'):
++ if module.params[param]:
++ paths = run_lbu(param, '-l').split('\n')
++ for path in module.params[param]:
++ if os.path.normpath('/' + path)[1:] not in paths:
++ update = True
++
++ if module.params['commit']:
++ commit = update or run_lbu('status') > ''
++
++ if module.check_mode:
++ module.exit_json(changed=update or commit)
++
++ if update:
++ for param in ('include', 'exclude'):
++ if module.params[param]:
++ run_lbu(param, *module.params[param])
++ changed = True
++
++ if commit:
++ run_lbu('commit')
++ changed = True
++
++ module.exit_json(changed=changed)
++
++
++def main():
++ run_module()
++
++
++if __name__ == '__main__':
++ main()
+--
+2.20.1
+
diff --git a/main/ansible/APKBUILD b/main/ansible/APKBUILD
new file mode 100644
index 0000000000..8ecc1da9f6
--- /dev/null
+++ b/main/ansible/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Łukasz Jendrysik <scadu@yandex.com>
+# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
+# Contributor: Takuya Noguchi <takninnovationresearch@gmail.com>
+# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
+pkgname=ansible
+pkgver=2.10.1
+pkgrel=0
+pkgdesc="A configuration-management, deployment, task-execution, and multinode orchestration framework"
+url="https://ansible.com/"
+options="!check" # TODO: enable tests
+arch="noarch"
+license="GPL-3.0-or-later"
+depends="python3 ansible-base"
+makedepends="py3-setuptools"
+source="https://pypi.python.org/packages/source/a/ansible/ansible-$pkgver.tar.gz"
+
+# secfixes:
+# 2.10.1-r0:
+# - CVE-2020-25646
+
+build() {
+ python3 setup.py build
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="46bbbfb22e5c3715df0069d420b174877dffd59f91613779e7057648d15751d528a9cb57357709d0c04a507a60e20c87b109ba1904e1f313441cf5832ba93b5e ansible-2.10.1.tar.gz"