Skip to content

Commit ff3ee33

Browse files
RavenDB-24201: update CI wf according to ansible steering committee's review
1 parent 5a4931f commit ff3ee33

File tree

1 file changed

+123
-178
lines changed

1 file changed

+123
-178
lines changed

.github/workflows/tests_role_ravendb_node.yml

Lines changed: 123 additions & 178 deletions
Original file line numberDiff line numberDiff line change
@@ -9,33 +9,49 @@ on:
99
- cron: "0 10 * * 1" # every Monday at 10:00 UTC
1010

1111
jobs:
12-
legacy-sanity:
13-
name: Ansible Sanity Tests (Python 2.7)
14-
runs-on: ubuntu-latest
15-
container:
16-
image: python:2.7
17-
steps:
18-
- name: Checkout code
19-
uses: actions/checkout@v4
20-
21-
- name: Fix collection path for ansible-test # should be removed once we restructure
22-
run: |
23-
mkdir -p ansible_collections/ravendb/ravendb
24-
tar --exclude=ansible_collections -cf - . | tar -C ansible_collections/ravendb/ravendb -xf -
25-
cd ansible_collections/ravendb/ravendb
26-
27-
- name: Install dependencies
28-
run: |
29-
python -m pip install --upgrade pip
30-
pip install "ansible-core@https://github.com/ansible/ansible/archive/stable-2.9.tar.gz"
31-
32-
- name: Run ansible-test sanity
33-
working-directory: ansible_collections/ravendb/ravendb
34-
run: |
35-
ansible-test sanity --python 2.7 -v --color
36-
37-
sanity:
38-
name: Ansible Sanity Tests
12+
# sanity:
13+
# name: Ansible Sanity Tests
14+
# runs-on: ubuntu-latest
15+
# strategy:
16+
# matrix:
17+
# include:
18+
# - python-version: "3.12"
19+
# ansible-core: stable-2.16
20+
# - python-version: "3.12"
21+
# ansible-core: stable-2.17
22+
# - python-version: "3.13"
23+
# ansible-core: stable-2.18
24+
# - python-version: "3.13"
25+
# ansible-core: stable-2.19
26+
# - python-version: "3.13"
27+
# ansible-core: devel
28+
# steps:
29+
# - name: Checkout code
30+
# uses: actions/checkout@v4
31+
32+
# - name: Fix collection path for ansible-test
33+
# run: |
34+
# mkdir -p ansible_collections/ravendb/ravendb
35+
# rsync -av --exclude ansible_collections ./ ansible_collections/ravendb/ravendb
36+
# cd ansible_collections/ravendb/ravendb
37+
38+
# - name: Set up Python (host)
39+
# uses: actions/setup-python@v5
40+
# with:
41+
# python-version: ${{ matrix.python-version }}
42+
43+
# - name: Install dependencies
44+
# run: |
45+
# python -m pip install --upgrade pip
46+
# pip install "ansible-core@https://github.com/ansible/ansible/archive/${{ matrix.ansible-core }}.tar.gz"
47+
48+
# - name: Run ansible-test sanity
49+
# working-directory: ansible_collections/ravendb/ravendb
50+
# run: |
51+
# ansible-test sanity --docker -v --color
52+
53+
integration-and-unit:
54+
name: Integration + Unit Tests
3955
runs-on: ubuntu-latest
4056
strategy:
4157
matrix:
@@ -46,180 +62,109 @@ jobs:
4662
ansible-core: stable-2.16
4763
- python-version: "3.12"
4864
ansible-core: stable-2.16
65+
# - python-version: "3.10"
66+
# ansible-core: stable-2.17
67+
# - python-version: "3.11"
68+
# ansible-core: stable-2.17
69+
# - python-version: "3.12"
70+
# ansible-core: stable-2.17
71+
# - python-version: "3.11"
72+
# ansible-core: stable-2.18
73+
# - python-version: "3.12"
74+
# ansible-core: stable-2.18
75+
# - python-version: "3.13"
76+
# ansible-core: stable-2.18
77+
# - python-version: "3.11"
78+
# ansible-core: stable-2.19
79+
# - python-version: "3.12"
80+
# ansible-core: stable-2.19
81+
# - python-version: "3.13"
82+
# ansible-core: stable-2.19
83+
# - python-version: "3.12"
84+
# ansible-core: devel
85+
# - python-version: "3.13"
86+
# ansible-core: devel
4987

