Skip to content

Commit d7f1ba5

Browse files
author
Kroner
committed
add port_test | fix ci/cd
1 parent 0718ec3 commit d7f1ba5

File tree

3 files changed

+41
-4
lines changed

3 files changed

+41
-4
lines changed

.github/workflows/main.yml

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1+
name: go ci-cd
2+
13
on:
24
push:
35
branches:
4-
- main # Запускать пайплайн при пуше в ветку main
5-
pull_request:
6-
branches:
7-
- main # Запускать пайплайн при создании пул-реквеста в ветку main
6+
- main # Запускать пайплайн при пуше в ветку main
7+
- v0.8
88

99
jobs:
1010
test:
@@ -17,6 +17,12 @@ jobs:
1717
uses: actions/setup-go@v4
1818
with:
1919
go-version: '1.22' # Указываем версию Go
20+
21+
- name: Run port check (+install JQ)
22+
run: |
23+
sudo apt-get install -y jq # Установка зависимости для работы с JSON
24+
chmod +x test/port_check.sh # Даем права на выполнение скрипта
25+
./test/port_check.sh # Запускаем скрипт проверки портов
2026
2127
- name: Run tests
2228
run: |

tests/port_check.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/bin/bash
2+
3+
# Пути к файлам
4+
FIRST_FILE="./go/config.json"
5+
SECOND_FILE="docker-compose.yml"
6+
7+
# Извлечение значения порта из первого файла
8+
PORT_FIRST_FILE=$(jq -r '.port' "$FIRST_FILE")
9+
10+
# Извлечение значения порта из второго файла (после ":")
11+
PORT_SECOND_FILE=$(grep "ports:" -A 1 "$SECOND_FILE" | grep -oP ':(\d+)' | tr -d ':')
12+
13+
# Проверка соответствия
14+
if [[ "$PORT_FIRST_FILE" == "$PORT_SECOND_FILE" ]]; then
15+
echo "Порты совпадают: $PORT_FIRST_FILE"
16+
else
17+
echo "Порты не совпадают! Первый файл: $PORT_FIRST_FILE, Второй файл: $PORT_SECOND_FILE"
18+
fi

tests/port_check.sh.bkp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/sh
2+
3+
# Определяем путь к файлу docker-compose.yml
4+
DOCKER_COMPOSE_FILE="docker-compose.yml"
5+
6+
# Проверяем, существует ли файл
7+
if [ ! -f "$DOCKER_COMPOSE_FILE" ]; then
8+
echo "Файл $DOCKER_COMPOSE_FILE не найден!"
9+
exit 1
10+
fi
11+
12+
# Выполняем команду для извлечения значения портов
13+
grep -A1 ports "$DOCKER_COMPOSE_FILE" | grep '"' | grep -o '"[^"]*"' | tr -d '"'

0 commit comments

Comments
 (0)