Це командна панель, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
fab - простий інструмент віддаленого розгортання Pythonic
СИНТАКСИС
приголомшливий [командує ...]
ОПИС
Найпоширенішим методом використання Fabric є інструмент командного рядка, приголомшливий, Яка
повинен був бути розміщений у виконуваному шляху вашої оболонки під час встановлення Fabric. приголомшливий
намагається бути хорошим громадянином Unix, використовуючи стандартний стиль перемикачів командного рядка,
довідковий вихід тощо.
ВИКОРИСТАННЯ
Базовий використання
У найпростішій формі, приголомшливий може викликатися взагалі без опцій, а також з одним або кількома
аргументи, які мають бути іменами завдань, наприклад:
$ fab завдання1 завдання2
Це буде працювати завдання 1 подальшою завдання 2, припускаючи, що Fabric зміг знайти fabfile
поруч із функціями Python з такими іменами.
Однак можна розширити це просте використання на щось більш гнучке, використовуючи
надані параметри та/або передача аргументів до окремих завдань.
Довільно віддалений оболонка Команди
Нове у версії 0.9.2.
Fabric використовує менш відому конвенцію командного рядка і може бути викликана в наступному
спосіб:
$ fab [параметри] -- [команда оболонки]
де все після -- перетворюється на тимчасову пробіг виклик, і не аналізується
приголомшливий варіанти. Якщо ви визначили список хостів на рівні модуля або в командному рядку,
це використання буде діяти як однорядкове анонімне завдання.
Наприклад, припустимо, ви просто хотіли отримати інформацію про ядро для купи систем; ти
міг зробити це:
$ fab -H система1, система2, система3 -- uname -a
що буде буквально еквівалентно наступному fabfile:
із запуску імпорту fabric.api
def anonymous():
запустити ("uname -a")
ніби це було виконано таким чином:
$ fab -H system1,system2,system3 анонімний
У більшості випадків вам захочеться просто записати завдання у свій fabfile (все, що ви
використайте один раз, ви, ймовірно, скористаєтеся знову), але ця функція забезпечує зручний і швидкий спосіб
швидко запустіть команду SSH, використовуючи параметри підключення вашого fabfile.
Командний рядок опції
Швидкий огляд усіх можливих параметрів командного рядка можна знайти за допомогою приголомшливий --допомога. Якщо
якщо ви шукаєте детальну інформацію про конкретну опцію, ми детально розглянемо нижче.
ПРИМІТКА:
приголомшливий використовує Python optparse бібліотека, що означає, що вона відповідає типовому стилю Linux або GNU
короткі та довгі варіанти, а також вільне змішування варіантів та аргументів. напр приголомшливий завдання 1
-H ім'я хоста завдання 2 -i шлях/до/файл ключа є настільки ж дійсним, як і більш простим приголомшливий
-H ім'я хоста -i шлях/до/файл ключа завдання 1 завдання 2.
-а, --no_agent
набори env.no_agent до Правда, змушуючи наш рівень SSH не спілкуватися з агентом SSH, коли
намагається розблокувати файли приватного ключа.
Нове у версії 0.9.1.
-A, --форвард-агент
набори env.forward_agent до Правда, що дозволяє пересилати агента.
Нове у версії 1.4.
--переривання за підказками
набори env.abort_on_prompts до Правда, змушуючи Fabric переривати роботу, коли це підказуватиметься
для введення.
Нове у версії 1.1.
-c RCFILE, --config=RCFILE
набори файл env.rc до заданого шляху до файлу, який Fabric спробує завантажити під час запуску
і використовувати для оновлення змінних середовища.
-d КОМАНДА, --display=КОМАНД
Друкує весь рядок документів для заданого завдання, якщо він є. Наразі немає
роздрукуйте сигнатуру функції завдання, тому описові рядки документів є гарною ідеєю.
(Вони завжди хороша ідея, звісно, тільки більше тут.)
--connection-attempts=M, -n M
Установіть кількість спроб підключення. Набори env.connection_attempts.
СМ ТАКОЖ:
env.connection_attempts, env.timeout
Нове у версії 1.4.
-Д, --disable-known-hosts
набори env.disable_known_hosts до Правда, не дозволяючи Fabric завантажувати SSH користувача
відомі_господарі файлу.
-f FABFILE, --fabfile=FABFILE
Шаблон назви fabfile для пошуку (за замовчуванням fabfile.py), або по черзі an
явний шлях до файлу для завантаження як fabfile (наприклад /path/to/my/fabfile.py.)
СМ ТАКОЖ:
fabfiles
-F LIST_FORMAT, --list-format=СПИСОК_ФОРМАТ
Дозволяє контролювати вихідний формат -- список. коротка еквівалентна
-- короткий список, нормальний це те саме, що просто повністю опустити цей параметр (тобто
за замовчуванням), і вкладений друкує вкладене дерево простору імен.
Нове у версії 1.1.
СМ ТАКОЖ:
-- короткий список, -- список
-g ВЕДУЧИЙ, --gateway=ХОСТ
набори навколо шлюзу до HOST хост рядок.
Нове у версії 1.5.
-h, --допомога
Відображає стандартне повідомлення довідки з усіма можливими параметрами та коротким оглядом
що вони роблять, то виходить.
--hide=РІВНІ
Розділений комами список вихід рівні приховати за замовчуванням.
-H ГОСПОДАРІ, --hosts=ХОСТИ
набори env.hosts до заданого списку рядків хоста, розділених комами.
-x ГОСПОДАРІ, --exclude-hosts=ХОСТИ
набори env.exclude_hosts до заданого розділеного комами списку рядків хоста до then
уникати остаточного списку хостів.
Нове у версії 1.1.
-i KEY_FILENAME
Якщо встановлено шлях до файлу, цей файл завантажиться як файл ідентифікації SSH (зазвичай
приватний ключ.) Цей параметр можна повторити кілька разів. Встановлює (або додає до)
env.key_filename.
-я, --підказка початкового пароля
Примусово запитувати пароль на початку сеансу (після завантаження fabfile і параметра
аналізу, але перед виконанням будь-яких завдань) для попереднього заповнення env.password.
Це корисно для виконання запусків (особливо паралельних сеансів, під час яких
введення під час виконання неможливе) під час встановлення пароля через --пароль або шляхом
установка env.password у вашому fabfile, небажано.
ПРИМІТКА:
Значення, введене в цьому запиті, буде перезаписати все, що постачається через
env.password на рівні модуля або через --пароль.
СМ ТАКОЖ:
керування паролями
-k набори env.no_keys до Правда, змушуючи шар SSH не шукати закритий ключ SSH
файли в домашньому каталозі.
Нове у версії 0.9.1.
--keepalive=ЗБЕРЕЖИТЬСЯ
набори env.keepalive до заданого (цілого) значення, вказуючи підтримку SSH
інтервал.
Нове у версії 1.1.
--по рядку
Примусово буферизувати вихідні дані рядково, а не побайтно. Часто корисні або
необхідний для паралельно виконання.
Нове у версії 1.3.
-л, -- список
Імпортує fabfile як зазвичай, але потім друкує список усіх знайдених завдань і
виходи. Також буде надруковано перший рядок рядка документів кожного завдання, якщо він є, наступний
до нього (усікаючи, якщо необхідно.)
Змінено у версії 0.9.1: до виводу додано рядок документів.
СМ ТАКОЖ:
-- короткий список, --формат списку
-p ПАРОЛЬ, --пароль=ПАРОЛЬ
набори env.password до заданого рядка; потім він буде використовуватися як пароль за замовчуванням
під час встановлення з’єднань SSH або виклику Суду програми.
СМ ТАКОЖ:
--підказка початкового пароля
-П, --паралельний
набори окол.паралельний до Правда, що призводить до паралельного виконання завдань.
Нове у версії 1.3.
СМ ТАКОЖ:
/використання/паралель
--ні-пти
набори env.always_use_pty до Помилковий, викликаючи все пробіг/Суду закликає поводитися як один
вказав pty=False.
Нове у версії 1.0.
-р, --reject-unknown-hosts
набори env.reject_unknown_hosts до Правда, через що Fabric переривається під час підключення до
хости, не знайдені в SSH користувача відомі_господарі файлу.
-R РОЛІ, --roles=РОЛІ
набори env.roles до заданого списку імен ролей, розділених комами.
--набір КЛЮЧ=ЗНАЧЕННЯ,...
Дозволяє встановити значення за замовчуванням для довільних змінних env Fabric. Цінності встановлюються таким чином
мають низький пріоритет - вони не замінять більш конкретні варі env, які є
також вказано в командному рядку. наприклад:
fab --set password=foo --password=bar
призведе до env.password = 'бар', Чи не 'foo'
множинний КЛЮЧ=ЗНАЧЕННЯ пари можуть бути розділені комами, напр приголомшливий --набір
змінна1=значення1,змінна2=значення2.
Окрім базових рядкових значень, ви також можете встановити для env vars значення True, пропустивши параметр
=ЗНАЧЕННЯ (напр приголомшливий --набір KEY), і ви можете встановити значення для порожнього рядка (і, таким чином, a
Значення хибного еквіваленту), зберігаючи знак рівності, але пропускаючи VALUE (напр приголомшливий
--набір КЛЮЧ=.)
Нове у версії 1.4.
-s ШЕЛЛ, --shell=ОБОЛОНКА
набори env.shell до заданого рядка, перевизначаючи обгортку оболонки за замовчуванням, яку використовували
виконувати віддалені команди.
-- короткий список
Як і в -- список, але без будь-яких прикрас, лише назви завдань, розділені символами
нові рядки без відступів або рядків документації.
Нове у версії 0.9.2.
СМ ТАКОЖ:
-- список
--show=РІВНІ
Розділений комами список вихід рівні додавати до тих, які відображаються
за замовчуванням.
СМ ТАКОЖ:
пробіг, Суду
--ssh-конфігураційний шлях
набори env.ssh_config_path.
Нове у версії 1.4.
СМ ТАКОЖ:
ssh-конфігурація
--skip-bad-hosts
набори env.skip_bad_hosts, через що Fabric пропускає недоступні хости.
Нове у версії 1.4.
--пропустити-невідомі-завдання
набори env.skip_unknown_tasks, через що Fabric пропускає невідомі завдання.
СМ ТАКОЖ:
env.skip_unknown_tasks
--тайм-аут=N, -t N
Встановити час очікування підключення в секундах. Набори env.timeout.
СМ ТАКОЖ:
env.timeout, env.connection_attempts
Нове у версії 1.4.
--command-timeout=N, -T N
Встановити час очікування віддаленої команди в секундах. Набори env.command_timeout.
СМ ТАКОЖ:
env.command_timeout,
Нове у версії 1.6.
-u КОРИСТУВАЧ, --user=КОРИСТУВАЧ
набори env.user до заданого рядка; потім воно буде використовуватися як ім'я користувача за замовчуванням
під час встановлення SSH-з'єднань.
-V, -- версія
Відображає номер версії Fabric, а потім виходить.
-w, --лише попередження
набори env.warn_only до Правда, через що Fabric продовжує виконуватися, навіть коли команди
зіткнутися з умовами помилки.
-z, -- розмір басейну
набори env.pool_size, який визначає, скільки процесів виконуватиметься одночасно
паралельне виконання.
Нове у версії 1.3.
СМ ТАКОЖ:
/використання/паралель
За завдання аргументація
Наведені варіанти параметри командного рядка застосовувати до виклику приголомшливий в цілому; навіть
якщо порядок змішаний, параметри однаково застосовуються до всіх заданих завдань.
Крім того, оскільки завдання — це лише функції Python, їх часто бажано передати
аргументи для них під час виконання.
На обидві ці потреби відповідає концепція «аргументів для кожного завдання», яка є особливою
синтаксис, який можна прикріпити до кінця будь-якої назви завдання:
· Використовуйте двокрапку (:) відокремити назву завдання від його аргументів;
· Використовуйте коми (,), щоб відокремити аргументи один від одного (можна екранувати за допомогою a
зворотний скіс, тобто \,);
· Використовуйте знаки рівності (=) для аргументів ключових слів або опустіть їх для позиційних аргументів. Може
також екранувати за допомогою зворотної косої риски.
Крім того, оскільки цей процес включає синтаксичний аналіз рядків, усі значення будуть в кінцевому підсумку як Python
рядки, тому плануйте відповідно. (Ми сподіваємося покращити це в майбутніх версіях Fabric,
за умови, що можна знайти інтуїтивно зрозумілий синтаксис.)
Наприклад, завдання "створити нового користувача" можна визначити так (опускаючи більшість
фактична логіка для стислості):
def new_user(ім'я користувача, admin='no', comment="Немає коментарів"):
print("Новий користувач (%s): %s" % (ім'я користувача, коментар))
проходити
Ви можете вказати лише ім’я користувача:
$ fab новий_користувач:моє ім'я користувача
Або розглядайте це як явний аргумент ключового слова:
$ fab new_user:username=myusername
Якщо вказані обидва аргументи, ви можете знову вказати їх як позиційні аргументи:
$ fab new_user:myusername, так
Або змішуйте та поєднуйте, як у Python:
$ fab new_user:myusername,admin=yes
Команда друк виклик вище корисний для ілюстрації екранованих ком, наприклад:
$ fab new_user:myusername,admin=no,comment='Гері\, новий розробник (починається з понеділка)'
ПРИМІТКА:
Обов’язковим є використання коми, що екранується зворотною косою рискою, оскільки якщо цього не зробити, це спричинить запуск оболонки
синтаксичні помилки. Лапки також потрібні, коли аргумент включає інші, пов’язані з оболонкою
символи, такі як пробіли.
Все вищезазначене перекладено на очікувані виклики функцій Python. Наприклад,
останній дзвінок вище буде:
>>> new_user('myusername', admin='yes', comment='Гері, новий розробник (починається з понеділка)')
Ролі та хостів
Як згадувалося в розділ on завдання виконання, є кілька ключових слів для кожного завдання
аргументи (господар, хостів, роль та ролі), які насправді не відповідають функціям завдання
самі, але використовуються для налаштування хостів та/або списків ролей для кожного завдання.
Ці особливі кварги є віддалений з args/kwargs, надісланих до самої функції завдання;
це для того, щоб ви не зіткнулися з помилками типу, якщо ваше завдання не визначає kwargs
питання. (Це також означає, що якщо ви do визначте аргументи з цими іменами, ви не будете
спроможний вказати їх у такий спосіб - прикро, але необхідна жертва.)
ПРИМІТКА:
Якщо вказані форми множини та однини цих kwargs, значення the
множина переможе, а однина буде відкинута.
При використанні форми множини цих аргументів необхідно використовувати крапку з комою (;) після коми
вже використовуються для відокремлення аргументів один від одного. Крім того, оскільки ваш
shell, швидше за все, вважатиме крапку з комою спеціальним символом, вам захочеться ввести хост
рядок списку, щоб запобігти інтерпретації оболонки, наприклад:
$ fab new_user:myusername,hosts="host1;host2"
Знову ж таки, оскільки хостів kwarg видаляється зі списку аргументів, надісланого до новий користувач завдання
функцією, фактичним викликом Python буде new_user('myusername'), і функція
буде виконуватися в списку хостів ['host1', 'host2'].
Налаштування файли
Fabric наразі шанує простий файл налаштувань користувача, або fabricrc (подумайте bashrc Крім
приголомшливий), який має містити одну або кілька пар ключ-значення, по одній на рядок. Ці рядки будуть
на тему string.split('='), і, таким чином, наразі може використовуватися лише для визначення рядка
налаштування. Будь-які такі пари ключ-значення будуть використані для оновлення env коли приголомшливий працює і завантажується
перед завантаженням будь-якого fabfile.
За замовчуванням Fabric шукає ~/.fabricrc, і це можна змінити, вказавши -c
прапор до приголомшливий.
Наприклад, якщо ваше типове ім’я користувача для входу в SSH відрізняється від імені користувача робочої станції,
і ви не хочете змінювати env.user у fabfile проекту (можливо, тому що ви очікуєте
інші також використовувати його) ви можете написати a fabricrc файл так:
користувач = ssh_ім'я_користувача
Потім, під час бігу приголомшливий, ваш fabfile завантажиться з env.user встановлений в 'ssh_user_name'.
Інші користувачі цього fabfile можуть зробити те ж саме, дозволяючи самому fabfile бути чистим
агностика щодо імені користувача за замовчуванням.
Використовуйте fab онлайн за допомогою служб onworks.net
