Fabric (далее просто «фабрика») — это швейцарский нож в мире развертывания приложений на Python, она содержит огромное количество инструментов для этого. Вам более не придется подключаться по SSH с целью обновить проект, загрузить веб-сервер, запустить «compilemessages» или «collectstatic», теперь всю эту рутину можно описать в вашем файле команд фабрики.
В статье будет рассматриваться Fabric версии 1.4.3
Установка
Для установки достаточно установить одноименный пакет Fabric:
pip install Fabric
Настройка fabfile
Для создания своих команд по развертыванию проекта и вспомогательных функций (создание бекапов, работа с системой контроля версий, запуск любых команд как удаленно так и локально, и т.п.) необходимо создать в корне Django-проекта файл fabfile.py, для примера, со следующим содержимым:
Теперь создадим приватный и публичный ключ «git_example_org» для подключения к серверу:
$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/username/.ssh/id_rsa): /home/username/.ssh/git_example_org Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/username/.ssh/git_example_org. Your public key has been saved in /home/username/.ssh/git_example_org.pub. .
Вы можете вместо ключей передавать пароль, либо после подключения к серверу указывать его каждый раз, либо непосредственно указать его в файле fabfile.py:
Как установить FABRIC/ФАБРИК моды на Майнкрафт 1.14.4 1.11.16.5 1.18.2 1.19.2
env.password = «some_password»
Использование
После того как мы создали fabfile.py и настроили подключение по ssh, мы теперь можем перейти в каталог проекта и запустить fab deploy (или любую другую определенную вами команду):
$ cd ~/work/project source venv/bin/activate $ fab deploy another_command
Также вы можете указывать определенные роли или хосты, для которых выполнится какая-либо команда, например «deploy»:
Можете запускать произвольные команды (например «uname -a»):
$ fab —list
В принципе, все ключи описаны в документации.
Передача аргументов
Всё очень просто, вы определяете args/kwargs у себя в команде:
def deploy(arg1, arg2, kwarg1=’something’, kwarg2=True): pass
После чего, в консоли эти аргументы можно будет передать так:
fab deploy:’arg1′,42,kwarg1=sometext,kwarg2=’text with spaces’
Подробнее о базовой функциональности фабрики
Я буду рассматривать только функции которыми я пользуюсь:
cd Используется для указания каталога в который необходимо перейти, будет вызван «/bin/cd» перед каждым запуском команды в контексте. Пример:
def something(): with cd(‘/var/www’): run(‘ls’) # cd /var/www ls with cd(‘website1’): run(‘ls’) # cd /var/www/website1 ls
lcd Аналогично «cd», но только локально. Пример:
def something(): with lcd(‘/tmp’): local(‘ls -la’)
run(command, shell=True, pty=True, combine_stderr=True)
Запуск любой, доступной пользователю (через которого выполняется подключение к удаленной машине), команды на сервере. Пример:
Смотря какой fabric смотря сколько details
def something(): run(‘cat /etc/issue’)
local(command, capture=False)
Запуск любой команды на локальной машине. Пример:
def something(): local(‘cat /etc/issue’)
$ fab something >>> [localhost] local: cat ssue >>> Ubuntu 12.04 LTS n l
sudo(command, shell=True, pty=True, combine_stderr=True, user=None)
Запуск команды из под sudo. Пример:
def something(): sudo(‘service mysql restart’, user=»mysql»)
open_shell Получение shell’a с удаленного хоста. Пример:
def something(): # Что-то делаем. open_shell() # Запускаем shell, а выходим по «exit» или «Ctrl+D» # После выхода из шелла продолжаем!
abort Прерывает выполнение команды. Пример:
from fabric.api import abort from fabric.contrib.files import exists def something(): if not exists(‘/tmp/super.sock’): abort(‘Alarm!’)
warn Выводит warning-сообщение, но не прерывает выполнение команды. Пример:
def something(): warn(«Something wrong!»)
puts Выводит сообщение, аналогично print(), но работает через output фабрики. Пример:
def something(): puts(«Don’t worry, be happy!»)
env Переменная окружения, в которую можно добавить необходимые атрибуты и использовать их при необходимости, пример использования был уже выше:
settings Вы можете использовать settings для выполнения функций с указанными настройками, то есть можно было бы определить через env: «env.warn_only=True», но тогда бы действовало глобально, а так получается только в контексте «with». Пример:
def something(): with settings(warn_only=True): run(‘test -e <>’.format(path)) # Даже если произойдет ошибка, warn_only не дас прерваться фабрике
Принимает ряд параметров, например «alias» для того чтобы переименовывать команды на более короткие:
get(filepath)
Получение (скачивание) файла с удаленного хоста. Пример
def something(): get(‘/path/to/somefile.jpg’)
put(filepath)
Заливка (upload) на удаленный хост файла. Пример:
def something(): put(‘/path/to/somefile.txt’, ‘/tmp/file.txt’) # или так with cd(‘/tmp’): put(‘/path/to/somefile.txt’, ‘file.txt’)
prefix(command)
Для всех run/sudo будет выполнятся команда переданная в качестве «command».
Например для virtualenv:
def something(): with prefix(«source /path/to/venv/bin/activate»): run(‘./manage.py syncdb’)
Получится в итоге:
$ source /path/to/venv/bin/activate ./manage.py syncdb
prompt(sometext)
Аналогичен питоновскому raw_input(), запросит у пользователя данные, после ввода можно докрутить логики на основе ответа от пользователя. Пример:
def something(): response = prompt(‘You are sure?’) if response == «Yes»: run(‘rm -rf /’)
reboot Перезагрузка машины для указанных хостов. Пример:
def something(): reboot(wait=120)
В комплекте с фабрикой идут батарейки:
- fabric.contrib.console
- fabric.contrib.django
- fabric.contrib.files
- fabric.contrib.project
Например в последнем есть «rsync_project», которым можно пользоваться например так:
Рекомендую
Для расширения стандартного API рекомендую посмотреть проект https://github.com/ronnix/fabtools , там вы найдете функциональность для работы с Supervisor, PostgreSQL, MySQL, Deb, Crontab, VirtualEnv, Nginx, Redis, Postfix и т.д.
Также рекомендую обратить внимание на проекты Chef, Puppet и Buildout.
Комментарии
Для Джанги стоит обратить внимание на https://bitbucket.org/kmike/django-fab-deploy/overview
dZ, спасибо, я знал только про https://github.com/ronnix/fabtools
Да, прикольная штука — давно юзаем)
Источник: adw0rd.com
Документация по Microsoft Fabric
Microsoft Fabric — это единая платформа, которая может удовлетворить потребности вашей организации в данных и аналитике. Узнайте о возможностях, которые может предложить Структура, понять, как она работает и как ее использовать.
Обзор возможностей Microsoft Fabric
Узнайте о Microsoft Fabric, оцените ее функции, проанализируйте данные и запустите отчеты.
Начало работы
- Что такое Структура?
- Лицензии Microsoft Fabric
- Приобретение подписки Microsoft Fabric
- Навигация по порталу Fabric
- Рабочие области в Fabric
- Подробнее
Power BI
- Включение Microsoft Fabric для вашей организации
- Что такое Power BI?
- Что такое объект данных?
- Интеграция Azure и Power BI
- Подробнее
OneLake
- Что такое OneLake?
- Что такое ярлыки?
- Создание lakehouse с помощью OneLake
- Интеграция OneLake и Azure Synapse Analytics
- Подробнее
Фабрика данных
- Что такое Фабрика данных?
- Создание первого конвейера
- Создание первого потока данных
- Соединители
- Подробнее
Инжиниринг данных Synapse
- Что такое Инжиниринг данных?
- Создание Lakehouse
- Создание определения задания Spark
- Подробнее
Обработка и анализ данных Synapse
- Что такое обработка и анализ данных?
- Эксперимент машинного обучения
- Использование комплексных примеров ИИ
- Подробнее
Synapse Data Warehouse
- Что такое Data Warehouse?
- Создание хранилища
- Запрос с помощью редактора SQL-запросов
- Подробнее
Аналитика Synapse в реальном времени
- Что такое Real-Time Analytics?
- Что такое поток событий?
- Создание базы данных
- Подробнее
Администрирование и управление
- Приобретение подписки Microsoft Fabric
- Администрирование Структуры
- Управление данными и соответствие требованиям
- Безопасность
- Подробнее
Взаимодействие с разработчиками
- Интерфейсы REST API
- Конвейеры развертывания
- Интеграция Git
- Подробнее
Устранение неполадок
- Создание запроса в службу поддержки
- Известные проблемы
- Устранение неполадок
- Подробнее
Учебные модули
- Сквозная аналитика с помощью Fabric
- Начало работы с lakehouses
- Использование конвейеров Фабрики данных
- Начало работы с обработкой и анализом данных
- Подробнее
Похожие продукты
Power Platform — это платформа с низким уровнем кода, которая позволяет пользователям легко создавать и автоматизировать бизнес-решения с помощью Power Apps, Power Automate и Power BI.
Azure Synapse — это служба аналитики без ограничений, которая объединяет корпоративное хранилище данных и аналитику больших данных.
Фабрика данных Azure — это облачная служба Azure для извлечения, преобразования и загрузки данных, с помощью которой можно интегрировать и преобразовывать данные бессерверных вычислений в горизонтальном масштабе.
Источник: learn.microsoft.com
Как установить Fabric в TLauncher / Майнкрафт
Fabric — загрузчик модов для Minecraft, альтернатива/аналог Forge. На Фабрик сделано уже достаточно много модов (к примеру, Sodium для оптимизации FPS), поддерживает множество версий Minecraft. В данном гайде узнаете, как скачать и установить в ТЛаунчер версию с Fabric.
0) Проверяем, что у вас последняя версия нашего лаунчера. Скачать актуальную версию TLauncher можно с главной страницы.
Автоматическая установка Fabric через TLauncher
В нашем лаунчере можно найти Fabric, как и другие модифицированные версии, в главном списке версий. Они все будут установлены в один клик.
Условия: Ваш TLauncher выше версии 2.7.
Автоматическая установка Fabric в мод-паках TLauncher
Условия: Ваш TLauncher выше версии 2.87.
1) Открываем TLauncher, в нижнем правом углу, находим кнопку «TL MODS», кликаем на неё.
2) На новой странице, находим кнопку «Создать» и кликаем на неё.
3) В новом окне, меняем в выпадающем списке: «Тип версии» с Forge на Fabric (1), выбираем нужную версию игры (2). Вводим любое имя (3) и создаём мод-пак!
4) Готово! У вас есть версия с Fabric, переходим во вкладку «Моды» и устанавливаем интересные модификации.
П.С. Fabric API будет установлен автоматически, после создания вашего мод-пака (можете видеть в таблице установленных модов).
Ручная установка Fabric
Вы по-прежнему сможете установить любую версию Fabric вручную в TLauncher, следуйте инструкции ниже, и вы всё сможете!
Где скачать Fabric
1) Самым правильный вариантом, будет скачивание с официального сайта: fabricmc.net. Мы не гарантируем, что скаченное с других сайтов заработает через наш лаунчер!
2) На представленном сайте кликаем на большую синюю кнопку «Download» (ТОЛЬКО ЕЁ!), версию можно оставлять первую (это не версия игры, а установщика, выбор версии игры будет дальше!). Скачиваем под Windows (1) или универсальный Jar (2) (для MacOS/Linux):
Установка Fabric
3.1) Рекомендуем предварительно установить простую версию игры, используя TLauncher (ту версию, которую собираетесь использовать через Fabric).
3.2) Запускаем скаченный вами Установщик (Installer) Fabric, и из списка «Minecraft Version» выбираем нужную версию игры.
4) Больше нечего можно не выбирать, только если нужно, включить галочку снапшоты! Нечего больше изменять не нужно и кликаем на «Install». Готово!
5) Закрываем установщик и открываем TLauncher, в списке версий теперь ищем новую версию «fabric-loader-XXX+XXX». Можем запускать.
Что такое Fabric API
Fabric API — дополнительная библиотека для Fabric, расширяющая функционал модам. Fabric API обычный мод, поэтому и его устанавливают его как мод. Для некоторых модов он может быть обязательным для установки!
Где скачать Fabric API
Скачать можно с официальной страницы Fabric API. Выбираете нужную версию игры и скачиваете под неё Fabric API. Версия игры Fabric и Fabric API должны совпадать!
Установка Fabric API
После скачивания Фабрик АПИ, он будет в виде стандартного .jar мода. Скопируйте его в директорию: .minecraft/mods/ и запустите игру Fabric версии.
Где найти моды на Fabric
Моды на Fabric устанавливаются абсолютно так же, как и у forge, в папку mods. При такой ручной установке вам необходимо обязательно на скачиваемом сайте найти, что мод именно на Fabric. На нашем сайте есть моды Майнкрафт на Фабрик, в блоке с инструкцией установки сможете найти информации о принадлежности к Fabric или Forge.
Как вручную установить моды на Fabric
Первый шаг: Скачайте и установите Fabric и Fabric API (по инструкции выше).
Второй шаг: Скачайте файл с модом (убедившись, что он именно на Fabric)
Третий шаг: Скопируйте файл мода (будет «name.jar») в директорию: .minecraft/mods/ (Если такой папки нет, создайте её вручную).
Источник: tlauncher.org