Code Monkey home page Code Monkey logo

infost's Introduction

Инфраструктура

Если что-то ломается - тг @ktoSts

  1. При пуше запускается воркфлоу который проверяет валидность коммит сообщения (используется commitlint из условия)

  2. При PR запускаются тесты и линтер (pr-test.yml), также их можно запустить вручную(workflow_dispatch) или вызвать в другом. В настройках ограничение на мерж выставлено.

  3. Для процесса релиза нужен пуш с тегом вида v<число>. При этом выполняются все шаги и если создалась новая ветка, то создается issue в котором содержится вся информация. Предусмотрен запуск с одним и тем же тегом.

  4. Для деплоя новой версии нужно:

    • зайти в Actions
    • слева в меню workflows выбрать Deploy
    • нажать Run workflow
    • в появившемся окошке выбрать нужную нам версию(ветка релиза по шаблону release-v<число>) и запустить Run workflow.
    • немножко подождать
  5. Если все прошло успешно issue закроется

Условия

  1. Настройте линтер для соответствия сообщений о коммитах формату conventional commits

    • можете использовать любой готовый инструмент, например commitlint
  2. Настройте автоматический запуск проверок в CI для пулл реквестов

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

    • релиз должен запускаться автоматически при появлении в git нового релизного тега. Считаем тег релизным, если он соответствует маске v<число>.
    • версия релиза должна соответствовать релизному тегу.
    • должен формироваться changelog по истории коммитов от предыдущего релизного тэга.
    • должна создаваться запись в реестре релизов — считаем, что это issue на GitHub с пометкой RELEASE. Там должна сохраняться вся важная информация: автор и дата релиза, номер версии, changelog предусмотрите работу скрипта при многократном запуске с тем же тэгом.
    • должны запускаться проверки, аналогичные PR, а ссылка на результат должна добавляться в реестр релизов.
    • если проверки прошли, приложение выкладывается на gh-pages,а запись должна добавляться в реестр релизов.
    • после этого релизный issue можно автоматом закрывать.
  4. Автоматизацию можно настроить через GitHub Actions или другой бесплатный аналог

    • секреты должны храниться защищенно.

infost's People

Contributors

kantikyang avatar sedokk avatar sisha0 avatar

Watchers

 avatar

infost's Issues

release-v39

Автор релиза: Sisha3342

Дата релиза 2023-07-19T10:21:46+02:00

Версия: v39

Тесты: https://github.com/kantikYang/infost/actions/runs/5596797285

Changelog:

Features 🔨

f1f7bc1 feat(home): change home description

Fixes 🐛

0992387 fix(home): change home title
4f21af7 fix: readme update 1
1ef74b7 fix: readme update
45e7bf7 fix: wait pls
06f94d0 fix: missclick
13c6dd6 fix: fix missclick
197bee0 fix: fix readme

Other changes 📝

59ece0b Merge pull request #30 from kantikYang/feature/test-feature

v38...v39

Release v10

Автор релиза: kantikYang
Дата релиза: 2023-07-16T16:56:25+03:00
Версия: v10

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.