Создать функцию
-
В консоли управления
перейдите в каталог, в котором хотите создать функцию. -
Выберите сервис Cloud Functions
-
Нажмите кнопку Создать функцию.
-
Введите имя и описание функции. Формат имени:
- длина — от 2 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
Нажмите кнопку Создать.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>
. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name
или --folder-id
.
Чтобы создать функцию, выполните команду:
yc serverless function create --name=<имя_функции>
Результат:
id: b09bhaokchn9********
folder_id: aoek49ghmknn********
created_at: "2019-06-14T10:03:37.475Z"
name: python_function
log_group_id: eolm8aoq9vcp********
http_invoke_url: https://functions.yandexcloud.net/b09bhaokchn9********
status: ACTIVE
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Опишите в конфигурационном файле Terraform параметры ресурсов, которые необходимо создать:
resource "yandex_function" "my-function" { name = "<имя_функции>" user_hash = "<хеш_версии_функции>" runtime = "<среда_выполнения>" entrypoint = "<точка_входа>" memory = "<объем_памяти>" content { zip_filename = "<путь_к_ZIP-архиву>" } }
Где:
name
— имя функции.user_hash
— произвольная строка, определяющая версию функции. При изменениях функции необходимо менять и эту строку. Функция обновится при изменении этой строки.runtime
— среда выполнения функции.entrypoint
— имя функции в исходном коде, которая будет служить точкой входа в приложения.memory
— объем памяти в мегабайтах, отведенный для выполнения функции.content
— исходный код функции:zip_filename
— путь к ZIP-архиву, содержащему исходный код функции и необходимые зависимости.
Более подробную информацию о параметрах ресурса
yandex_function
см. в документации провайдера . -
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc serverless function list
-
Чтобы создать функцию, воспользуйтесь методом REST API create для ресурса Function или вызовом gRPC API FunctionService/Create.
Создать функцию можно с помощью плагина Yandex Cloud Toolkit