Conceptsמושגי יסוד
Six nouns. Everything else in these docs is built out of them, and the CLI, the API and the panel all use the same words for the same things.
שישה מושגים. כל השאר בתיעוד הזה בנוי מהם, וה-CLI, ה-API והפאנל משתמשים באותן מילים לאותם דברים.
The object modelמודל האובייקטים
OrganisationThe billing and ownership boundary. Members, roles, API keys and capacity all belong to one. A person can be in several.גבול החיוב והבעלות. חברים, תפקידים, מפתחות API וקיבולת שייכים לארגון אחד. אדם יכול להיות בכמה.ProjectOne application. Holds its config, its environment variables, its domains and its deployment history.אפליקציה אחת. מחזיקה את ההגדרות, משתני הסביבה, הדומיינים והיסטוריית הפריסות שלה.DeploymentOne attempt to build and ship a version. It has a status, a log, a scan report and an outcome. Failed deployments are kept; that is the record.ניסיון אחד לבנות ולשחרר גרסה. יש לו סטטוס, לוג, דוח סריקה ותוצאה. פריסות שנכשלו נשמרות; זה הרישום.ReleaseA deployment that passed and is serving traffic. Exactly one release per environment is live at a time.פריסה שעברה ומשרתת תעבורה. בכל רגע יש בדיוק שחרור חי אחד לכל סביבה.FrameThe version of the application contract your project targets. Written as contract: N in shipyard.yaml.גרסת חוזה האפליקציה שהפרויקט מכוון אליה. נכתבת כ-contract: N בקובץ shipyard.yaml.RegionA physical place with a legal jurisdiction. il-tlv is Tel Aviv, nl-ams is Amsterdam. A project picks one and stays there until you move it.מקום פיזי עם שיפוט משפטי. il-tlv היא תל אביב, nl-ams היא אמסטרדם. פרויקט בוחר אחד ונשאר בו עד שתעבירו אותו.Environmentsסביבות
Every project has production and staging, and you can add more. They do not share environment variables, they do not share databases, and a deploy targets exactly one:
לכל פרויקט יש production ו-staging, ואפשר להוסיף עוד. הן לא חולקות משתני סביבה, לא חולקות מסדי נתונים, וכל פריסה מכוונת לאחת בדיוק:
shipyard deploy # staging, the default shipyard deploy --env production # asks for confirmation
The default is staging on purpose. Shipping to production should be a thing you decided to do, not a thing that happened because you forgot a flag.
ברירת המחדל היא staging בכוונה. עלייה לייצור צריכה להיות החלטה, לא תוצאה של דגל שנשכח.
Immutabilityאי-שינוי
A release is never patched in place. Changing a variable, a domain or a line of code produces a new deployment, which either passes and replaces the current release or fails and changes nothing. This is why rollback takes seconds: the previous release is still there, intact, not rebuilt from source.
שחרור לעולם לא מתוקן במקום. שינוי משתנה, דומיין או שורת קוד יוצר פריסה חדשה, שאו עוברת ומחליפה את השחרור הנוכחי, או נכשלת ולא משנה כלום. זו הסיבה ש-rollback לוקח שניות: השחרור הקודם עדיין שם, שלם, לא נבנה מחדש מהמקור.
Identifiersמזהים
Public identifiers are prefixed so you can always tell what you are holding, and they are safe to paste into a ticket.
מזהים ציבוריים נושאים קידומת כדי שתמיד תדעו מה בידיכם, וניתן להדביק אותם בבטחה בקריאת שירות.
org_…Organisation.ארגון.prj_…Project.פרויקט.dep_…Deployment.פריסה.key_…API key record. Not the secret itself.רשומת מפתח API. לא הסוד עצמו.sy_live_…The API key secret. Shown once. Never paste this anywhere public.סוד מפתח ה-API. מוצג פעם אחת. לעולם אל תדביקו אותו במקום ציבורי.