50-
- python-version: "3.10"
51-
ansible-core: stable-2.17
52-
- python-version: "3.11"
53-
ansible-core: stable-2.17
54-
- python-version: "3.12"
55-
ansible-core: stable-2.17
56-
57-
- python-version: "3.11"
58-
ansible-core: stable-2.18
59-
- python-version: "3.12"
60-
ansible-core: stable-2.18
61-
- python-version: "3.13"
62-
ansible-core: stable-2.18
63-
64-
- python-version: "3.11"
65-
ansible-core: stable-2.19
66-
- python-version: "3.12"
67-
ansible-core: stable-2.19
68-
- python-version: "3.13"
69-
ansible-core: stable-2.19
70-
71-
- python-version: "3.11"
72-
ansible-core: devel
73-
- python-version: "3.12"
74-
ansible-core: devel
75-
- python-version: "3.13"
76-
ansible-core: devel
7788
steps:
7889
- name: Checkout code
7990
uses: actions/checkout@v4
8091

81-
- name: Fix collection path for ansible-test #should be removed once we restructre
92+
- name: Fix collection path for ansible-test
8293
run: |
8394
mkdir -p ansible_collections/ravendb/ravendb
8495
rsync -av --exclude ansible_collections ./ ansible_collections/ravendb/ravendb
8596
cd ansible_collections/ravendb/ravendb
86-
87-
- name: Set up Python ${{ matrix.python-version }}
97+
98+
- name: Set up Python (host)
8899
uses: actions/setup-python@v5
89100
with:
90101
python-version: ${{ matrix.python-version }}
91102

92-
- name: Install dependencies
93-
run: |
94-
python -m pip install --upgrade pip
95-
pip install "ansible-core@https://github.com/ansible/ansible/archive/${{ matrix.ansible-core }}.tar.gz"
103+
# - name: Cache pip dependencies
104+
# uses: actions/cache@v4
105+
# with:
106+
# path: ~/.cache/pip
107+
# key: ${{ runner.os }}-pip
108+
# restore-keys: |
109+
# ${{ runner.os }}-pip-
96110

97-
- name: Run ansible-test sanity
98-
working-directory: ansible_collections/ravendb/ravendb
111+
- name: Install ASP.NET Core Runtime
99112
run: |
100-
ansible-test sanity --python ${{ matrix.python-version }} --docker -v --color
101-
102-
test-debian-setup-scenarios:
103-
runs-on: ubuntu-latest
104-
steps:
105-
- name: Checkout code
106-
uses: actions/checkout@v4
107-
108-
- name: Set up Python 3
109-
uses: actions/setup-python@v2
110-
with:
111-
python-version: "3.x"
113+
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
114+
chmod +x dotnet-install.sh
115+
./dotnet-install.sh --runtime aspnetcore --channel 8.0
112116
113-
- name: Cache pip dependencies
114-
uses: actions/cache@v4
115-
with:
116-
path: ~/.cache/pip
117-
key: ${{ runner.os }}-pip
118-
restore-keys: |
119-
${{ runner.os }}-pip-
117+
- name: Uninstall old Molecule plugins
118+
run: |
119+
pip uninstall -y molecule-docker molecule molecule-plugins[docker] community.docker docker
120120
121121
- name: Install dependencies
122122
run: |
123123
python -m pip install --upgrade pip
124-
pip install ansible molecule molecule-docker docker
125-
124+
pip install "ansible-core@https://github.com/ansible/ansible/archive/${{ matrix.ansible-core }}.tar.gz"
125+
pip install molecule molecule-plugins[docker] community.docker docker ravendb_test_driver
126+
126127
- name: Set ansible roles path
127128
run: echo "ANSIBLE_ROLES_PATH=$GITHUB_WORKSPACE/roles" >> $GITHUB_ENV
128129

