alawadi.cloudمستندات
مرجع الـ API

واجهة عمليات النشر

مسار النشر الآلي: بادل رمز GitHub OIDC برمز نشر، ثم انشر حزمة Docker.

هذا هو المرجع المعتمد للنشر الآلي. يبادل سير عمل GitHub Actions هويّته في OIDC برمز نشر (deploy token) قصير العمر، ثم ينشر حزمة Docker بهذا الرمز، دون الحاجة إلى تسجيل الدخول بحساب Google. راجع دليل النشر من GitHub عبر OIDC للمسار الكامل، أو ارفع حزمتك مباشرةً إلى مستودعك الخاص.

مسار النشر الآلي

يتكوّن المسار من ثلاثة طلبات. أولاً، بادل بيانات اعتماد المستودع برمز مستودع قصير العمر لرفع حزمة Docker. ثمّ بادل هويّة سير العمل في OIDC برمز نشر محصور بتطبيق واحد. وأخيراً، انشر الحزمة المرفوعة بهذا الرمز. نقطة النهاية (endpoint) الخاصة بالنشر أدناه (/v1/containers/{containerId}/deploy) هي المسار المُصادَق عليه بالرمز والذي يستخدمه CI. ولتشغيل النشر تفاعلياً وأنت مسجّل الدخول بحساب Google، استخدم المسار المحصور بالمشروع في صفحة واجهة النشر.

GET
/v1/registry/token

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/registry/token"
{
  "token": "string",
  "expires_in": 300
}
{
  "error": "validation failed",
  "request_id": "01J9Z3K8QWERTYUIOP"
}
POST
/v1/containers/{containerId}/deploy-token

Path Parameters

containerId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/v1/containers/497f6eca-6276-4993-bfeb-53cbbbba6f08/deploy-token" \  -H "Content-Type: application/json" \  -d '{    "oidc_token": "string"  }'
{
  "token": "string",
  "expires_in": 600
}
Empty
POST
/v1/containers/{containerId}/deploy

Authorization

deployToken
AuthorizationBearer <token>

Short-lived deploy token issued from a GitHub OIDC exchange.

In: header

Path Parameters

containerId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/v1/containers/497f6eca-6276-4993-bfeb-53cbbbba6f08/deploy" \  -H "Content-Type: application/json" \  -d '{    "image": "registry.alawadi.cloud/acme/web:sha-8f31c2a"  }'
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "image": "string",
  "status": "queued",
  "created_at": "2019-08-24T14:15:22Z"
}

في هذه الصفحة