mirror of
https://github.com/crowdsecurity/crowdsec.git
synced 2025-05-18 07:14:03 +02:00
74 lines
2.2 KiB
YAML
74 lines
2.2 KiB
YAML
---
|
|
- name: "lookup $TEST_SUITE_GIT"
|
|
ansible.builtin.set_fact:
|
|
suite_git: "{{ lookup('ansible.builtin.env', 'TEST_SUITE_GIT') }}"
|
|
when: lookup('ansible.builtin.env', 'TEST_SUITE_GIT') | length>0
|
|
|
|
- name: "lookup $TEST_SUITE_VERSION"
|
|
ansible.builtin.set_fact:
|
|
suite_version: "{{ lookup('ansible.builtin.env', 'TEST_SUITE_VERSION') }}"
|
|
when: lookup('ansible.builtin.env', 'TEST_SUITE_VERSION') | length>0
|
|
|
|
- name: "lookup $TEST_SUITE_ZIP"
|
|
ansible.builtin.set_fact:
|
|
suite_zip: "{{ lookup('ansible.builtin.env', 'TEST_SUITE_ZIP') }}"
|
|
when: lookup('ansible.builtin.env', 'TEST_SUITE_ZIP') | length>0
|
|
|
|
- name: "install tests from zip file"
|
|
block:
|
|
- name: "install unzip"
|
|
become: true
|
|
ansible.builtin.package:
|
|
name:
|
|
- unzip
|
|
|
|
- name: "install tests: create crowdsec dir"
|
|
become: false
|
|
ansible.builtin.file:
|
|
path: "{{ ansible_env.HOME }}/crowdsec"
|
|
state: directory
|
|
mode: 0o700
|
|
|
|
- name: "install tests: extract crowdsec"
|
|
become: false
|
|
ansible.builtin.unarchive:
|
|
src: "{{ suite_zip }}"
|
|
dest: "{{ ansible_env.HOME }}/crowdsec"
|
|
|
|
- name: "install tests: git submodules for bats"
|
|
become: false
|
|
ansible.builtin.command:
|
|
cmd: "{{ item }}"
|
|
chdir: "{{ ansible_env.HOME }}/crowdsec"
|
|
with_items:
|
|
- git submodule init
|
|
- git submodule update
|
|
when:
|
|
- (suite_zip is defined) and (suite_zip|length > 0)
|
|
|
|
|
|
- name: "install tests from repository"
|
|
block:
|
|
- name: "install tests: checkout crowdsec"
|
|
become: false
|
|
ansible.builtin.git:
|
|
repo: "{{ suite_git }}"
|
|
dest: "{{ ansible_env.HOME }}/crowdsec"
|
|
version: "{{ suite_version }}"
|
|
|
|
# trust the dir if we need to test as root
|
|
- name: set safe.directory on crowdsec dir"
|
|
become: true
|
|
community.general.git_config:
|
|
scope: global
|
|
name: safe.directory
|
|
value: "{{ ansible_env.HOME }}/crowdsec"
|
|
when:
|
|
- (suite_zip is not defined) or (suite_zip|length == 0)
|
|
|
|
- name: "install tests: create crowdsec tests/local dir"
|
|
become: false
|
|
ansible.builtin.file:
|
|
path: "{{ ansible_env.HOME }}/crowdsec/tests/local"
|
|
state: directory
|
|
mode: 0o755
|