
от Мо Ибрагима

Какова бы технология без компьютера, который периодически выполняет работу?
То ли ваш телефон постоянно проверяет ваш почтовый ящик, то ли получает своевременные уведомления о погоде или задержках рейсов.
Как насчет услуги биткоин против канадского доллара всего за 56 секунд? Нет IFTTTнет Zapierно без языков программирования — и без фреймворков, без конфигурации сервера или докера, без Raspberry Pi, без AWS и без тестов!
Чтобы сделать пример максимально универсальным, мы будем использовать только 2 командные строки:
- один, чтобы ПОЛУЧИТЬ цену биткойна из API
- и другой, чтобы опубликовать его в другой службе.
Конечно, вы можете сделать это более полезным, опубликовав цену в Twitter, Twilio, Telegram, Slack и т.д. Здесь мы просто опубликуем его на putsreq.com, чтобы мы могли проверить запрос POST.
Затем мы используем GitLab-CI для планирования его ежедневного запуска.
Уровень : Все равны
Требования : любой веб-браузер
Давайте начнем:
- Создайте бесплатную учетную запись на gitlab.com (20 секунд)
2. Создайте новый проект: Нажмите на Новый проект кнопку , чтобы создать новое репо, и введите в поле имени периодически-раб или любое другое имя. (9 секунд)

Затем сохраните его, нажав на Создать проект (1 секунда).

3. Создайте файл .gitlab-ci.yml в этом новом проекте: Нажмите на Новый файлскопируйте и вставьте следующий фрагмент в файл .gitlab-ci.yml, а затем нажмите «Сохранить» (5 секунд)


test:
script:
- btc=$(curl https://min-api.cryptocompare.com/data/price?fsym=BTC\&tsyms=CAD)
- curl -i -X POST — data ‘price=CA$ ‘“${btc//[0-9\.]/}”
По сути это две простые команды. Здесь мы можем пойти дальше и добавить
если [ $btc -ge 15000 -a $btc -lt 7000 ]; потом
условия или даже запустите полный файл скрипта bash, но давайте будем простыми.
Нажмите на Зафиксировать изменения и это инициирует его создание и запуск.
4. Запланируйте ежедневный запуск: Щелкните значок CI/CD, чтобы развернуть меню, и выберите «Расписания», чтобы настроить имя и таймер для запуска периодической работы. (11 секунд)




5. Поздравляем! Вы готовы. Перейдите по этой ссылке на putsreq.com, чтобы увидеть его в действии. (10 секунд)

Эта работа будет выполняться каждый день, пока не закончатся ваши бесплатные 2000 минут сборки в месяц.
Мы даже не коснулись поверхности того, что мы можем сделать с GitLab-CI – просто подумайте о всех возможностях его использования для создания веб-хуков или подключения его к IFTTT и Zapier, которые, в свою очередь, подключат его к сотням служб.
В следующей статье мы рассмотрим, что мы сделали, и как мы можем повысить это и создать вебхук и использовать его для публикации в социальных сетях.
Образец кода можно найти здесь, а журналы сборки можно прочитать здесь.