Skip to content

Commit 940f57e

Browse files
TheGoldenPlatypusgregolsky
authored andcommitted
RavenDB-25055: add debian11-12 molecule scenarios
1 parent 1cc49b2 commit 940f57e

File tree

13 files changed

+271
-3
lines changed

13 files changed

+271
-3
lines changed

.github/workflows/tests_role_ravendb_node.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,17 @@ jobs:
126126
working-directory: roles/ravendb_node
127127
run: molecule test -s unsecured
128128

129-
- name: Run Debian non-Ubuntu unsecured scenario
129+
- name: Run Debian-11 unsecured scenario
130130
working-directory: roles/ravendb_node
131-
run: molecule test -s unsecured-nonubuntu-debian
131+
run: molecule test -s debian-11
132+
133+
- name: Run Debian-12 unsecured scenario
134+
working-directory: roles/ravendb_node
135+
run: molecule test -s debian-12
136+
137+
- name: Run Debian-13 unsecured scenario
138+
working-directory: roles/ravendb_node
139+
run: molecule test -s debian-13
132140

133141
- name: Run Debian update scenario
134142
working-directory: roles/ravendb_node
File renamed without changes.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
dependency:
2+
name: galaxy
3+
driver:
4+
name: docker
5+
port_bindings:
6+
'8080': 80
7+
'38888': 38888
8+
'44443': 443
9+
platforms:
10+
- name: debian-11
11+
image: docker.io/geerlingguy/docker-debian11-ansible:latest
12+
privileged: true
13+
command: /sbin/init
14+
volumes:
15+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
16+
tmpfs:
17+
- /run
18+
- /tmp
19+
cgroupns_mode: host
20+
provisioner:
21+
name: ansible
22+
log: true
23+
scenario:
24+
name: debian-11
25+
test_sequence:
26+
- destroy
27+
- create
28+
- prepare
29+
- converge
30+
- verify
31+
verifier:
32+
name: ansible
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
- name: Prepare
2+
hosts: all
3+
become: true
4+
gather_facts: yes
5+
tasks:
6+
- name: Ensure adduser present
7+
ansible.builtin.apt:
8+
name: adduser
9+
state: present
10+
update_cache: yes
11+
when: ansible_facts.os_family | lower == 'debian'
File renamed without changes.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
- name: Unsecured
3+
hosts: all
4+
tasks:
5+
- name: "Include ravendb_node"
6+
include_role:
7+
name: ravendb.ravendb.ravendb_node
8+
vars:
9+
ravendb_state: present
10+
ravendb_version: latest
11+
ravendb_version_minor: 6.2
12+
ravendb_release_channel: stable
13+
ravendb_arch: linux-x64
14+
ravendb_settings_preset: default
15+
ravendb_settings_override:
16+
Logs.Mode: "Information"
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
dependency:
2+
name: galaxy
3+
driver:
4+
name: docker
5+
port_bindings:
6+
'8080': 80
7+
'38888': 38888
8+
'44443': 443
9+
platforms:
10+
- name: debian-12
11+
image: docker.io/geerlingguy/docker-debian12-ansible:latest
12+
privileged: true
13+
command: /usr/sbin/init
14+
volumes:
15+
- '/sys/fs/cgroup:/sys/fs/cgroup:rw'
16+
tmpfs:
17+
- /run
18+
- /tmp
19+
cgroupns_mode: host
20+
provisioner:
21+
name: ansible
22+
log: true
23+
scenario:
24+
name: debian-12
25+
test_sequence:
26+
- destroy
27+
- create
28+
- prepare
29+
- converge
30+
- verify
31+
verifier:
32+
name: ansible
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
- name: Prepare
2+
hosts: all
3+
become: true
4+
gather_facts: yes
5+
tasks:
6+
- name: Ensure adduser present
7+
ansible.builtin.apt:
8+
name: adduser
9+
state: present
10+
update_cache: yes
11+
when: ansible_facts.os_family | lower == 'debian'
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
- name: Verify
3+
hosts: all
4+
gather_facts: false
5+
tasks:
6+
7+
- name: Load settings.json
8+
become: true
9+
slurp:
10+
src: "/etc/ravendb/settings.json"
11+
register: settings_file
12+
13+
- name: Decode and parse settings.json
14+
set_fact:
15+
settings: "{{ settings_file['content'] | b64decode | from_json }}"
16+
17+
- name: Assert that settings override was applied
18+
ansible.builtin.assert:
19+
that:
20+
- settings['Logs.Mode'] == "Information"
21+
22+
- name: Assert it's unsecured
23+
ansible.builtin.assert:
24+
that:
25+
- settings['ServerUrl'] is not regex('^https:')
26+
27+
- name: Get service status
28+
become: true
29+
ansible.builtin.systemd:
30+
name: ravendb.service
31+
state: started
32+
register: service_status
33+
34+
- name: Assert service state
35+
ansible.builtin.assert:
36+
that:
37+
- service_status.status['ActiveState'] == 'active'
38+
39+
- name: Check if can get RavenDB studio HTML
40+
ansible.builtin.uri:
41+
url: http://localhost:8080/studio/index.html
42+
43+
- name: Get databases
44+
ansible.builtin.uri:
45+
url: http://localhost:8080/databases
46+
register: databases
47+
48+
- name: Set random DB name
49+
set_fact:
50+
db_name: "db{{ 1000000 | random }}"
51+
52+
- name: Create a database
53+
ansible.builtin.uri:
54+
url: "http://localhost:8080/admin/databases?name={{ db_name }}&replicationFactor=1"
55+
method: PUT
56+
body_format: json
57+
body: |
58+
{
59+
"DatabaseName": "{{ db_name }}",
60+
"Settings": {},
61+
"Disabled": false,
62+
"Encrypted": false,
63+
"Topology": { "DynamicNodesDistribution": false }
64+
}
65+
status_code: 201
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
- name: Unsecured
3+
hosts: all
4+
tasks:
5+
- name: "Include ravendb_node"
6+
include_role:
7+
name: ravendb.ravendb.ravendb_node
8+
vars:
9+
ravendb_state: present
10+
ravendb_version: latest
11+
ravendb_version_minor: 6.2
12+
ravendb_release_channel: stable
13+
ravendb_arch: linux-x64
14+
ravendb_settings_preset: default
15+
ravendb_settings_override:
16+
Logs.Mode: "Information"

0 commit comments

Comments
 (0)