הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
מפתחים ובודקים שרתי proxy ל-API שניתנים לתכנות באמצעות Apigee ב-VS Code. לאחר מכן, פורסים ארכיון של סביבת ההגדרה של proxy ל-API בסביבת הבדיקה ובסביבת הייצור של Apigee Integration, כמו שמתואר בקטעים הבאים.
הפעלת פריסה של ארכיון בסביבת Apigee
כדי לפרוס ארכיון, צריך להפעיל את פריסת הארכיון בסביבת Apigee.
מפעילים את פריסת הארכיון כמו שמתואר בקטעים הבאים.
ממשק המשתמש של Apigee
-
במסוף Google Cloud , עוברים לדף Apigee > Environments.
- לוחצים על + יצירת סביבה.
בקטע סוג הפריסה, בוחרים באפשרות ארכיון.
- לוחצים על יצירה.
Apigee API
כדי להפעיל פריסה של ארכיון כשיוצרים סביבה באמצעות ה-API, צריך להגדיר את deploymentType לערך ARCHIVE בגוף הבקשה.
לדוגמה:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments" \
-X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-type: application/json" \
-d
'{
"name": "integration-test",
"description": "Integration test environment",
"displayName" : "Integration test",
"deploymentType" : "ARCHIVE"
}'
$TOKEN מוגדר לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0. מידע על האפשרויות curl שבהן נעשה שימוש בדוגמה הזו מופיע במאמר שימוש ב-curl. תיאור של משתני הסביבה שבהם אפשר להשתמש מופיע במאמר בנושא הגדרת משתני סביבה לבקשות API של Apigee.
זוהי דוגמה לתשובה:
{
"name": "organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7",
"metadata": {
"@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
"operationType": "INSERT",
"targetResourceName": "organizations/$ORG/environments/integration-test",
"state": "IN_PROGRESS"
}
}אפשר לבדוק את סטטוס הפעולה. לדוגמה:
curl https://apigee.googleapis.com/v1/organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7 / -H "Authorization: Bearer $TOKEN"
בהמשך מופיעה דוגמה לתגובה. שימו לב שסטטוס הפעולה הוא FINISHED וסטטוס הסביבה מוגדר כ-ACTIVE.
{
"name": "organizations/$ORG/operations/11b1ad1c-2371-473d-bcd4-f621f8d98ef7",
"metadata": {
"@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
"operationType": "INSERT",
"targetResourceName": "organizations/$ORG/environments/integration-test",
"state": "FINISHED"
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.apigee.v1.Environment",
"name": "integration-test",
"description": "Integration test environment",
"createdAt": "1615553880084",
"lastModifiedAt": "1615553881911",
"displayName": "Integration test",
"state": "ACTIVE",
"deploymentType": "ARCHIVE"
}
}מידע נוסף על ה-API זמין במאמר Create environments API.
פריסת ארכיון בסביבת Apigee
כדי לפרוס ארכיון בסביבת Apigee, משתמשים בפקודה gcloud הבאה:
gcloud beta apigee archives deploy \
--environment=$ENV \
[--organization=$ORG] \
[--source=$SOURCE] \
[--labels $KEY=$VALUE[,$KEY2=$VALUE2,$KEY3=$VALUE3,...]]
צריך לציין את סביבת Apigee שבה רוצים לפרוס את הארכיון באמצעות הדגל --environment. צריך להפעיל פריסות לארכיון בסביבת Apigee.
מידע נוסף זמין במאמר gcloud beta apigee archives deploy.
כברירת מחדל, הארכיון נפרס:
- לארגון שמשויך לפרויקט הפעיל הנוכחי שהוגדר עבור
gcloud.כדי לראות את ההגדרות הנוכחיות של gcloud, מריצים את הפקודה
gcloud config list. כדי לציין את הארגון, משתמשים בדגל--organization. - מספריית העבודה הנוכחית.
אם ספריית הבסיס של הארכיון נמצאת במיקום אחר ולא בספריית העבודה הנוכחית, צריך להשתמש בדגל--sourceכדי לציין את המיקום של ספריית הבסיס של הארכיון.src/main/apigeeמידע נוסף זמין במאמר הסבר על המבנה של סביבת עבודה ב-Apigee.
אפשר גם להוסיף עד 64 צמדי מפתח/ערך של תוויות בהתאמה אישית לפריסת ארכיון באמצעות הדגל --labels. לדוגמה, יכול להיות שתרצו לתייג ארכיון עם מספר Build. התוויות יוצגו כשמציגים את רשימת הפריסות של הארכיון. ערכי המפתח צריכים לעמוד בהנחיות הבאות:
- האורך המקסימלי הוא 63 תווים
- גודל מקסימלי של 128 בייטים
- קידוד UTF-8
- התבנית צריכה להיות תואמת לביטוי הרגולרי הבא שמתאים ל-Perl (PCRE):
[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}
מאחורי הקלעים, הפקודה gcloud מבצעת את השלבים הבאים כשפורסים ב-Apigee ב-Google Cloud:
- יוצר קובץ ZIP של ספריית סביבת העבודה של Apigee
src/main/apigee. מידע נוסף זמין במאמר הסבר על המבנה של סביבת עבודה ב-Apigee. - הארכיון נפרס ב-Apigee ב-Google Cloud באופן הבא:
- יוצר כתובת URL חתומה לקטגוריה של Cloud Storage בפרויקט שמשויך לארגון הנוכחי ב-Apigee באמצעות generateUploadUrl API.
- הקובץ zip של הארכיון מועלה לקטגוריה של Cloud Storage באמצעות כתובת ה-URL החתומה.
- הפקודה פורסת את הארכיון שנמצא כרגע בהמתנה בקטגוריה של Cloud Storage ב-Apigee ב-Google Cloud. באמצעות Archive Deployments API.
דוגמאות לבקשות
בדוגמה הבאה נוצר ארכיון zip של src/main/apigee בספרייה הנוכחית והוא נפרס בסביבת Apigee שצוינה:
gcloud beta apigee archives deploy --environment=$ENV
בדוגמה הבאה מוצג איך אפשר לציין ארגון שלא משויך לפרויקט הפעיל הנוכחי שהוגדר ל-gcloud:
gcloud beta apigee archives deploy --environment=$ENV --organization=$ORG
בדוגמה הבאה נוצר ארכיון zip של הספרייה src/main/apigee בספרייה myarchive, והוא נפרס בסביבת Apigee שצוינה:
gcloud beta apigee archives deploy --environment=$ENV --source=/myarchive
בדוגמה הבאה מוסיפים את התוויות status ו-build_id לפריסת הארכיון:
gcloud beta apigee archives deploy --environment=$ENV --labels=status=released,build=210315
דוגמה לתשובה
דוגמה לתשובה:
Using Apigee organization 'myorg' Waiting for operation [b64c2665-b5ac-43cc-9e2d-232e8895c2ed] to complete...done.
בדיקת סטטוס הפריסה של הארכיון
כדי לבדוק את סטטוס הפריסה של הארכיון, משתמשים בפקודה gcloud alpha apigee operations.
בדוגמה הבאה מוצג סטטוס הפריסה של הארכיון עבור הפעולה עם מזהה הגרסה 439fa3f7-6aa4-42ad-8b12-3ca912c75d5c, שהוא IN_PROGRESS.
gcloud alpha apigee operations describe b64c2665-b5ac-43cc-9e2d-232e8895c2ed
בהמשך מופיעה דוגמה לתגובה. הערה: הערך של state מוגדר כ-IN_PROGRESS.
Using Apigee organization 'myorg'
done: true
metadata:
'@type': type.googleapis.com/google.cloud.apigee.v1.OperationMetadata
operationType: INSERT
state: IN_PROGRESS
targetResourceName: uri
name: organizations/myorg/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed
organization: myorg
response:
'@type': type.googleapis.com/google.cloud.apigee.v1.CanaryEvaluation
control: 1-5-0-20210319-071117-ghq74
endTime: '2021-03-20T06:15:44.329363950Z'
metricLabels:
env: test
location: us-central1
name: uri
startTime: '2021-03-20T06:14:44.306534584Z'
treatment: 1-5-0-20210319-190954-if0wk
verdict: NONE
uuid: b64c2665-b5ac-43cc-9e2d-232e8895c2edאחרי שהפעולה מסתיימת, הערך של state מוגדר כ-FINISHED.
הצגת רשימה של כל פריסות הארכיון בסביבה
כדי להציג רשימה של כל פריסות הארכיון בסביבה, פועלים לפי ההוראות בקטעים הבאים.
gcloud
כדי לראות את רשימת כל פריסות הארכיון ב-Apigee ב-Google Cloud, משתמשים בפקודה gcloud הבאה:
gcloud beta apigee archives list --environment=$ENV
צריך לציין את סביבת Apigee שבה רוצים להציג פריסות בארכיון באמצעות הדגל --environment.
בסביבת Apigee צריך להציג את הפרטים של פריסת ארכיון.
מידע נוסף זמין במאמר gcloud beta apigee archives list.
זוהי דוגמה לתשובה:
Using Apigee organization 'myorg' ARCHIVE ID ENVIRONMENT DEPLOYED AT LABELS OPERATION STATUS pzfbs8uidbdv224joz myorg 2021-03-10 11:21:29 status=released,build=210315 Deployed fb4r8log2gm63r3gtu myorg 2021-03-05 13:40:30 vrytwbhso558oil53m myorg 2021-03-03 21:20:53
Apigee API
כדי להציג את רשימת הפריסות של הארכיון בסביבה, שולחים בקשת GET ל-API הבא:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments.
לדוגמה:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments" \ -H "Authorization: Bearer $TOKEN"
$TOKEN מוגדר לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0. מידע על האפשרויות curl שבהן נעשה שימוש בדוגמה הזו מופיע במאמר שימוש ב-curl. תיאור של משתני הסביבה שבהם אפשר להשתמש מופיע במאמר בנושא הגדרת משתני סביבה לבקשות API של Apigee.
זוהי דוגמה לתשובה:
{
"archiveDeployments": [
{
"name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz",
"labels": {
"status": "released",
"build": "210315"
},
"createdAt": "1615821232451727",
"updatedAt": "1615821232451727",
"operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed"
},
{
"name": "organizations/myorg/environments/integration-test/archiveDeployments/fb4r8log2gm63r3gtu",
"createdAt": "1615819281858447",
"updatedAt": "1615819281858447",
"operation": "organizations/apigee-docs-c/operations/71549b9c-4493-41b6-9838-c0ad5b1b3181"
},
{
"name": "organizations/myorg/environments/integration-test/archiveDeployments/vrytwbhso558oil53m",
"createdAt": "1615578337832207",
"updatedAt": "1615578337832207",
"operation": "organizations/apigee-docs-c/operations/a2eb50b5-f276-4de4-96a3-72fac3d4c05e"
}
]
}
צפייה בפרטים של פריסה בארכיון
פרטים נוספים מופיעים בהמשך הדף הזה.
gcloud
כדי להציג את הפרטים של פריסת ארכיון ב-Apigee ב-Google Cloud, משתמשים בפקודה gcloud הבאה:
gcloud beta apigee archives describe $ID --environment=$ENV
צריך לציין את הפרטים הבאים:
- המזהה של הגרסה הקודמת של פריסת הארכיון.
- סביבת Apigee שבה רוצים להציג פריסות בארכיון באמצעות הדגל
--environment. צריך להפעיל את האפשרות לפריסות ארכיון בסביבת Apigee.
מידע נוסף זמין במאמר בנושא gcloud beta apigee archives describe.
לדוגמה:
gcloud apigee archives describe pzfbs8uidbdv224joz --environment=$ENV
זוהי דוגמה לתשובה:
Using Apigee organization 'myorg' createdAt: '1615578337832207' labels: status: 'released' build: '210315' name: organizations/myorg/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz operation: organizations/myorg/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed operationStatus: Deployed updatedAt: '1615821232451727'
Apigee API
כדי לראות את הפרטים של פריסת ארכיון, שולחים בקשת GET ל-API הבא:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID.
צריך להעביר את המזהה של הגרסה של פריסת הארכיון. כדי לראות את רשימת מזהי הגרסאות של פריסות הארכיון בסביבת Apigee, אפשר לעיין במאמר בנושא הצגת כל פריסות הארכיון בסביבה.
לדוגמה:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/pzfbs8uidbdv224joz" \ -X GET \ -H "Authorization: Bearer $TOKEN"
$TOKEN מוגדר לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0. מידע על האפשרויות curl שבהן נעשה שימוש בדוגמה הזו מופיע במאמר שימוש ב-curl. תיאור של משתני הסביבה שבהם אפשר להשתמש מופיע במאמר בנושא הגדרת משתני סביבה לבקשות API של Apigee.
זוהי דוגמה לתשובה:
{
"name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz",
"labels": {
"status": "released",
"build": "210315"
},
"createdAt": "1615578337832207",
"updatedAt": "1615821232451727",
"operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed"
}
עדכון תוויות לפריסת ארכיון
מעדכנים את התוויות של פריסת ארכיון כמו שמתואר בקטעים הבאים.
gcloud
כדי לעדכן תוויות לפריסת ארכיון ב-Apigee ב-Google Cloud, משתמשים בפקודה gcloud הבאה:
gcloud beta apigee archives update [$ID] --environment=$ENV [--update-labels=$KEY=$VALUE[,$KEY2=$VALUE2...$KEYn=$VALUEn]], [--clear-labels | --remove-labels=$KEY[,$KEY2...$KEYn]]
צריך לציין את הפרטים הבאים:
- מזהה הגרסה הקודמת של פריסת הארכיון
- סביבת Apigee שבה רוצים להציג פריסות בארכיון באמצעות הדגל
--environment. צריך להפעיל את האפשרות לפריסות ארכיון בסביבת Apigee. - אחד או יותר מהסימונים הבאים:
סימון תיאור --clear-labelsהסרת כל התוויות. אם גם --update-labelsמצוין, המערכת תחיל קודם את--clear-labels.אי אפשר לציין את הפרמטר הזה אם מציינים את הפרמטר
--remove-labels.--remove-labelsהסרת התוויות שצוינו. אם מציינים גם את --update-labels, הוא מוחל קודם.אי אפשר לציין את הפרמטר הזה אם מציינים את הפרמטר
--clear-labels.--update-labelsמעדכנים את התוויות. אם התווית קיימת, הערך שלה משתנה. אחרת, נוצרת תווית חדשה. אפשר לשלב עם הדגלים --remove-labelsאו--clear-labelsכדי להסיר קבוצת משנה או את כל התוויות, בהתאמה, לפני עדכון התוויות.
מידע נוסף זמין במאמר gcloud beta apigee archives update.
לדוגמה:
gcloud apigee archives update pzfbs8uidbdv224joz --environment=$ENV \ --clear-labels --update-labels=status=released,build=210315,tier=1
זוהי דוגמה לתשובה:
Using Apigee organization `myorg` createdAt: 2020-04-04T04:04:04.004Z labels: status: released, build: 210315, tier: 1 name: organizations/apigee-docs-c/environments/dev/archiveDeployments/pzfbs8uidbdv224joz operation: organizations/apigee-docs-c/operations/bf587121-8b5c-4897-9d8f-9b1ef0cb06ca updatedAt: '1633450432067431'
Apigee API
כדי לעדכן תוויות לפריסת ארכיון ב-Apigee ב-Google Cloud, שולחים בקשת PATCH ל-API הבא:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID.
צריך להעביר את המזהה של הגרסה של פריסת הארכיון. כדי לראות את רשימת מזהי הגרסאות של פריסות הארכיון בסביבת Apigee, אפשר לעיין במאמר בנושא הצגת כל פריסות הארכיון בסביבה.
מעבירים את כל התוויות שרוצים להוסיף לארכיון בגוף הבקשה. התוויות שמעבירים מחליפות את קבוצת התוויות הנוכחית, כך שאפשר להסיר תוויות על ידי השמטה שלהן מגוף הבקשה, או להסיר את כל התוויות על ידי העברת רשימה ריקה.
לדוגמה:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \
-X PATCH \
-H "Authorization: Bearer $TOKEN" \
-d '{
"labels": {
"status" : "released",
"build" : "210315"
}
}'
$TOKEN מוגדר לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0. מידע על האפשרויות curl שבהן נעשה שימוש בדוגמה הזו מופיע במאמר שימוש ב-curl. תיאור של משתני הסביבה שבהם אפשר להשתמש מופיע במאמר בנושא הגדרת משתני סביבה לבקשות API של Apigee.
זוהי דוגמה לתשובה:
{
"name": "organizations/myorg/environments/integration-test/archiveDeployments/pzfbs8uidbdv224joz",
"labels": {
"status": "released",
"build": "210315"
},
"createdAt": "1615578337832207",
"updatedAt": "1615821232451727",
"operation": "organizations/apigee-docs-c/operations/b64c2665-b5ac-43cc-9e2d-232e8895c2ed"
}
מחיקת סביבת Apigee עם פריסות בארכיון
כדי למחוק סביבת Apigee עם פריסות בארכיון:
- בתיקייה זמנית, יוצרים את מבנה הספריות הבא, כאשר $ENV תואם לשם הסביבה שרוצים למחוק.
לדוגמה:
mkdir -p /$TEMP/archive/src/main/apigee/environments/$ENV
- מוסיפים את הקובץ
deployments.jsonלספרייה. לדוגמה:touch /$TEMP/archive/src/main/apigee/environments/$ENV/deployments.json
- מעדכנים את
deployments.jsonכך שיכלול מערךproxiesריק, כמו שמוצג למטה.{ "proxies" : [] } - משנים את הספרייה (cd) לתיקייה
$TEMP/archive.cd $TEMP/archive
- פורסים את הארכיון בסביבת Apigee שרוצים למחוק.
gcloud beta apigee archives deploy --environment=$ENV
- מחיקת סביבת Apigee.
מחיקת תיקון של פריסה בארכיון
מוחקים גרסה של פריסת ארכיון כמו שמתואר בקטע הבא.
gcloud
כדי למחוק מהפריסה בארכיון גרסה של Apigee ב-Google Cloud, משתמשים בפקודה הבאה gcloud:
gcloud beta apigee archives delete $ID --environment=$ENV
צריך לציין את הפרטים הבאים:
- המזהה של הגרסה שרוצים למחוק.
- סביבת Apigee שבה רוצים להציג פריסות בארכיון באמצעות הדגל
--environment. צריך להפעיל את האפשרות לפריסות ארכיון בסביבת Apigee.
לדוגמה:
gcloud apigee archives delete fb4r8log2gm63r3gtu --environment=dev
זוהי דוגמה לתשובה:
Archive deployment revision "fb4r8log2gm63r3gtu" deleted
Apigee API
כדי למחוק מהארכיון גרסה של פריסה ב-Apigee ב-Google Cloud, שולחים בקשת DELETE אל ה-API הבא:
https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID.
צריך להעביר את המזהה של הגרסה של פריסת הארכיון שרוצים למחוק. כדי לראות את רשימת מזהי הגרסאות של פריסות הארכיון בסביבה מסוימת, אפשר לעיין במאמר בנושא הצגת רשימה של כל פריסות הארכיון בסביבה.
לדוגמה:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/archiveDeployments/$ID" \ -X DELETE \ -H "Authorization: Bearer $TOKEN" \
$TOKEN מוגדר לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0. מידע על האפשרויות curl שבהן נעשה שימוש בדוגמה הזו מופיע במאמר שימוש ב-curl. תיאור של משתני הסביבה שבהם אפשר להשתמש מופיע במאמר בנושא הגדרת משתני סביבה לבקשות API של Apigee.
זוהי דוגמה לתשובה:
{}