Статьи

Разработка проекта «Балерина» с помощью инструмента «Балерина CLI»

Ballerina — это язык программирования общего назначения, специально предназначенный для реализации приложений распределенных сетей. У Ballerina есть встроенные модули для создания распределенного веб-приложения с несколькими строками кода. Ballerina предоставляет инструмент CLI для обслуживания вашего проекта Ballerina. Эта статья представляет собой краткое введение в инструмент Ballerina CLI и его использование.

Вы можете скачать дистрибутив Ballerina с официального  сайта Ballerina . Вы можете начать писать программу Ballerina, как только загрузите и установите ее. Вы можете проверить версию установки балерины, выполнив следующую команду.

ballerina version

Эта команда печатает установленную версию Ballerina. Вы также можете проверить установленную папку Ballerina, выполнив следующую команду.

ballerina home

Вам также может понравиться: Интеграция данных с балериной

Создание нового проекта балерины с помощью CLI

Вы можете использовать следующую команду CLI Ballerina для создания нового проекта Ballerina. Эта команда создает новую папку, содержащую  Ballerina.tomlфайл и каталог src. Все ваши описания и зависимости от балерины включены в этот  Ballerina.tomlфайл.

ballerina new <project-name>

Теперь вы можете начать работу над своим проектом в только что созданном проекте Ballerina. Следующая команда генерирует модуль, чтобы начать писать собственный код Ballerina. Вы должны изменить текущий каталог на папку проекта Ballerina, чтобы выполнить эту команду.

ballerina add <module-name>

Эта команда генерирует структуру папок Ballerina внутри модуля Ballerina вместе с примером кода Hello World в Ballerina. <project_home>/src/<module_name>/main.balстановится основной точкой входа для вашего приложения.

Тесты для модуля должны быть размещены внутри <project_home>/src/<module_name>/tests/каталога. Программа «Hello, World» в main.bal выглядит следующим образом: 

import ballerina/io;

public function main() {
    io:println("Hello World!");
}

Вы можете построить проект вместе с тестом, выполнив следующую команду. Вы можете предотвратить запуск тестовых случаев, добавив —skip-testопцию в конце команды сборки.

ballerina build <module-name>

Команда build создает исходный код и преобразует его в программу Java в <project_home>/target/bin/папке. Если вы осмотрите эту папку, вы увидите jar-файл с именем модуля. Вы можете запустить этот JAR-файл на JVM так же, как вы запускаете стандартную программу Java.

Если вам нужно запустить модуль без сборки, вы можете попробовать следующую команду. Здесь вы можете запустить либо модуль, либо файл Ballerina.

ballerina run {<bal-file> | <module-name>}

Балерина хранит тайник внутри проекта Балерина. Он следит за кэшированием, чтобы ускорить процесс сборки.

  • BALO файлы, извлеченные из Центральной.
  • BIR файлы, созданные во время компиляции.
  • JAR-файл, сгенерированный во время компиляции

Выполнив следующую команду, Балерина очищает кэш внутри проекта балерины.

ballerina clean

Вы можете запустить тесты только с программой Ballerina, выполнив следующую команду. Вы можете протестировать весь модуль, добавив  -a  опцию, или вы можете протестировать только определенный модуль, указав имя модуля.

ballerina test <module-name>

Сотрудничать с другими через Балерина Центральная

Балерина Центральная целевая страница

Балерина Центральная целевая страница

Ballerina Central — это главное место, где разработчики могут делиться своим программным обеспечением с другими разработчиками. Ballerina Central работает так же, как работает git. Нажав на модули, вы можете загрузить свои модули в Ballerina Central. Таким же образом вы можете использовать модуль, созданный другими, потянув модули. Вы можете просмотреть доступные модули на  веб-сайте Ballerina Central .

Следующая команда может использоваться для поиска модуля Ballerina с помощью CLI вместо поиска на центральном веб-сайте Ballerina.

ballerina search <key-word>

Как только вы перечислите необходимый модуль, вы можете вставить модуль в свой проект, выполнив следующую команду.

ballerina pull <org-name>/<module-name>[:<version>]

Имя организации — это логическое имя, используемое для группировки модулей в общем пространстве имен. Например, вы можете взять модуль Twitter, который можно использовать для доступа к API Twitter, выполнив следующую команду.

ballerina pull wso2/twitter:0.9.26

Вы можете использовать Twitter-клиент для написания простого кода Ballerina следующим образом, чтобы отправить твит.

import wso2/twitter;

twitter:TwitterConfiguration twitterConfig = {
    clientId: testClientId,
    clientSecret: testClientSecret,
    accessToken: testAccessToken,
    accessTokenSecret: testAccessTokenSecret,
    clientConfig: { secureSocket: {
                        trustStore: {
                            path: "${ballerina.home}/bre/security/ballerinaTruststore.p12",
                            password: "ballerina"
                        }
                    }
                  }
};

public function main() {
twitter:Client twitterClient = new(twitterConfig);

string status = "Twitter endpoint test";
    var result = twitterClient->tweet(status);
    if (result is twitter:Status) {
        // If successful, print the tweet ID and text.
        io:println("Tweet ID: ", result.id);
        io:println("Tweet: ", result.text);
    } else {
        // If unsuccessful, print the error returned.
        io:println("Error: ", result);
    }
}

Если вам нужно опубликовать модуль в Ballerina Central, вам необходимо создать учетную запись в Ballerina Central. Затем вы можете получить секретный токен и положить его в <USER_HOME>/.ballerina/Settings.tomlфайл. Всегда не забывайте правильно указывать название организации  Ballerina.tomlв вашем файле <project_home>.

Безопасные пароли с помощью команды Ballerina Encrypt

В некоторых случаях вам может понадобиться использовать пароль внутри вашего кода. Предположим, например, что вам нужно создать бота в Twitter . Здесь мы просто сохраняем токены безопасности в виде простого текста внутри самого кода. Но хранить пароль внутри кода — плохая практика, так как он раскрывает пароль кому-то еще, кто может видеть ваш исходный код. Балерина предоставляет поддержку, чтобы скрыть ваш пароль от исходного кода и раскрывать его только во время выполнения.

Чтобы зашифровать значение, вам нужно сначала выполнить следующую команду. Эта команда сначала запрашивает значение для шифрования. Затем вы можете запросить пароль и подтвердить его.

ballerina encrypt

Эта команда генерирует зашифрованное значение в режиме CBC с методом AES. Теперь вы можете прочитать секретное значение из исходного кода следующим образом.

import ballerina/io;
import ballerina/config;

public function main() {
    io:println(config:getAsString("secret.password"));
}

Здесь мы используем модуль конфигурации для чтения файла конфигурации. secret.passwordэто псевдоним для реальной стоимости. Когда это приложение работает, вы должны предоставить зашифрованное значение в качестве аргумента командной строки.

ballerina run sample --secret.password="@encrypted:{MOT+c6216tQLzSxiDfXclFg75q1ktY6+3VlCa6uhn40=}"

Когда Балерина начинает работать, попросите пароль. Используйте пароль, который вы использовали для шифрования значения. Эта программа напечатает слово, которое вы установили с помощью  ballerina encryptкоманды.

Заключение

В этом сообщении мы рассмотрели функции CLI, предоставленные Ballerina. Вы можете легко создавать, создавать и тестировать проекты Ballerina, используя Ballerina CLI. Ballerina Central можно использовать для повторного использования модулей, разработанных другими разработчиками Ballerina. Вы также можете поделиться своим модулем с другими. 

Статьи по Теме