From ee477982cb537293425d6151903d1f67d16010f3 Mon Sep 17 00:00:00 2001 From: Nail Date: Thu, 9 Apr 2026 19:54:55 +0300 Subject: [PATCH] docs: remove hardcoded credentials, update test counts, add tenant creation guide --- README.md | 68 +++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 46 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index cd9a3bc..9f115d0 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,33 @@ | | | |---|---| | **Web UI** | https://qu.kube5s.ru/ui/ | -| **SQS Endpoint** | https://qu.kube5s.ru | -| **Access Key** | `SSAK-dbdee63f39621705826a759e` | -| **Secret Key** | `faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f` | +| **SQS Endpoint** | `https://qu.kube5s.ru` | | **Region** | `us-east-1` (любая) | +Демо-стенд запущен с преднастроенным тенантом и несколькими очередями. +Чтобы работать с SQS API (AWS CLI, boto3, SDK) — создайте своего тенанта через Web UI и используйте выданные credentials. + +--- + +## Быстрый старт + +### Создать тенанта + +1. Откройте [Web UI](https://qu.kube5s.ru/ui/) +2. Нажмите **"Создать тенанта"**, введите имя +3. Скопируйте выданные **Access Key** и **Secret Key** + +### Настройка AWS CLI + +```bash +export AWS_ACCESS_KEY_ID="<ваш Access Key>" +export AWS_SECRET_ACCESS_KEY="<ваш Secret Key>" +export AWS_DEFAULT_REGION="us-east-1" +ENDPOINT="--endpoint-url https://qu.kube5s.ru" +``` + +--- + ## AWS CLI Самый простой способ работы — через стандартный AWS CLI. @@ -42,15 +64,6 @@ Windows: скачайте установщик с [https://aws.amazon.com/cli/]( Проверка: `aws --version` -### Настройка - -```bash -export AWS_ACCESS_KEY_ID="SSAK-dbdee63f39621705826a759e" -export AWS_SECRET_ACCESS_KEY="faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f" -export AWS_DEFAULT_REGION="us-east-1" -ENDPOINT="--endpoint-url https://qu.kube5s.ru" -``` - ### Создать очередь ```bash @@ -91,29 +104,33 @@ aws sqs delete-queue \ > **Совет:** `--endpoint-url` — единственное отличие от работы с Amazon SQS. > Весь остальной код без изменений. +--- + ## curl ### Создать очередь ```bash -curl -s -u "SSAK-dbdee63f39621705826a759e:faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f" \ +curl -s -u "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ "https://qu.kube5s.ru/?Action=CreateQueue&QueueName=myqueue&Version=2012-11-05" ``` ### Отправить сообщение ```bash -curl -s -u "SSAK-dbdee63f39621705826a759e:faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f" \ +curl -s -u "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ "https://qu.kube5s.ru/?Action=SendMessage&QueueUrl=https://qu.kube5s.ru/queue/myqueue&MessageBody=HelloWorld&Version=2012-11-05" ``` ### Получить сообщение ```bash -curl -s -u "SSAK-dbdee63f39621705826a759e:faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f" \ +curl -s -u "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ "https://qu.kube5s.ru/?Action=ReceiveMessage&QueueUrl=https://qu.kube5s.ru/queue/myqueue&Version=2012-11-05" ``` +--- + ## Python (boto3) ```python @@ -123,8 +140,8 @@ sqs = boto3.client( "sqs", endpoint_url="https://qu.kube5s.ru", region_name="us-east-1", - aws_access_key_id="SSAK-dbdee63f39621705826a759e", - aws_secret_access_key="faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f", + aws_access_key_id="<ваш Access Key>", + aws_secret_access_key="<ваш Secret Key>", ) # Создать очередь @@ -139,6 +156,8 @@ msgs = sqs.receive_message(QueueUrl=queue["QueueUrl"]) print(msgs["Messages"][0]["Body"]) ``` +--- + ## Node.js (@aws-sdk/client-sqs) ```javascript @@ -148,8 +167,8 @@ const sqs = new SQSClient({ endpoint: "https://qu.kube5s.ru", region: "us-east-1", credentials: { - accessKeyId: "SSAK-dbdee63f39621705826a759e", - secretAccessKey: "faaae34c905f467636cce1db09a66f35113bee6f61efecbe1dcd30ed8d11c33f", + accessKeyId: "<ваш Access Key>", + secretAccessKey: "<ваш Secret Key>", }, }); @@ -159,9 +178,11 @@ const res = await sqs.send(new ReceiveMessageCommand({ QueueUrl: queue.QueueUrl console.log(res.Messages[0].Body); ``` +--- + ## Тесты -В репозитории три тестовых скрипта — от простого к сложному. +В репозитории два тестовых скрипта. ### quick_test.sh — быстрая проверка @@ -171,7 +192,7 @@ console.log(res.Messages[0].Body); bash quick_test.sh ``` -Проверяет 6 базовых операций: создание очереди → список → отправка → получение → удаление → проверка удаления. +19 тестов: health, создание тенанта, CRUD через AWS CLI, UI API (создание/удаление очереди, send/peek/purge сообщений). ### hardcore_test.sh — полный тест (AWS CLI + curl) @@ -181,7 +202,7 @@ bash quick_test.sh bash hardcore_test.sh ``` -86 тестов в 23 группах: +28 групп тестов: - Admin API: создание, список, удаление тенантов - CRUD через AWS CLI и через curl @@ -195,6 +216,9 @@ bash hardcore_test.sh - Load test: 20 сообщений throughput - Целостность: проверка MD5 - Edge cases: длинные имена, большие сообщения, граничные параметры +- UI API: создание/удаление очередей, send/peek/purge сообщений, изоляция + +--- ## Особенности