implementation
.
חברי מועדון
- אטרקציה
- מחיקה
- הורדה
- download_and_extract
- ביצוע
- חילוץ
- קובץ
- name
- מערכת הפעלה
- תיקון
- path
- קריאה
- report_progress
- קישור
- תבנית
- אילו
- workspace_root
מאפיין
struct repository_ctx.attrשיטה שמאפשרת לגשת לערכים של המאפיינים. הערכים נקבעים על ידי המשתמש (אם לא, נעשה שימוש בערך ברירת מחדל).
delete
bool repository_ctx.delete(path)מחיקת קובץ או ספרייה. מחזירה בוליאני, שמציין אם הקובץ או הספרייה נמחקו על ידי השיחה הזו.
פרמטרים
פרמטר | תיאור |
---|---|
path
|
string; or path ;
נדרשנתיב הקובץ למחיקה, ביחס לספריית המאגר או באופן מוחלט. אפשר להשתמש בנתיב או במחרוזת. |
הורדה, להוריד
struct repository_ctx.download(url, output='', sha256='', executable=False, allow_fail=False, canonical_id='', auth={}, *, integrity='')הורדה של קובץ לנתיב הפלט של כתובת ה-URL שצוינה, והחזרה של מבנה שמכיל
success
. תכונה זו היא true
אם ההורדה הושלמה בהצלחה, ואם היא הושלמה, גיבוב (hash) של הקובץ עם השדות sha256
ו-integrity
.
פרמטרים
פרמטר | תיאור |
---|---|
url
|
string; or Iterable of strings ;
נדרשתרשימה של כתובות URL עם שיקוף שמתייחסות לאותו קובץ. |
output
|
string; or Label; or path ;
ברירת המחדל = ''נתיב לקובץ הפלט, ביחס לספריית המאגר. |
sha256
|
ברירת מחדל = '' גיבוב SHA-256 צפוי של הקובץ שהורד. הערך הזה חייב להיות תואם לגיבוב SHA-256 של הקובץ שהורדתם. כדאי להשמיט את SHA-256 כי יכול להיות שהקבצים המרוחקים ישתנו. אם משמיטים את השדה הזה, הוא עלול להיות לא-הירמטי. לא חייבים לשלב פיתוח, אבל צריך להגדיר אותו לפני המשלוח. |
executable
|
ברירת מחדל = False מגדירים את סימון קובץ ההפעלה בקובץ שנוצר, False כברירת מחדל. |
allow_fail
|
ברירת מחדל = False אם מוגדר, מציינים את השגיאה בערך ההחזרה במקום להעלות שגיאה להורדות שנכשלו |
canonical_id
|
ברירת מחדל = '' אם המדיניות מוגדרת, יש להגביל את ההיטים למטמון למקרים שבהם הקובץ נוסף למטמון עם אותו מזהה קנוני. |
auth
|
ברירת מחדל = {} הצהרה אופציונלית המציינת פרטי אימות של חלק מכתובות ה-URL. |
integrity
|
ברירת מחדל = '' סכום הבדיקה הצפוי של הקובץ שהורד, בפורמט תקינות של משאבי משנה. הוא צריך להיות זהה לסיכום הביקורת של הקובץ שהורד. כדי לצמצם את סכומי ההמחאה, אנחנו עלולים להשמיט את האבטחה מרחוק. אם משמיטים את השדה הזה, הוא עלול להיות לא-הירמטי. לא חייבים לשלב פיתוח, אבל צריך להגדיר אותו לפני המשלוח. |
download_and_extract
struct repository_ctx.download_and_extract(url, output='', sha256='', type='', stripPrefix='', allow_fail=False, canonical_id='', auth={}, *, integrity='', rename_files={})המערכת מורידה קובץ לנתיב הפלט של כתובת ה-URL שצוינה, מחלצת אותו ומחזירה מבנה שמכיל
success
. סימון הוא true
אם ההורדה הושלמה בהצלחה, ואם היא הושלמה, גיבוב (hash) של הקובץ עם השדות sha256
ו-integrity
.
פרמטרים
פרמטר | תיאור |
---|---|
url
|
string; or Iterable of strings ;
נדרשתרשימה של כתובות URL עם שיקוף שמתייחסות לאותו קובץ. |
output
|
string; or Label; or path ;
ברירת המחדל = ''נתיב למאגר שבו הארכיון יופרז, ביחס לספריית המאגר. |
sha256
|
ברירת מחדל = '' גיבוב SHA-256 צפוי של הקובץ שהורד. הערך הזה חייב להיות תואם לגיבוב SHA-256 של הקובץ שהורדתם. כדאי להשמיט את SHA-256 כי יכול להיות שהקבצים המרוחקים ישתנו. אם משמיטים את השדה הזה, הוא עלול להיות לא-הירמטי. לא חייבים לשלב פיתוח, אבל צריך להגדיר אותו לפני המשלוח. אם צוין, המטמון תחילה ייבדק כדי לראות קובץ עם הגיבוב הנתון. יתבצע ניסיון להוריד רק אם הקובץ לא נמצא במטמון. אחרי שההורדה תסתיים בהצלחה, הקובץ יתווסף למטמון. |
type
|
default = '' סוג הארכיון של הקובץ שהורדתם. כברירת מחדל, סוג הארכיון נקבע לפי סיומת הקובץ של כתובת האתר. אם אין סיומת לקובץ, אפשר לציין באופן מפורש את המירכאות; "zip", "gar", "war", "aar", "tar", "tar.gz", "tgz", "tar;quotquot;quot"z"z"z"z"z" "z"z" " |
stripPrefix
|
ברירת מחדל = '' תחילית ספרייה להסרת הקבצים שחולצו. ארכיונים רבים מכילים ספרייה ברמה העליונה שמכילה את כל הקבצים בארכיון. במקום לציין את הקידומת הזו שוב ושוב ב build_file , אפשר להשתמש בשדה הזה כדי להסיר אותה מהקבצים שחולצו.
|
allow_fail
|
ברירת מחדל = False אם מוגדר, מציינים את השגיאה בערך ההחזרה במקום להעלות שגיאה להורדות שנכשלו |
canonical_id
|
ברירת מחדל = '' אם המדיניות מוגדרת, יש להגביל את ההיטים למטמון למקרים שבהם הקובץ נוסף למטמון עם אותו מזהה קנוני. |
auth
|
ברירת מחדל = {} הצהרה אופציונלית המציינת פרטי אימות של חלק מכתובות ה-URL. |
integrity
|
ברירת מחדל = '' סכום הבדיקה הצפוי של הקובץ שהורד, בפורמט תקינות של משאבי משנה. הוא צריך להיות זהה לסיכום הביקורת של הקובץ שהורד. כדי לצמצם את סכומי ההמחאה, אנחנו עלולים להשמיט את האבטחה מרחוק. אם משמיטים את השדה הזה, הוא עלול להיות לא-הירמטי. לא חייבים לשלב פיתוח, אבל צריך להגדיר אותו לפני המשלוח. |
rename_files
|
ברירת מחדל = {} הכתבה אופציונלית שמציינת קבצים לשינוי שם במהלך החילוץ. ערכים של ארכיון עם שמות שתואמים במדויק למפתח ישתנו לשם, לפני התאמת קידומת של ספרייה. אפשר להשתמש באפשרות הזאת כדי לחלץ ארכיונים שמכילים שמות קבצים שאינם מסוג Unicode, או שמכילים קבצים שחולצו לאותו נתיב במערכות קבצים שאינן תלויות אותיות רישיות. |
הפעלה
exec_result repository_ctx.execute(arguments, timeout=600, environment={}, quiet=True, working_directory="")ביצוע הפקודה שניתנה על ידי רשימת הארגומנטים. זמן הביצוע של הפקודה מוגבל על ידי
timeout
(בשניות, ברירת המחדל היא 600 שניות). השיטה הזו מחזירה מבנה exec_result
המכיל את הפלט של הפקודה. ניתן להשתמש במפה של environment
כדי לשנות חלק ממשתני הסביבה שיועברו לתהליך.
פרמטרים
פרמטר | תיאור |
---|---|
arguments
|
חובה רשימת ארגומנטים, הרכיב הראשון צריך להיות הנתיב של התוכנית להרצה. |
timeout
|
ברירת מחדל = 600 משך הזמן המרבי של הפקודה (בשניות) (ברירת המחדל היא 600 שניות). |
environment
|
ברירת מחדל = {} מאלצים הגדרה של משתני סביבה מסוימים בתהליך. |
quiet
|
ברירת מחדל = True אם stdout ו-stderr מודפסים למסוף. |
working_directory
|
ברירת מחדל = "" ספריית עבודה לביצוע פקודה. יכול להיות יחסי לשורש המאגר או למוחלט. |
חילוץ
None repository_ctx.extract(archive, output='', stripPrefix='', *, rename_files={})חילוץ ארכיון לספריית המאגר.
פרמטרים
פרמטר | תיאור |
---|---|
archive
|
string; or Label; or path ;
נדרשלהעברה לארכיון שהאריזה שלה תוסר, ביחס לספריית המאגר. |
output
|
string; or Label; or path ;
ברירת המחדל = ''נתיב למאגר שבו הארכיון יופרז, ביחס לספריית המאגר. |
stripPrefix
|
ברירת מחדל = '' תחילית ספרייה להסרת הקבצים שחולצו. ארכיונים רבים מכילים ספרייה ברמה העליונה שמכילה את כל הקבצים בארכיון. במקום לציין את הקידומת הזו שוב ושוב ב build_file , אפשר להשתמש בשדה הזה כדי להסיר אותה מהקבצים שחולצו.
|
rename_files
|
ברירת מחדל = {} הכתבה אופציונלית שמציינת קבצים לשינוי שם במהלך החילוץ. ערכים של ארכיון עם שמות שתואמים במדויק למפתח ישתנו לשם, לפני התאמת קידומת של ספרייה. אפשר להשתמש באפשרות הזאת כדי לחלץ ארכיונים שמכילים שמות קבצים שאינם מסוג Unicode, או שמכילים קבצים שחולצו לאותו נתיב במערכות קבצים שאינן תלויות אותיות רישיות. |
קובץ
None repository_ctx.file(path, content='', executable=True, legacy_utf8=True)יצירת קובץ בספריית המאגר עם התוכן שסופק.
פרמטרים
פרמטר | תיאור |
---|---|
path
|
string; or Label; or path .
נדרשנתיב של הקובץ ליצירה, ביחס לספריית המאגר. |
content
|
default = '' התוכן של הקובץ שיש ליצור, ריק כברירת מחדל. |
executable
|
ברירת מחדל = True הגדרה של סימון קובץ ההפעלה בקובץ שנוצר, true כברירת מחדל. |
legacy_utf8
|
ברירת מחדל = True קידוד התוכן של הקובץ ל-UTF-8, True כברירת מחדל. גרסאות עתידיות ישנו את ברירת המחדל ויסירו את הפרמטר הזה. |
name
string repository_ctx.nameהשם של המאגר החיצוני שנוצר על ידי הכלל הזה.
OS
repository_os repository_ctx.osמבנה גישה למידע מהמערכת.
patch
None repository_ctx.patch(patch_file, strip=0)החלה של קובץ תיקון על ספריית הבסיס של מאגר חיצוני. קובץ התיקון צריך להיות קובץ פורמט אחיד. הטמעת התיקון המקורי של Bazel אינה תומכת בהתאמה ב-Foze ובתיקון בינארי כמו כלי שורת הפקודה של התיקון.
פרמטרים
פרמטר | תיאור |
---|---|
patch_file
|
string; or Label; or path ;
נדרשקובץ התיקון שעליו להשתמש, הוא יכול להיות תווית, נתיב יחסי או נתיב מוחלט. אם זהו נתיב יחסי, הוא יועבר לספריית המאגר. |
strip
|
ברירת מחדל = 0 הסרת המספר שצוין של רכיבים מובילים משמות הקבצים. |
נתיב
path repository_ctx.path(path)מחזירה נתיב ממחרוזת, תווית או נתיב. אם הנתיב הוא יחסי, הוא יושלם באופן יחסי לספריית המאגר. אם הנתיב הוא תווית, הוא יועבר לנתיב של הקובץ התואם. שימו לב שמאגרים מרוחקים מופעלים במהלך שלב הניתוח, ולכן לא יכולים להיות תלויים בתוצאת יעד (התווית צריכה להפנות לקובץ שלא נוצר). אם הנתיב הוא נתיב, הוא יחזיר את הנתיב הזה כמו שהוא.
פרמטרים
פרמטר | תיאור |
---|---|
path
|
string; or Label; or path ;
נדרשמחרוזת, תווית או נתיב שמהם יוצרים נתיב |
קריאה
string repository_ctx.read(path)קורא את התוכן של קובץ במערכת הקבצים.
פרמטרים
פרמטר | תיאור |
---|---|
path
|
string; or Label; or path ;
נדרשנתיב של הקובץ לקריאה. |
report_progress
None repository_ctx.report_progress(status='')מתבצע עדכון של סטטוס ההתקדמות באחזור המאגר או תוסף המודול
פרמטרים
פרמטר | תיאור |
---|---|
status
|
string ;
ברירת מחדל = ''מחרוזת המתארת את הסטטוס הנוכחי של התקדמות האחזור |
קישור סימבולי
None repository_ctx.symlink(target, link_name)יוצר קישור סימטרי במערכת הקבצים.
פרמטרים
פרמטר | תיאור |
---|---|
target
|
string; or Label; or path ;
חובההנתיב שאליו הקישור הסימולטי צריך להפנות. |
link_name
|
string; or Label; or path ;
נדרשהנתיב של הקישור הסמל ליצירת, ביחס לספריית המאגר. |
תבנית
None repository_ctx.template(path, template, substitutions={}, executable=True)הסקריפט הזה יוצר קובץ חדש באמצעות
template
. כל חזרה ב-template
מהמפתח substitutions
תוחלף בערך המתאים. התוצאה כתובה בpath
. ניתן להגדיר ארגומנט אופציונליexecutable
(ברירת מחדל כ-True) כדי להפעיל או להשבית את סיכת ההפעלה.
פרמטרים
פרמטר | תיאור |
---|---|
path
|
string; or Label; or path .
נדרשנתיב של הקובץ ליצירה, ביחס לספריית המאגר. |
template
|
string; or Label; or path ;
צריךלהזין את קובץ התבנית. |
substitutions
|
ברירת מחדל = {} תחליפים בעת הרחבת התבנית. |
executable
|
ברירת מחדל = True הגדרה של סימון קובץ ההפעלה בקובץ שנוצר, true כברירת מחדל. |
איזה
path repository_ctx.which(program)מחזירה את הנתיב של התוכנית המתאימה או את הערך None אם אין תוכנית כזו בנתיב.
פרמטרים
פרמטר | תיאור |
---|---|
program
|
נדרשת כדי למצוא את הנתיב. |
None
.
workspace_root
path repository_ctx.workspace_rootהנתיב לסביבת העבודה הבסיסית של ההפעלה של הבסיס.