Рубрики
Uncategorized

Представляем GitHub Действия Проверьте обновления

Введение Работа над проектом Важно иметь все ваши зависимости в современном …. Теги с гитактами, GitHub, Ci, Devops.

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

Есть много инструментов, которые помогают нам сохранить все зависимости в современном. Для Maven Проекты у нас есть Версии Maven Plugin , где мы можем запустить

mvn versions:display-dependency-updates

и увидеть что-то вроде:

[INFO] --- versions-maven-plugin:2.7:display-dependency-updates (default-cli) @ poe-runner ---
[INFO] The following dependencies in Dependency Management have newer versions:
[INFO]   com.github.fabasoad:commons-lang ...................... 0.2.3 -> 0.4.5
[INFO]   com.google.guava:guava .............................. 19.0 -> 29.0-jre
[INFO]   commons-cli:commons-cli ................................... 1.2 -> 1.4

Для NPM Проекты Есть много других инструментов, таких как NPM-проверка или NPM-контрольные обновления , где мы можем запустить NCU и увидеть что-то вроде этого:

PS C:\Projects\MyProject> ncu
Checking C:\Projects\MyProject\package.json
[====================] 42/42 100%

 @babel/core           7.8.7  →  7.9.0 
 @babel/preset-env     7.8.7  →  7.9.5 
 @babel/preset-react   7.8.3  →  7.9.4 
 babel-loader          8.0.6  →  8.1.0 
 firebase             7.10.0  →  7.14.2

Run ncu -u to upgrade package.json

Все такие инструменты помогают нам сохранить наши проекты «здоровыми». Но как насчет действий GitHub? Что, если у вас есть много файлов рабочих процессов со многими действиями GitHub. Было бы трудно отслеживать все версии вручную. А вот Действия GitHub Проверить обновления приходит, чтобы помочь вам 😉

Действия GitHub Проверить обновления (GHACU) Это инструмент, который поможет вам сохранить версии настроившихся действий GitHUB в современном виде. Вот как это выглядит в действии:

PS C:\Projects\linguist-action> ghacu
> Dockerfile Lint (.github\workflows\dockerfile-lint.yml)
actions/checkout               v2.0.0  »  v2.1.0
burdzwastaken/hadolint-action  master  »   1.1.0

> Shell Lint (.github\workflows\shell-lint.yml)
actions/checkout                v1  »  v2.1.0
bewuethr/shellcheck-action  v2.0.1  »  v2.0.2

> YAML Lint (.github\workflows\yaml-lint.yml)
ibiqlik/action-yamllint  v0.0.2  »  v1.0.0

Run ghacu -u to upgrade actions.

Установка

Все то, что вам нужно сделать, это пойти в Страница выпусков И загрузите последний релиз на основе ОС, который у вас есть. Он поддерживает MacOS, Linux и Windows.

MacOS и Linux.

# MacOS: ghacu-1.1.3-osx-x64.tgz
cd ~ && wget https://github.com/fabasoad/ghacu/releases/download/v1.1.3/ghacu-1.1.3-linux-x64.tgz
tar -xvf ghacu-1.1.3-linux-x64.tgz
cd ghacu-1.1.3-linux-x64
chmod 755 ghacu
PATH=$PATH:~/ghacu-1.1.3-linux-x64

Окна

Есть 2 варианта установки его в Windows:

  1. Установите его так же, как для Linux/Macos — скачать пакет, распакуйте его и добавьте путь к Путь Переменная среды.
  2. Скачайте исполняемый файл и просто запустите его. Затем добавьте путь к Путь Переменная среды.

использование

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

PS C:\Projects\MyProject> ghacu --version
ghacu 1.1.3

На данный момент он поддерживает два варианта:

PS C:\Projects\MyProject> ghacu --help
ghacu 1.1.3
Copyright (C) 2020 ghacu

  -r, --repository    Path to the root of a project.

  -u, --upgrade       Upgrade versions to the latest one.

  --help              Display this help screen.

  --version           Display version information.

-R, —repository

Это путь к проекту, который имеет .Github/Workflows Папка внутри, например C: \ Проекты \ MyProject . Если вы не определяете его, путь будет текущим путем, в котором вы запускаете ГАКУ Отказ Результат такой же в примерах ниже.

PS C:\Projects\MyProject> ghacu
> CI (latest) (.github\workflows\ci-latest.yml)
actions/checkout  master  »  v2.1.0

> YAML Lint (.github\workflows\yaml-lint.yml)
ibiqlik/action-yamllint  v0.0.2  »  v1.0.0

Run ghacu -u to upgrade actions.
PS C:\> ghacu -r "C:\Projects\MyProject"
> CI (latest) (.github\workflows\ci-latest.yml)
actions/checkout  master  »  v2.1.0

> YAML Lint (.github\workflows\yaml-lint.yml)
ibiqlik/action-yamllint  v0.0.2  »  v1.0.0

Run ghacu -u to upgrade actions.

-u, —uppgrade.

Используйте эту опцию, если вы хотите обновить свои действия на новые версии. Сначала я предлагаю вам бежать ГАКУ Команда без этой опции, чтобы увидеть, если новые версии хорошо выглядят для вас, а затем запустить Ghacu -u Отказ

PS C:\Projects\MyProject> ghacu -u
> CI (latest) (.github\workflows\ci-latest.yml)
actions/checkout  master  »  v2.1.0

> YAML Lint (.github\workflows\yaml-lint.yml)
ibiqlik/action-yamllint  v0.0.2  »  v1.0.0
PS C:\Projects\MyProject> ghacu
All GitHub Actions match the latest versions.

Вывод

Надеюсь, вам понравится использовать этот инструмент. Что касается меня, я начал использовать его из бета-версии и наслаждаться этим, а также улучшая его. Не стесняйтесь публиковать какие-либо запросы на функции или отчеты об ошибках Проблемы страницы Это поможет мне лучше сделать этот инструмент лучше и лучше.

Будущее

Есть много идей для реализации:

  • Создать Choco , заваривать , apt-get , APK Пакеты для легкой установки.
  • Добавить индикатор прогресса, как:
[=================---] 38/42 86%
  • Добавить поддержку --revert , --parallel и многие другие особенности.
  • Добавить путь установки в Путь Переменная среды автоматически после установки.
  • Поддержите разные цвета в консольном выходе текста.
  • Многие другие.

Это написано в C # .NET Основной И если вы заинтересованы в вкладе, вы очень можете вилить репо и помочь улучшить его 💻

Репозиторий: https://github.com/fabasoad/ghacu

Оригинал: «https://dev.to/fabasoad/introducing-github-actions-check-updates-42ad»