129-
- name: Run molecule unsecured scenario
130+
- name: Run Debian unsecured scenario
130131
working-directory: roles/ravendb_node
131132
run: molecule test -s unsecured
132-
133-
- name: Run molecule update scenario
134-
working-directory: roles/ravendb_node
135-
run: molecule test -s update
136-
137-
- name: Run molecule clenaup scenario
138-
working-directory: roles/ravendb_node
139-
run: molecule test -s cleanup
140-
141-
test-rhel-setup-scenarios:
142-
runs-on: ubuntu-latest
143-
steps:
144-
- name: Checkout code
145-
uses: actions/checkout@v4
146-
147-
- name: Set up Python 3
148-
uses: actions/setup-python@v2
149-
with:
150-
python-version: "3.x"
151-
152-
- name: Cache pip dependencies
153-
uses: actions/cache@v4
154-
with:
155-
path: ~/.cache/pip
156-
key: ${{ runner.os }}-pip
157-
restore-keys: |
158-
${{ runner.os }}-pip-
159-
160-
- name: Install dependencies
161-
run: |
162-
python -m pip install --upgrade pip
163-
pip install ansible molecule molecule-docker docker
164-
165-
- name: Set ansible roles path
166-
run: echo "ANSIBLE_ROLES_PATH=$GITHUB_WORKSPACE/roles" >> $GITHUB_ENV
167-
168-
- name: Run molecule unsecured-rhel scenario
169-
working-directory: roles/ravendb_node
170-
run: molecule test -s unsecured-rhel
133+
134+
# - name: Run Debian update scenario
135+
# working-directory: roles/ravendb_node
136+
# run: molecule test -s update
137+
138+
# - name: Run Debian cleanup scenario
139+
# working-directory: roles/ravendb_node
140+
# run: molecule test -s cleanup
141+
142+
# - name: Run RHEL unsecured scenario
143+
# working-directory: roles/ravendb_node
144+
# run: molecule test -s unsecured-rhel
145+
146+
# - name: Run RHEL update scenario
147+
# working-directory: roles/ravendb_node
148+
# run: molecule test -s update-rhel
149+
150+
# - name: Run RHEL cleanup scenario
151+
# working-directory: roles/ravendb_node
152+
# run: molecule test -s cleanup-rhel
153+
154+
# # Unit tests
155+
# - name: Build ansible galaxy collection
156+
# run: |
157+
# ansible-galaxy collection build .
158+
# ansible-galaxy collection install ./ravendb-ravendb-*.tar.gz --force -p ./
159+
160+
# - name: Set up .NET environment variables
161+
# run: |
162+
# export DOTNET_ROOT=$HOME/.dotnet
163+
# export PATH=$PATH:$HOME/.dotnet
164+
# source ~/.bashrc
165+
166+
# - name: Change to ravendb_node role directory
167+
# run: cd roles/ravendb_node
171168

172-
- name: Run molecule update-rhel scenario
173-
working-directory: roles/ravendb_node
174-
run: molecule test -s update-rhel
175-
176-
- name: Run molecule clenaup-rhel scenario
177-
working-directory: roles/ravendb_node
178-
run: molecule test -s cleanup-rhel
179-
180-
test-ravendb-modules:
181-
runs-on: ubuntu-latest
182-
steps:
183-
- name: Checkout code
184-
uses: actions/checkout@v4
185-
186-
- name: Set up Python 3
187-
uses: actions/setup-python@v2
188-
with:
189-
python-version: "3.x"
190-
191-
- name: Cache pip dependencies
192-
uses: actions/cache@v4
193-
with:
194-
path: ~/.cache/pip
195-
key: ${{ runner.os }}-pip
196-
restore-keys: |
197-
${{ runner.os }}-pip-
198-
199-
- name: Install ASP.NET Core Runtime
200-
run: |
201-
wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
202-
chmod +x dotnet-install.sh
203-
./dotnet-install.sh --runtime aspnetcore --channel 8.0
204-
205-
- name: Install dependencies
206-
run: |
207-
python -m pip install --upgrade pip
208-
pip install ansible molecule molecule-docker docker ravendb_test_driver
209-
210-
- name: Build ansible galaxy collection
211-
run: |
212-
ansible-galaxy collection build .
213-
ansible-galaxy collection install ./ravendb-ravendb-*.tar.gz --force -p ./
214-
215-
- name: Set up .NET environment variables
216-
run: |
217-
export DOTNET_ROOT=$HOME/.dotnet
218-
export PATH=$PATH:$HOME/.dotnet
219-
source ~/.bashrc
220-
221-
- name: Change to ravendb_node role directory
222-
run: cd roles/ravendb_node
223-
224-
- name: Run modules unit tests
225-
run: python3 -m unittest discover -s tests/unit -v
169+
# - name: Run modules unit tests
170+
# run: python3 -m unittest discover -s tests/unit -v

0 commit comments

Comments
 (0)