Непрерывное разворачивание WordPress плагинов при помощи GitHub Actions

Click here to view original web page at www.kobzarev.com
Обложка к записи Непрерывное разворачивание WordPress плагинов при помощи GitHub Actions

Мы живем в эпоху гибких рабочих процессов, где Git предпочтительнее FTP, особенно с появлением JAMstack и таких сервисов, как AWS Amplify и Netlify.

Разработчики хотят использовать только git commit и git push и ожидают, что их продукты будут развернуты автоматически по всему миру.

Где-то далеко, в глубине души каждый, кто работал над проектом, построенном на WordPress, фантазировал о рабочем процессе развертывания плагинов на основе git, который позволил бы наконец уйти от этих старых репозиториев SVN.

Так появился WP Continuous Deployment — скрипт, базирующийся на Node.js CLI, который автоматически разворачивает ваш плагин в репозиторий wp.org при пуше в мастер ветку на GitHub.

Поставьте звезду проекту WP Console Deployment на GitHub и подпишитесь на Awais для получения обновлений.

Установка

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

Первый шаг

  1. Убедитесь, что ваш плагин размещён на WordPress.org
  2. Поместите код вашего WordPress плагина в GitHub репозиторий
  3. Склонируйте GitHub репозиторий на ваш компьютер
  4. Откройте полученный репозиторий в командной строке
  5. Запустите npx wp-console-deployment в корневой папке репозитория

Второй шаг

  • Следуя интрукции, установите ярлык (слаг) вашего плагина. Например, для плагина wordpress.org/plugins/cf7-customizer/ ярлык — это cf7-customizer.
  • Добавьте логин и пароль от WordPress.org в разделе «Settings -> Secrets» вашего GitHub репозитория.
  1. Щелкните Add New Secret и укажите в качестве имени SVN_USERNAME, а в качестве значения — ваш логин на wp.org
  2. Щелкните Add New Secret и укажите в качестве имени SVN_PASSWORD, а в качестве значения — ваш пароль на wp.org

Третий шаг

  1. Все ресурсы вашего плагина будут автоматически скачаны в папку .wordpress-org.
  2. Либо вы можете перейти в SVN репозиторий вашего плагина, например, https://ps.w.org/plugin-slug/ и ручками скачать все файлы из директории assets в папку .wordpress-org и закоммитить изменения.

Что дальше?

  • При каждом коммите в мастер ветку ваши ресурсы плагина и readme будут автоматически зедеплоены в SVN репозиторий.
  • Для каждого тега новая версия плагина будет автоматически задеплоена в SVN репозиторий.
  • Коротко: вносим правки, делаем git commit, тегаем и пушим: git tag 2.0.0 && git push --tags — в итоге имеем версию 2.0.0 в официальном репозитории wp.org.

Лицензия

  • MIT © Ahmad Awais
  • Code of Conduct
  • Благодарочка ребятам из 10up и Helen — великолепный GitHub Actions