From e623f61f2771788bb6efe114d7b6790dbde15184 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 30 Jul 2021 13:24:12 +0200 Subject: [PATCH] Init this thing --- .drone.yml | 9 ++++ .envrc.sample | 9 ++++ README.md | 5 ++ ansible-capsul/defaults/main.yml | 1 + ansible-capsul/molecule/default/converge.yml | 5 ++ ansible-capsul/molecule/default/molecule.yml | 15 ++++++ ansible-capsul/tasks/main.yml | 1 + makefile | 9 ++++ requirements.txt | 57 ++++++++++++++++++++ 9 files changed, 111 insertions(+) create mode 100644 .drone.yml create mode 100644 .envrc.sample create mode 100644 README.md create mode 100644 ansible-capsul/defaults/main.yml create mode 100644 ansible-capsul/molecule/default/converge.yml create mode 100644 ansible-capsul/molecule/default/molecule.yml create mode 100644 ansible-capsul/tasks/main.yml create mode 100644 makefile create mode 100644 requirements.txt diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..5365e4e --- /dev/null +++ b/.drone.yml @@ -0,0 +1,9 @@ +--- +kind: pipeline +name: default +steps: + - name: molecule test + image: python + commands: + - pip install -r requirements.txt + - molecule test diff --git a/.envrc.sample b/.envrc.sample new file mode 100644 index 0000000..d9f0cbf --- /dev/null +++ b/.envrc.sample @@ -0,0 +1,9 @@ +export ANSIBLE_USER=$REMOTE_USER +export REMOTE_USER=decentral1se + +export INSTANCE_UUID=$RANDOM + +export MOLECULE_NO_LOG=False + +export PASSWORD_STORE_DIR=$(pwd)/../../autonomic/passwords/passwords/ +export HCLOUD_TOKEN=$(pass show logins/hetzner/cicd/api_key) diff --git a/README.md b/README.md new file mode 100644 index 0000000..77510cd --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# serverscoop.capsul + +[![Build Status](https://build.coopcloud.tech/api/badges/servers.coop/ansible-capsul/status.svg?ref=refs/heads/main)](https://build.coopcloud.tech/servers.coop/ansible-capsul) + +> Provision [Capsul](https://git.cyberia.club/Cyberia/capsul-flask) with [Ansible](https://docs.ansible.com) diff --git a/ansible-capsul/defaults/main.yml b/ansible-capsul/defaults/main.yml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/ansible-capsul/defaults/main.yml @@ -0,0 +1 @@ +--- diff --git a/ansible-capsul/molecule/default/converge.yml b/ansible-capsul/molecule/default/converge.yml new file mode 100644 index 0000000..74f45fd --- /dev/null +++ b/ansible-capsul/molecule/default/converge.yml @@ -0,0 +1,5 @@ +--- +- name: Converge + hosts: all + roles: + - role: ansible-capsul diff --git a/ansible-capsul/molecule/default/molecule.yml b/ansible-capsul/molecule/default/molecule.yml new file mode 100644 index 0000000..2e7c1ac --- /dev/null +++ b/ansible-capsul/molecule/default/molecule.yml @@ -0,0 +1,15 @@ +--- +dependency: + name: galaxy +driver: + name: hetznercloud +platforms: + - name: "ansible-capsul-${INSTANCE_UUID}" + server_type: cx11 + image: debian-10 +provisioner: + name: ansible +lint: | + set -e + yamllint . + ansible-lint . diff --git a/ansible-capsul/tasks/main.yml b/ansible-capsul/tasks/main.yml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/ansible-capsul/tasks/main.yml @@ -0,0 +1 @@ +--- diff --git a/makefile b/makefile new file mode 100644 index 0000000..4b6c638 --- /dev/null +++ b/makefile @@ -0,0 +1,9 @@ +ROLE := ansible-capsul + +deps: + @if [ ! -d ".venv" ]; then python3 -m venv .venv && .venv/bin/pip install -r requirements.txt; fi + +test: + cd $(ROLE) && ../.venv/bin/molecule test --destroy=never + +.PHONY: deps test diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..8077e22 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,57 @@ +ansible==5.7.1 +ansible-compat==2.0.3 +ansible-core==2.12.5 +ansible-lint==6.1.0 +arrow==1.2.2 +attrs==21.4.0 +bcrypt==3.2.2 +binaryornot==0.4.4 +bracex==2.2.1 +Cerberus==1.3.2 +certifi==2021.10.8 +cffi==1.15.0 +chardet==4.0.0 +charset-normalizer==2.0.12 +click==8.1.3 +click-help-colors==0.9.1 +commonmark==0.9.1 +cookiecutter==1.7.3 +cryptography==37.0.2 +enrich==1.2.7 +future==0.18.2 +hcloud==1.16.0 +idna==3.3 +iniconfig==1.1.1 +Jinja2==3.1.2 +jinja2-time==0.2.0 +jsonschema==4.5.1 +MarkupSafe==2.1.1 +molecule==3.6.1 +molecule-hetznercloud==1.3.0 +packaging==21.3 +paramiko==2.10.4 +pathspec==0.9.0 +pluggy==1.0.0 +poyo==0.5.0 +py==1.11.0 +pycparser==2.21 +Pygments==2.12.0 +PyNaCl==1.5.0 +pyparsing==3.0.9 +pyrsistent==0.18.1 +pytest==7.1.2 +python-dateutil==2.8.2 +python-slugify==6.1.2 +PyYAML==5.4.1 +requests==2.27.1 +resolvelib==0.5.4 +rich==12.4.1 +ruamel.yaml==0.17.21 +ruamel.yaml.clib==0.2.6 +six==1.16.0 +subprocess-tee==0.3.5 +text-unidecode==1.3 +tomli==2.0.1 +urllib3==1.26.9 +wcmatch==8.3 +yamllint==1.26.3