Суть pvm управлять двумя составляющими – релизами и версиями. По пути обновлять ченжлоги и уведомлять в слак.
При этом есть разные процессы делать релизы – можно вручную, можно автоматически.
Автоматически процесс тоже может различаться в зависимости от того, где мы храним версии например.
Цель данной главы – показать "кирпичики", из которых можно выстраивать те или иные процессы доставки релизов.
А также на практике настроем парочку процессов, в котором релизы будут происходить автоматически по мержу в мастер,
без участия человека, и как pvm может нам помочь в этом.
При этом подразумевается использование github flow ,
с тем дополнением, что мерж в мастер сразу же ведет к релизу пакетов, хотя это и можно перенастроить при желании.
Также предполагается что у вас есть некоторая платформа где вы разрабатываете продукт, которая поддерживает базовые сценарии CI/CD,
такие как запуск задач для мерж-реквестов, а также запуск задач для тегов или бранчей.
Давайте теперь перейдем к примеру процесса, где мерж автоматически приводит к новому релизу с релизным коммитом.
Flow с релизным коммитом и тегом eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOVcXFlz4khcdTAwMTJ+71/h8L5cdTAwMGWauo95M+D7wlx1MDAwNnztbnRwXGKQOYRBNpiJ+e+bJWNcdTAwMDQ6MGDjVscqOrpcdTAwMWKVjlLVl5lfXHUwMDFlVX//2NnZ9V779u5fO7v2uFbpOPVBZbT7hzn/Ylx1MDAwZoaO24Mm4v9cdTAwMWW6z4Oaf2XL8/rDv/78M7jDqrndt7vsjt21e95cdTAwMTCu+zf83tn52/977j2VwcB9e4V/OnhcclUofPbC7fmvZERcdIqw1LNcdTAwMGKcYVx1MDAxZV7l2XVobVQ6QztoMad2Zb514NLy4zU+XHUwMDFmXHUwMDE17OJ4kKf2TfDWhtPpXHUwMDE0vdeO36OhXHUwMDBiX1x1MDAxMbRccr2B27ZvnbrXMq9cdTAwMGWdT7pr4D43Wz17aL48+Fx1MDAwZbdfqTneK5zDKDhb6TX9Z1x1MDAwNGfG8IsralGpNFx1MDAxMoTPXHUwMDFh/Fu5tlx1MDAwNOJMKMlDvcm5XHUwMDFkd2B68y+sXHUwMDA0q1SD/lQrtXZcdTAwMTM61avPrvFcdTAwMDaV3rBfXHUwMDE5wPxcdTAwMDTXjabfKZGyKFF47t0t22m2PNNPS1x1MDAxMUbwwuttf+jhvOZaMjlrMO/sXHUwMDFm131cdTAwMDD8Nzx2rcqgP1x1MDAxZKNdv29z/TU/99/QXHUwMDEzc3tl4GWdXt3pNaGl99zpzNrsXj2hpe8680g0R/C/nWD0/Vx1MDAxZrP///eP2Kuj42OOTDA0wVx1MDAwM36EXHUwMDFltNupXGa9nNvtOlx1MDAxZVx1MDAwMLZgelx1MDAxNe6q/4F7RjJadqVcdTAwMWXzifNtU1x1MDAxMfJb//kjXso6Ts+OXHUwMDE1MspcdTAwMTOlXGYzgVxyzlx1MDAxOF1ZzDrll27jQOSyP1x1MDAwYm2neVE4aWfOLjZcdTAwMTEz8m1iJoS2lJBcdTAwMGJo9u9cdTAwMTRxMF9fylwi17xLXHUwMDE4JcxiXHUwMDBiwj1cdTAwMTMwjLSliVx1MDAxNjFcdTAwMTKGscaUw8TQ9UVsaH78PlwiXHUwMDA2XHUwMDEzI5FENCRjZnCE1iEhi39cdTAwMDSh1FpQoMFcdTAwMDO4ee5H90fmyFx1MDAxYyDkhFwiX/1+n5CbtqVcdTAwMTJudzpOf1x1MDAxOCvkTCTKuJaUS1wi+OpcIn725F30K5On08P9XHUwMDBlvrg82HNcdTAwMGa7x98l4ngzXHUwMDEx59iSUlJGwzLOkIU0XCJcboFEXHUwMDExQcXnJL3RaMSIObckpzpe0KmwKGdcXHNMwGhcdTAwMTKhXCLirqHPXHUwMDEyXHUwMDAxWLdcIu6bXCJcbvqUaDVcdTAwMDRlUjFC5MqQKt5cdTAwMWM41ee263T7XHUwMDBm7mX7uTHK7e2nXHUwMDFiUlLDtFx1MDAxMk6oVlxumFx1MDAxOFwiXHUwMDBiuFwiQlhYS4lcYqNcdTAwMDJwJcOs8WssXGIwXHUwMDEwTVx0vIVoJLXENFxuMGVxXG5smVxiXHUwMDFmX1x1MDAxMolcYsA40YxvXHUwMDBiYDP9uDvpXHUwMDE0XHUwMDA3V0d73lx1MDAxNa5m2/3Sflx083x/911rbopDhXVcIlx1MDAwZVx0x1SBnVhdtaHxxXHrvtZqXFxcXFx1MDAxNunk9KVcXO9eyXTjUCtk6VxiTfHvpVx1MDAxYeZeXHUwMDAyOFx1MDAwMT5Gt9FPYXBcdTAwMWK6zfBnXG7TxLdcdTAwMGK917Iqjcdk7/Bp4mbvW2J8vFeYfFx1MDAxYXpSJ0NcdTAwMGZGnVx1MDAxMYolXlx1MDAxOXp3+5PTXG5qXFyNWvThpDjA3dvR+Um6oaeIslx1MDAxMFx1MDAwMVx1MDAwMZM0QVx1MDAwNSpcbsOAp/BLrVx1MDAwNqSMg7VcdTAwMTJcXG9cdTAwMTmFzGmPL3qH2ZuTR6ndPY33XHUwMDA3wXyYu3uF6pPKNc5v7/K5wzI9r1x1MDAxNs8rX6AhaTJMXHUwMDE5JUSBglhcdTAwMTmm9eGo+Fg6ujogo9vjO37afFx1MDAxOTSHKYepXHUwMDAwXHUwMDE3gGOFSFx1MDAxMkylUFxiM03TXHJTpqTGoNS3i9I7So5ov3V3LXJHXrlz8JDt7OXmUdrv6eFe6fpw4HSdW+11s+fDp5fVUJpcdTAwMTjpI5wnYpQwmECYndUxXHUwMDFhzzS+XHSjm8UgXHUwMDE0Qlx1MDAxNoO5XHUwMDE1QlBcdTAwMGVAUSGMXCLLXHUwMDBmUCAtXHUwMDE4w3iJl1x1MDAwMqrW1rVcciw5srBcdTAwMDJTTFx1MDAxOOZcYqhcdTAwMDLTMlxuUYKJpSTTmkf7MVWlXGJcdTAwMWNcdTAwMDNcdTAwMDUmf32Qflwi/Pd3gE77/Y6P3VxuXHUwMDAzXHUwMDA1t/Y8fPt4rIGgUJBQLoAvXHUwMDA1ZNh8QqVcdTAwMGbXcJBPRYVQXFxohECfTC/4Z9arhahIUp9cdTAwMGVGYs+Vl5XR67M8QOfl00l9UI3vXHUwMDEzXHUwMDA3bSWoQkpSqnBAn2ZdwmxcdTAwMWGBjHTlS8MwmWRs+M1RWFx1MDAwNE/8XHUwMDExevKvXGJ9XHUwMDBl7Jr3JnYxqlx1MDAwN88p2pDqIVxiXHUwMDExSZBcXN2PXT65qdQ8UnJcdTAwMGLzcIYhg7WltFqIl2ygapYmXHUwMDE4MMCGI1x1MDAxOZ9h4NSioZjsu1x1MDAxOVx1MDAwNFx1MDAwYlx0MNuyy7DchiSSta+xk5499uKwyllcdTAwMTJUuVx1MDAwNGZcdTAwMDG0YnVX91xcn9dVO3OB7EFj8nJYr9fIrUo3VLlilmAqXHUwMDEyxMswQDChn1x1MDAwNWu8XeQqXG5OgsKglEhcdTAwMDFLgVx1MDAxZWxcdTAwMDOVwe1ccrfnXHUwMDE1nclblG3h7EGl63ReXHUwMDE3OLKPXCJ4Qe74z1xcfv7Lh7afXGYy9mPh4r2O0zQw2+3YjUX8eU6t0pk1e25/ucJNwi+mS2hcdTAwMWUnXFyv4zBnXHUwMDFh5Zf7+p2Li+iVknHOeWjcXHUwMDFlpFx1MDAxYsBSgSdCKddcdTAwMTFcdTAwMDRTXHUwMDBig0qbT3R8XHUwMDFkgnWMs1x1MDAxMUUwo1x1MDAxNGhcctmOXHUwMDEz/ElcdTAwMDT3X7o73cqgnelcdTAwMGbWwnFccnpgXHUwMDBmliC569TrME9cdTAwMWIqY5xcYmZElPZcdTAwMDNbK6NZ3zRcdTAwMWP77OH18qJUu77t57OHo4NOytFMmVx1MDAxNY06moRcdTAwMWL7NHGIR7JYXHTJgGOKXHUwMDE4l2lEsjdwmk1cdTAwMDBLOtQxSVx1MDAwNDD4o8bRWYP66kfvjGewW3PJXHK7vir1X6r6Od1cdTAwMDDmatHNxkgnYnbzXGK5WFx1MDAwNbOYMCC7hG85p79cdTAwMTFmXHUwMDBmj0upgKtIjmOCR1xuXrtcdTAwMTCrw/VcdTAwMTJXXHUwMDFiXHUwMDE5PHI1aTbpmfdwVtfiKN1wXHUwMDE1XGJbYT+NgJ/GXHUwMDE0+nQlWFx1MDAwMnNAq2BcdTAwMTfcZC2Bm8s0kt/+c6eTXHUwMDE52E/P9tBLXHUwMDA1ipNrXHUwMDFhJfXD0IqvXGbiXvXuqDAsNlx1MDAwZWu44J1cdTAwMWRk+ZPn0nSDWEppYVx1MDAwMpo2TIFcdDRMa3K+XHUwMDFlyKs5cVgzIZDGOo1Arvkxs3RcdTAwMTBcdTAwMDdFk1WxQExcdTAwMTItV1x1MDAwZkRM8JluXZ+4I/DgXHUwMDFmz5/s8Z50vq32YzNcdTAwMTBroi0kXHUwMDA0i1x1MDAxNuZiboXPf1x1MDAxOYiZjoKYRbUxZpQoeEdcdTAwMWGpRNdcdTAwMWU07f/03rBcdTAwMWNcdTAwMGJluiUoJ6aeMGKJQVx0XHUwMDAyhlxyqFx1MDAwNVGrozm+1CDdaNbawlSYUiVcIoGILlwimlxuiyGCOMfI5IqT06OfyDxRilxmXHUwMDAxZkhcdTAwMTEsXHUwMDExifHyOLFcdTAwMTBwXGZlulx1MDAwMH94tJRcdTAwMDSD6cBcdTAwMGJ1jL8y87S8kGgnyPJkkIWQIf+CYYXhb1xyzvPcdW+JXHUwMDFlXG5cdTAwMTNkkkBcdTAwMDQp4FmYaDG9XCIh+bS9ktxM8mz5zZGJXG5cdTAwMWX4I/Tg1KWCKFlS02hINqZsdVx1MDAwZuPqtFF4bpRcdTAwMWGvnd7LYe3p8MF9+ZlJuSYwXHUwMDE1WyiUknlPXHUwMDA3aYxcdTAwMTbzRCnJXHUwMDA3XHQtXHUwMDE05VJtuS6iO5Z6+HJzcvtULlx1MDAxZJbZiTN+yrHPpXPonFx1MDAxYYtU5kiNXHUwMDAxcmT1XHUwMDA1Tkd2TpT7k8p9ruf1y3llXHUwMDBmj0+bKcdcdTAwMWJTVlx1MDAxY9qo9WmkxZtcdTAwMWFcdTAwMTVX1Fx1MDAxMKFQmlCzumCTXCKGb1x0hT/361x1MDAxNc+OpU9bjYQvKzLTiSRKcCBcdTAwMTZynTVE1y6y5T2eTE7ub84yJTpcdTAwMTJH+cF3IXmzXHUwMDFhM2yUXHUwMDE3ozqUw3lbYoBcdTAwMDHk4Fgq8VFcdTAwMTkur2mG6lx1MDAxYuD6k2W4QknMOd+O3/slKjSRviuVmFx1MDAxM8dKXHUwMDExqvRcdTAwMWEmO76DqVah4L6Atlx1MDAxNJQws3yFg95cXFx1MDAwMFx1MDAxZmBcdTAwMGb4otaMKClcdTAwMTDWeFx1MDAwYvxdXHUwMDEwk37HTEpcdTAwMDL+XHUwMDAzQzFcdTAwMDFv6KVFpMRUYylcYkAwuqpccrxcdTAwMTCtONj/VPD304lXao6Ob177hcfJ/nF9PD6b3MTyd2xcdTAwMTFNXGKnQEPMWlx1MDAxMKTm+PCUvVx1MDAwYlx1MDAwYkRLXHUwMDE4i7actSd1Zrk+3JkvXHUwMDE5YyDLnHLCkVx1MDAxNjCWQfJh1lx1MDAxOYxcZlwiKEOaw2xpzlwiffpSf4FZXHUwMDEyIVx1MDAwNPZU+ZVcdTAwMWI6mHlzXHUwMDAwq5PgI2DwJN5cdTAwMDaPffQ8QizwKrSUzH8gm3+aJlx1MDAxNjxcdTAwMWZcdTAwMDVT8dHDXHUwMDEykWuOKGaDx/1cYj32V7gyicG55JVZSmpcdDNOV9eIy+UglVx1MDAxYVFrQDjD0eBcdTAwMWNjVsRAf5lcdTAwMTJkK6X5JOPMWKVfamg/R0C7lbadjig0T0xfa6FcdTAwMTl462tYfiYvXHUwMDA3+dtcdTAwMGL12sxcdTAwMWU/ti5e3VPV5unGucmhWFx1MDAwMsesW1dg9Pnisumvo5p4bpqX+VCUMU1cdTAwMTFKo1x1MDAwZjVcdTAwMDAoXHUwMDAwbHeWhKG3heVEXHUwMDFlXHUwMDBi7CBcdM1cdTAwMTRmXHUwMDE4lIZYPVx1MDAxNDDgKveA8oruu4fouClr9Xz1PuVoxlx1MDAxNFtcdTAwMWPHwZlcdTAwMTkrzcKbIXzhuodQudJcZtWCxcjRe71cdTAwMDbiQlx1MDAxML3JysXfbJ+TyFx1MDAwMJkjMzc26aJFyyO8OrlmT1x1MDAxM4w1+Eirxylcbpfnp/bxfeG5ed27v840XHUwMDFmVbZTSrmYIclcdTAwMTNKUFx0XG5v95OSXHUwMDAwL7BWIZFcdTAwMTC/X4CXsUSlTsxKXCK0zsrLdoZ3KtdnhezPXpGS05Pehd3pplx1MDAxZG3AxeOKPTLU4vKDnXU2XHUwMDBm8pIoumKqRJVcdTAwMTJcdTAwMWGcuzRcdTAwMTJcdTAwMTRcdTAwMTPk7T9XO86w9f1R3uTt2FByukJpTjhfo3p/+fKZVKJZXHUwMDAxQyEmLVx1MDAwM1x1MDAxZbRBz2KkzazRJCDPSFCTPVx1MDAxMOF+fdVcdTAwMTJNpLSWnEhBlIopXGIxa/HAKSBcYplcdTAwMGJcdTAwMTe6Ma1cdTAwMGahlFx1MDAxMTkveL8yzrZ814OdhTw5IZRjKbgmXHUwMDFjazm3RnYnXGK0mU1cdTAwMDGBMCpcbrPAsJxesL0lmlxiXHTDXHUwMDA0kVx1MDAwNoKkXHUwMDA0ICSau8fMwuItdVx1MDAxYenOXHUwMDE2lmnG4sNvjkAjXcQtWe8kL1x1MDAwZYevNfU5a1jR+FV56dY7QlpMXHUwMDAxYeCcYI7ncphvelx1MDAwN1s+bVx1MDAwMoNcboqHb6VAxyyIpkxo4v87t6xlTu9cdTAwMDB/45xJ4/YvduNN73CmuZxfXHUwMDEx8yvVzvJdLFx1MDAxNtVcdTAwMGVIrlx1MDAwMs9Aclx1MDAxM1ZcdTAwMDbBiko4t5CkXGaZ3TSYSTi9XHUwMDBi1rbUXHUwMDBldEpQXHRCrCSm3K/XiNM6alx1MDAxYez8XHUwMDBlrVx1MDAxM4tcdTAwMGW/OVx1MDAwMox0aZ2kbTGZTNzcR2HjjzC9ejymliGZK3KRvWHy5PG1WaiOrtheupWOTCpxzWAqrXCuOaxqkH9spGpcdTAwMTaiPEGdq0TWouP4rlbMXHUwMDBlXHSM/1x1MDAxZuw3uzg05phccsr3idSHm1AmXHUwMDA265NX/lwiXHSUTrA11prR/qTqVsulunt52Wx7XHUwMDBmXFzeZlx1MDAxZtItT1x1MDAwMlx1MDAwMVxy1DFZqVxmJsxC25KnudUmgammYSEyZZxcdTAwMDKMXHUwMDA1/76FXHUwMDBmc1x1MDAwZfmCM1x1MDAxY8zIbPn69f5eaX/+21x1MDAwMz9YLVxc/WVR+kSjoFx1MDAxMvdcbsFcdTAwMTRcdTAwMTHwO9DcXG73j1D8c/R4WT987JFh+7GS61xcn7fz/ZRTUY1cdTAwMDU4M1x1MDAwMsVtXHUwMDE4XHUwMDAyZkEu34PhXHUwMDEzVmExVLRgXHUwMDE2XGb/X6xcdTAwMTacglpxXGZWXHUwMDFjs1xy4oa/mWnIhFx1MDAwNshcdTAwMWPzQ/NcdTAwMWLYXHUwMDA3mVx1MDAxOFtcdTAwMDK3VTHw5tcoINR2bkzzbmbsVvOj/vnBzf3F8Ns2qdt0a1xiU7VcdTAwMTCtXHUwMDFl9M1cdTAwMDOLQPyrJEvGhZCi9oFcdTAwMTlXQqs0mofr/Zvj/dtUmFx1MDAwN76kXHUwMDE2UWiwXHJ6ndKb8/P7e1wib/SLXHUwMDE4ikbFXHUwMDFlok6rmnKnwVx1MDAwND/BXHUwMDFijKuCXHUwMDA1+6AstDWeg5bUv/o0OZSEmFW+anDkMPreqMSv8Vx1MDAxZcJcdTAwMDNkjrmh+VxybFx1MDAwNElkX1x1MDAxYXGpQEWublwi7opnhe6wfI3OftZeTnpFV1x1MDAxZuXv0i1dmmlLa1x1MDAxMZNNMzaCbIt8reZCXHUwMDEweL9km2RcdTAwMTW2biHKhfx3O1x1MDAxMIk7rqjEhdOKaUooRmtsNpgr3Z11n3rZXHUwMDFhk4/49ZVfdlx1MDAwYt+2WfnGXHRhYDNJXHUwMDEwZuiDTdw2x3BcXHVmXHUwMDE0w0gxhoz1SiGKXHUwMDBi5ezZcfFoOzD+MVX3u5V+v+iZxUXvYerdXHUwMDE3x1x1MDAxZWXjxzlcdTAwMThqXHUwMDE4J6c+/aSpev/nxz//XHUwMDAzX+6MLiJ9CI/CD pvm mark-pr triggers GIT pull-request commits merge commit pvm update makes release commit pvm publish CREATE REVIEW UPDATE PUBLISH пример сценария релиза по мержу в мастер
В данном случае сценарий выглядит так:
Создаем мерж-реквест Запускается CI-задача в которой pvm говорит, какие пакеты обновятся и как, если замержить этот мерж-реквест На мерж в мастер запускается pvm update, который уже на самом деле обновляет пакеты и создает новый релизный коммит и тег На релизный тег запускается CI-задача, которая публикует обновленные пакеты и сообщает об этом в slack-канал Т.е. по сути мы получаем такой flow: create -> review -> merge & update -> publish.
Важно понимать, pvm нас никак не ограничивает в настройке процесса доставки релизов, он предоставляет "кирпичики" или команды, с помощью которых
уже можно выстроить тот или иной процесс доставки релизов. Например можно не создавать релизный коммит и обойтись только релизным тегом.
Рассмотрим ключевые "кирпичики" с данной схемы.
mark-pr pvm mark-pr
– позволяет понять, что произойдет с пакетами если мы выполним команду pvm update
.
Команда pvm mark-pr
добавит в мерж-реквест комментарий с подробной таблицей, какие пакеты будут обновлены и как:
Тут важно понимать, что данная команда делают превью будущего релиза, который будет основываться на всех изменениях сделанных с предыдущего релиза,
а не только тех, которые есть в данном мерж-реквесте.
update pvm update
– команда, которая делают всю основную работу – обновляет версии, ченжлоги и фиксирует эти изменения в репозитории в виде релиза.
Делает она это на основе изменений, которые произошли с момента последнего релиза.
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nNWZW3PaOFx1MDAxNMff8ylcdTAwMTj6uK2r+6Uz+5CEJM2llCZcXNrudnZcdTAwMWNbgIuxXHUwMDFk24RLp999ZYdiXHUwMDAzdsqSkGH9wGBcdTAwMWTLOpJ+568j+cdBpVKNp4GqvqtU1cQyXcdcdTAwMGXNcfV1Un6vwsjxPW1C6X3kj0IrfbJcdTAwMWbHQfTu7dushmH5w4daylVD5cWRfu4vfV+p/Eh/c+2YYeg/NJFcdTAwMTZnzVAoVkvrvpc2XHRcdTAwMTHDlEKEwOJcdCeq6bZiZWtz13QjlVmSoiqv9U993Pp+XHI/jFx1MDAxYupmXHUwMDEy1rBqZ812XHUwMDFk172Jp27qUuTrbmS2KFx1MDAwZf2B6jh23NdWslJeViv0R72+p6Kk65mbfmBaTjxN+lx1MDAwMLJS0+ul78hKJslcdTAwMDBcYmxgLiRgiC5cZmlVKlxyXHUwMDA2KGGC01x1MDAxNW+OfddcdTAwMGZcdTAwMTNvXkHBiHmb+XNrWoOedsqzXHUwMDE3z8Sh6UWBXHUwMDE56lx0yp5cdTAwMWL/6idnhlx1MDAwMMtt9JXT68eJo1x1MDAwNlx1MDAxNkjAnF+RSodeIFwiqeSEL1xmSZvBuZ1cdTAwMTLwbXXs+mZcdTAwMTjMx6ia+pbzN7k9ecCnoLpcdTAwMTnGR45nO15PW7yR6y5syrNLLIHv5FFMruxfJVx1MDAxYv30ZvH/2+vCp1x1MDAwYsYnud4shiZ7wcHKi6quXHUwMDE5xcf+cOjEXHUwMDFh2Ebi1aqraVx1MDAwN1x1MDAwZpPQ6CvTLuhi3jaPodT683VxmCnXdYJIXHUwMDE1XHUwMDA1XHUwMDFhXHUwMDExpCzQXGKkmkCIyMZxdnVcdTAwMTfXXHUwMDAzc3Z3eXbiwvrH00P/bHi+TZyhLeJcZm5cdTAwMTVnjFx1MDAwMYNcdTAwMDNcdTAwMGUwXFyNMyxcZsKkjiRcdTAwMDFcdTAwMTPJYU+Ktlfdbnc9zDA1OMXLMb5cYjPMXGZMXHSVWup0SCEmVsNcckrMKVx1MDAwN1x1MDAxNMP/XHUwMDFlb1Fy83i8bUuUpLSMKFxmdWeS/mxM1LVcdTAwMGZcdTAwMTT/XHUwMDAyZ7OLL+2rN008Zu9r4X5cdTAwMTMlXHUwMDE5NiSGjKxLN5aGkExcIqiJSZDCpUhRS1x1MDAxMmC/PFJa0SClWsR3gdRCXHUwMDE0q8NcdJfRffuic9dqnrXIhTO5OybVX1L5KHmxmsRF2EHASjNcdTAwMDZIXHUwMDEx1f2SbGPuXGL/XHUwMDE41jp1Me1cdTAwMWSdf+/Xp/6lXHUwMDE40JfibruMQc+qUVx1MDAwNFx1MDAxZEBcdTAwMDZcdTAwMDV8eb1+Ltpyi8dcdTAwMDKyXFxeNqdKYkIkXHUwMDA2gO5cdTAwMDKqrHrX9+JcdTAwMWJnls44Wyo9NYeOO12K6Fx1MDAxNKMk8dBcdTAwMTiYkXpzj/Ldj5TreOmLyFKNQ9fpJbBVXdVdpjB2dP67MMd+sPWKXGZcdTAwMDEsJ5lDpHM/iNHGJFx1MDAwYlx1MDAwZtU+tq3RqbxcdTAwMWNcdTAwMWPX6furi66A+62gXGYwg0BcdTAwMDYgLVJQrlx1MDAxOef7q6A6zqSOt5zW/G9cdTAwMTRU4lLuXHUwMDA0XHUwMDAzXGJrddk8XHUwMDE3bP8zjHudXHUwMDEzcthvfek3ep9uaDtsbMNcdTAwMWR8Me4oZVx1MDAwNpN0PVx1MDAxNVx1MDAwNFDzqKf0sS3XXHUwMDA2vD265SraaVx1MDAxNUgpk1rJ8U7gei4lhS+qpKU057ahKzRr+dBcdIHGeWOYx03SOFx1MDAxZo3HtVvvZty/b3dk7Hzab5hcdTAwMTnVOsY5Jpgv0yyhgVbOXHUwMDE1nvv4QKB1lslcdTAwMWHLkEm9W6ZcIiei+0PzyJvzbP/tWX09xCoqxFx1MDAxYb8w1qWpXHUwMDAxYZBpccCb57ghb8ZBa9D9fnXUOImG18Rcbm17z6EmcIllrcw7g1x1MDAxOIJ1iNdcdTAwMDVcdTAwMTlivaNjguwlxH+8qFx1MDAxMofKilx1MDAxZqatgFtcXJ7UUlx1MDAwNFx1MDAwMFx1MDAwNPmDqN+R+5VcdTAwMWZKOsP8s/hMvLtByzr3QbTf5HImjKKMVnBcdTAwMDNjKZZUepVkneoqaT2BZIxcZi6RLD7OJTrpWdk3ztmmXHUwMDAyYFx1MDAxZEQ56F/sfKk8Ry1d1TGgXCJZ2PDGXHUwMDE4Qfv6ZNA8u/x0LVx1MDAwN51cdTAwMGaz+uRDw5ruOUZcXG+Ailx1MDAxNnVmXGIqd1xuXHUwMDExkFx1MDAwNXq4xlxmQlx1MDAxNGB9oZ0wUySHOTx/I4fB/bAyXG5sM1bFuiiWaiyEz9JcdTAwMGWo8Fx1MDAxMWVcdTAwMWM6tq3naiugafmCLlx1MDAwMOBUis0/c11Nzf5cdFx1MDAwNbTZcabEaca9q1x1MDAxMTvdc56JMHTcLqObXHUwMDAyLVxyTdxuVXFcdTAwMTOeoSRcXEfbbrbzT+S5ZHkvwXhXXHUwMDE5aS6xXzt3hYwwxIHYXHUwMDE44duv4ehcdTAwMTRetlx1MDAxYu33VlibOZ9bNcL2XHUwMDFiYYmgsX5iXHUwMDAwXGa6vNg/O75cdTAwMDV7rFx1MDAwMnw5XHUwMDAxgFx1MDAxMsR2s4Y/jd8/d8Pvwfxra9VcZoKbOFH7d3Oaq/eOXHUwMDFhXHUwMDFmXHUwMDE1XHUwMDFmXHUwMDA0ZmeBeoRcdTAwMWN73pnky+tB8s6f/1x1MDAwMmlvVPIifQ==release-v2 release-v1 unreleased changes + pvm update + = При релизе обязательно создается релизный тег, и опционально, релизный коммит.
При этом команда pvm update
заточена под работу в CI/CD окружении для доставки изменений в центральное хранилище кода – она создает и пушит теги и коммиты либо через Platform API, либо через git.
Подробнее эту команду и вообще процесс обновления и как на него можно влиять мы рассмотрим в отдельной [главе].
Если же вы хотите произвести обновление локально, достаточно добавить подкоманду local
в начало:
yarn pvm local update
Copy publish pvm publish
– команда публикует все пакеты, которые поменяли свою версию в используемый registry,
а также оповещает о публикации в мессенджеры если задан токен PVM_SLACK_TOKEN
или PVM_MATTERMOST_TOKEN
и PVM_MATTERMOST_URL
через переменные окружения.
Также понадобится настройка notifications.clients_common_config
в конфиге pvm, например такая:
[notifications.clients_common_config] channel = '#temp' author = { name = 'pvm minion', avatarEmoji = ':deciduous_tree:' }
Copy Подробно рассмотрим публикацию в отдельной [главе], сейчас остановимся на этом и перейдем к другому, альтернативному процессу релиза.
Flow только с релизным тегом В предыдущем flow мы использовали релизный коммит для того, чтобы фиксировать изменения версий пакетов в исходном коде и обновлять ченжлоги.
Однако если у нас нет потребности создавать коммит для доставки изменений с релизом в основную ветку, можно обойтись и без него:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOVcXFlz4khcdTAwMTJ+71/h8L5cdTAwMGU1dVx1MDAxZvNmwPeFbXzubnRwiMNcdTAwMDaEQVx1MDAwNsxE//fNkm2EkIRlbNyaWEVHd6PSUar6MvPLo+rvXHUwMDFmXHUwMDFiXHUwMDFim95z39n8a2PTmdQqnXZ9UFx1MDAxOW/+Yc+PnMGw7fagifq/h+7ToOZf2fK8/vCvP/9cZu5ANbf7cpfTcbpOz1x1MDAxYsJ1/4bfXHUwMDFiXHUwMDFif/t/z72nMlx1MDAxOLgvr/BPXHUwMDA3r2FcdTAwMWEvnj1xe/4rOdWSYaLM7IL2sFxir/KcOrQ2Kp2hXHUwMDEztNhTm6rY2nHZ5f05OVx1MDAxZZeci8mgyJyr4K2Ndqdz4T13/Fx1MDAxZVxyXfiKoG3oXHLcXHUwMDA357pd91r21Vx1MDAwYueT7lx1MDAxYbhPzVbPXHUwMDE52i9cdTAwMGa+w+1Xam3vXHUwMDE5zlx1MDAxMVx1MDAxY5yt9Jr+M4IzXHUwMDEz+CU0Q0xpgyVcdTAwMTWzXHUwMDA2/1ZhkMSCS63EQm9cbm7HXHUwMDFk2N78i2jJK9WgP9VK7aFcdJ3q1WfXeINKb9ivXGZgfoLrxq/fqbBGjGoy9+6W0262PNtPpCmnJPR6x1x1MDAxZno4b4RRXFzNXHUwMDFh7Dv7+3VcdTAwMWZcdTAwMDD/XVx1MDAxY7tWZdB/XHUwMDFko02/b3P9tT+3X9BcdTAwMTNze2Xg5du9ervXhJbeU6cza3N69YSWvtueR6I9gv9tXHUwMDA0o+//mP3/v3/EXlx1MDAxZFx1MDAxZFx1MDAxZnvkgqFcdFx1MDAxZfBj4UGbncrQK7jdbttcdTAwMDPAlmyvXHUwMDE2u+p/4JaVjJZTqcd84nzbq1xi+a2//oiXsk6758Rcblx1MDAxOVx1MDAxM4lSRrgkXHUwMDE2Z5ylXHUwMDE2s87lqNvYkYX8z9JDu3lSOnjIXHUwMDFknaxcImb028RMSoO0VCE0+3fKOJh/XFzKXCLXvElcdTAwMTijXHUwMDFj8ZBwz1x1MDAwNIxgg1xmNTJGwlxiMYRcdJhcdTAwMTj2cVx1MDAxMVx1MDAxYtpcdTAwMWb/XHUwMDFjXHUwMDExg4lRWGG2IGN2cKQxXHUwMDBiQlx1MDAxNv9cYspcdTAwMThcbinQ4Fx1MDAwMcI+9737I3NkXHUwMDBmXHUwMDEwcsqwr36/T8ht21JcdHc6nXZ/XHUwMDE4K+RcXCbKuFFMKCpFelx1MDAxMT969E76lenj4e52h5yc7my5u93971x1MDAxMnGymohcdTAwMGKClFKMs0VcdTAwMTnnXHUwMDE4YYOpxiBRVDL5OUlvNFx1MDAxYTFiLpBcdTAwMTLMxFx1MDAwYjqTiFx0LowgXHUwMDE0jCaVOlwi7lx1MDAwNvqsMIB1LeK+KqKgT4lWQzKuNKdUpYbUxdVOu/r04La7/Tv39OGpMS5sbWdcdTAwMWJSysC0UkGZ0Vx1MDAxYZhcdTAwMTimIVxcUSlcdTAwMTExSmHKmVx1MDAwNFxcqUXW+DVcdTAwMTZcdTAwMDRcdTAwMTiIYVx1MDAxNN5CXHJWRlx1MDAxMVx1MDAxNlx1MDAwNZhGglx1MDAwMVum0seXwjJcdTAwMDIwQVxyXHUwMDE361x1MDAwMthMP25OO1x1MDAxN4OzvS3vjFTzXHUwMDBm/fJ2mYhif/NNa66KQ01MXCJcdTAwMGWpIEyDnUiv2vDkZL91W2s1Tk4v2PRwdFnvnqls49BojEyEpvj3Mlx1MDAwM3OvXHUwMDAwnFx1MDAwMFx1MDAxZqvb2KcwuFx1MDAwZd1m+TODaVx1MDAxMuuF3vOlLk8mdGv3cermb1tysr9Vmn5cdTAwMWF6yiRDXHUwMDBmRp1TRlx1MDAxNElccr2b7elhXHUwMDA1N87GLXZ3cDEg3evx8UG2oaepRpiCgCmWoFx1MDAwMjWDYSCv8MusXHUwMDA2ZFxcgLWSwqxcdTAwMTmFvP0wOent5q9cdTAwMGXulXG3XGbZXHUwMDFlXHUwMDA082Hv7pWqj7rQOL6+KVx1MDAxNnYv2XH14rjyXHUwMDA1XHUwMDFhkiXDlDNKNSiI1DCtXHUwMDBmx1x1MDAxN/flvbNcdTAwMWQ6vt6/XHUwMDExh83RoDnMOEwluFx1MDAwMIJoTJNgqqTGhFx1MDAxYpZtmHKtXGZcdTAwMDGlvl6U3jC6x/qtm3NZ2PMuOzt3+c5WYVx1MDAxZaX9nlx1MDAxOW6Vz3dcdTAwMDftbvvaeN388fBxlFx1MDAwZaWJkT4qRFwiRimHXHSE2UmP0Xim8U1cdTAwMThdLVx1MDAwNqExRlx1MDAxY+ZWSslcdTAwMDRcdTAwMDBFL2BcdTAwMTQjP0CBjeSckCVeXG6oWsfUVrDkXHUwMDE4XHUwMDExXHKmmHJcIjBQXHUwMDA1blRcdTAwMTSilFCkXHUwMDE1N0ZE+/GqSjE4XHUwMDA2XHUwMDFhTP7HQfqJ8N/fXHUwMDAxOp23O953KyxcdTAwMTTc2tPw5eOJXHUwMDAxgsJAQoVcdTAwMDS+XHUwMDE0kGH7XHSVPlxcI0A+NZNSXHUwMDBiaTBcdTAwMDZ98nrBr1mvQlGRpD7tjOWWq04r4+cntYOPL1x1MDAwZqf1QTW+T1x1MDAwMrSVZFx1MDAxYWvFmCZcdTAwMDF9mnWJ8NdcYmSkK19cdTAwMWGGySVjw2+OwlwieOKPhSf/jtDnwKl5L2JcdTAwMTejesicol1QPVx1MDAxNGOqKFbp/djlk5tJzaOUQEQsZlx1MDAxOHLEIG10KF6ygqpZmmAgXHUwMDAwXHUwMDFigVV8hkEwxFx1MDAxNmKyb2ZcdTAwMTAsJMBszS7Dclx1MDAxYpJI1r7GTnrOxIvDquBJUFx1MDAxNVxumFx1MDAwNdCK9K7usTmu64fcXHR2XHUwMDA2jelot16v0Wudbahcbs2R5DpcdTAwMTLEy3FAMGWfXHUwMDA1a7xdXHUwMDE0OlxuTopcdTAwMTdBqbBcdTAwMDaWXHUwMDAyPVhcdTAwMDcqg9tcdTAwMWJuz7toT1+ibKGzO5Vuu/NcdTAwMWPiyD6K4Fx1MDAwNYX9P1x1MDAwYsX5L1x1MDAxZjp+Msjaj9DFW51208Jss+M0wvjz2rVKZ9bsuf3lXG43XHS/hC2heYJcbvNcdTAwMTGHOde4XHUwMDFj3dZvXFxygZ9cdTAwMTmdXHUwMDE02neN651sXHUwMDAzWGnwRFx1MDAxOFx1MDAxMyaCYIZcYqi0+UTH1yHYxDhcdTAwMWJRXHUwMDA0c8aA1tD1OMGfRHB/1N3oVlx1MDAwNlx1MDAwZrn+4EM4rkFcdTAwMGacwVx1MDAxMiR32/U6zNOKypgkglx1MDAxOVNt/MBWajSbq0bbObp7Pj0p186v+8X87nink3E0M46iUUebcOOfJlx1MDAwZfFIlqmQXGY4ZphcdTAwMGKVRSR7g3azXHRgyYY6polcdTAwMDBcdTAwMDZ/1Do6XHUwMDFmoL7m3jtcdTAwMTI54tZcXHrFz8/K/VHVPGVcdTAwMWLAQofdbIJNXCJmV4+QyzSYJZRcdTAwMDPZpWLNOf2VMLu7X85cdTAwMDRcXGVyXHUwMDFjXHUwMDEzPFLw2qVMXHUwMDBm11NSbeTI2DW02WRH3t1R3ci9bMNVYoJcdTAwMTb9NFxuflx1MDAxYdf405VgXHTMXHUwMDAxp8EuuMlGXHUwMDAxN1dZJL/9p04nN3BcdTAwMWWfnKGXXHRcdTAwMTQn1zQq5oehtUhccuJe9WavNLxo7NZIyTvayYtHz2XZXHUwMDA2sVJcblx1MDAxMVxumnaRXHUwMDAyU2h4rcn5eiCnc+KI4VJiQ0xcdTAwMTaBXFzzY2bZIFx1MDAwZZolq2KJuaJGpVx1MDAwZkRMyZFpnVx1MDAxZrhj8ODvj1x1MDAxZp3Jlmp/W+3HaiA21CAsJY9cdTAwMTbmXHUwMDEygVx1MDAxNs9/XHUwMDE5iLmJgphHtTHhjGp4R1x1MDAxNqlE11x1MDAxOTSd//ResFx1MDAxY1x1MDAwYmW2Jignpp5cYuaJQVx0XG6GXHKoXHUwMDA11enRXHUwMDFjX2qQbTRcdTAwMWKDXGKTtlSJKiCiYUQziTimWFxigm2uODk9+onMXHUwMDEzY9hcdTAwMTJgjjUlXG7TXHUwMDE4L09QhIFjaNtcdTAwMDX4I6KlJFx1MDAwNExcdTAwMDdcdNUx/s7M0/JCoo0gy5PDXGJjS/4lJ5rA31x1MDAwNpznueteXHUwMDEyPVxmJsgmgSjWwLNcYjXy9YqE5NP6SnJzybPlN0cmKnjgj4VcdTAwMDdnLlx1MDAxNcTokppGS7JcdOPpPYyzw0bpqVFuPHd6o93a4+6dO/qZy7gmsFx1MDAxNVt4ISXzllx1MDAwZTJcdTAwMDSH80RcdTAwMTnJXHUwMDA3SSM1XHUwMDEzSq+5LqI7UWY4ujq4frws717yg/bkscA/l85hMlx1MDAxMW/a2KqpuTT0u3Dbc1xu8rI/rdxcdTAwMTZ6Xv+yqJ3h/mEz43DjXGbFgY2hT1x1MDAwMy3Bn42raYgwKEOZXVxcsEpccsO3RMIr9XrOqzRj6dNaI+FLisyMTlxmhlx1MDAwYlv0XHUwMDA02jP9Ur1zXHUwMDE3O+qWTKdcdTAwMDe3V0e5Mlx1MDAxYsu94uC7oLxqXHUwMDE1rkKcmYVcdTAwMTTOW1x1MDAxNS5cdTAwMTcmKINMrsJcdTAwMTU1w3F9XHUwMDA1XFx/slxuV2pFhFx1MDAxMGtye1ek5ZQkL0szRtna+lx1MDAwZiRcdTAwMGLjtXemtSM4JqBcYiWj3C5MXHUwMDExoFx1MDAxMkO44lx1MDAwNFx1MDAwMVx1MDAxMzRcdTAwMDAsrSQmhqyBmWvEgcNcdTAwMTlqXHUwMDE3MCjM4kLZithsXHUwMDBm8EBbllx1MDAwMeCKLldcdTAwMDP3wmhcdTAwMDGGPVx1MDAxM8T8cOqVm+P9q+d+6X66vV+fTI6mV7HEnCBcbl8uXHUwMDE48Fx1MDAwYrvIXHUwMDAz62j9lUSKXHUwMDEyIFx1MDAxZpj481x1MDAwM/xoOS1P6lx1MDAxNFeng+L1iX5u5vfvWyfP7qF+XHUwMDEwXHR1aqBcIlxieFx1MDAwMJjammVcdTAwMWFcdTAwMTSzzjpcdTAwMDWKXGIkg4AnJO2FLNKlL/VcdTAwMDdcdTAwMDTCoNxcYjfar8wwXHUwMDAxXHUwMDAw7MHsQjlbM/Y2hvxd/8LyPKDZisJcdTAwMWYtXGbT88+LoC1b3kVivEwkr1x1MDAxNGDEaC7kXHUwMDA3XHUwMDFji+VcdTAwMTDOpC4zXHUwMDA2I1x1MDAwZSiJXHUwMDA0zDhHXHUwMDExq/ll6ounSr0pLrjWdD2lO2n9h8+xwm7lwclGZHjJllxyjFx1MDAwMNWHsU5cdTAwMWZLW65cdTAwMTYzXHR0uIKjxXycfyvFVrGF91P4Mlx1MDAwMihoXHUwMDFhpFx1MDAxYsa5XHUwMDAx/37NpZPLuZZcdTAwMWRmoVx1MDAwYne4qNm2u4v3m6pWL1Zvv0hcdTAwMTRGXHUwMDE0gVP5rbKwhMMuXHQoXHRwMFx1MDAwNaMmfbYvftgyLlx1MDAwZVx1MDAxNOw51tGKN1wiXHUwMDE4XHUwMDEycn01b1x1MDAxYWFNQztcdTAwMDeEN1eQnIpw6GFWiYGFlNSssiZxXHJ8NTU1JFxiM0ylXHUwMDAwWqSAXHUwMDE5zvmZM2ZIXHUwMDE4ophcdTAwMTA1t2/CXHUwMDA3iWrp9PjQ2b8tPTXPe7fnuea9znfKsexcdTAwMTkjTDH4lVx1MDAxMt5n+2WMiIa1XHRGYHnXv4BcdTAwMDF8pcXopT1yhM785vdcdTAwMWWhXGZcdTAwMDInSyxuRZFcdTAwMTNcdTAwMTgp/Fop/94zYkD50o15PGaL0S6Pl5vENLBcdTAwMDEhXHUwMDAy10ikZ7XLoZVR7aZEQj2vtfbLbf1vipZrZaTCUv6WaHlqXHUwMDBlsFx1MDAxMvfkPLGekdp1W/gj61xcXHUwMDFmcqJTOT8q5X/2Llx1MDAxOD086J04nW7W4VxiXlZcXGlccvjUQr2zj9HqMaJU1JNpLVxyYZmNqfefqp32sPX9MfXkze+wTkIz0UZQIT5cdTAwMTD+XFy+WCmTaNaMIKpcZthcdTAwMTDOLHrC0U+7XCKWgjxjyWyyRi7266tcdTAwMTbEgmk3SlAlqdYx5Td25aMkimJsL1xmdeO1XHUwMDFhhzFO1bzg/U4yuXyPiTB9XHUwMDAzXG4piJLCUPBU1NyK5I0g+mm3YCScaiCbjFx1MDAxM7VcdTAwMWGn/MCCWFxmTFxyiFx1MDAwNTbAtvzsaFxmpeSIyFx1MDAxN6q3Xk6ZS8aH31x1MDAxY4FGtohdst5JXopcdTAwMGZfa6uhPmBF49dAZlvvSIW4XHUwMDA2wiBcdTAwMDRcdTAwMDUnXVx1MDAwN1xm9kXvXHUwMDEw5PMqMKigeMRayqHs8nPGpaH+v3OLiOb0XHUwMDBlXHUwMDEwPCG4slx1MDAwMZ1wN170juBGqPn1R79T7SzfMySsdkByNVx1MDAwMYUjbMpcdTAwMDBcdTAwMDQrKuFcdTAwMDJhxWxcdTAwMTKEM8604W+CtS61XHUwMDAznZLM9/FcdTAwMTRhwq+OidM6+jWM/Vx1MDAxZFonXHUwMDE2XHUwMDFkfnNcdTAwMDRcdTAwMTjZ0jpJm5BylZgg0cQ6LNykL1x1MDAxZqjlaO6MnuSvuDq4f26WquMzvpVtpaOSXG6Kc4QptJjaX1Q12D9WUjWhOHVQVawwilxyjlx0u1x1MDAxZlx1MDAwNVx1MDAxN/9cdTAwMDe7+4aHxlx1MDAxZbNB+T6RenfLz8S1qcm+g9FMXHUwMDE4SUz6NFxm60+rbvWyXFx3T0+bXHUwMDBm3p1Q1/m7bMuTxHb7xZh8Y45QXHUwMDFlLXH8MoGay35cdTAwMDW2mi1Kka2alWAtxPetM5nzyEPecDAls91cdTAwMDLOt7fK2/PfXHUwMDFlOMI6dPWXJVBcdTAwMTKtgk7cmoUwTMHxwCx9+uTn+P60vnvfo8OH+0qhc378UOxnnItcdTAwMWFcdTAwMDIwllx1MDAxMsftz1x1MDAwMnZBLd/y4lx1MDAxM2YhXHUwMDFjK1xu2Vx1MDAwNetcdTAwMDCEqzNfQa1cdTAwMDVcdTAwMDEzTvhcbpHFf5htyC1cZpA95ofmXHUwMDFmYCBUooFcdTAwMDC/VXNw5z+QpzdOYcKKbm7iVovj/vHO1e3J8Nv2XHUwMDA0XFx1J1x1MDAwZVuQXHUwMDEyrdb07Vx1MDAwM49A/KskS8XFkKL2gVtfwugsmofz7av97etMmFx1MDAwN2VcdTAwMTK3Q6KgMy2K01uH4+PbW6quzEhcdTAwMGVlo+JcZnGnVc2400CA3SBD47Y1fzFcdTAwMGZcXIZzXHUwMDAxX2ggXHUwMDEyq42p1kiQxXW8b4XGXHUwMDA2XHUwMDFjOYK/NyrxmyzEwlxi2WN+bP5cdTAwMDE2giVcdTAwMTct2s1BtF2jklq+bi6OSt3h5Tk++llcdTAwMWJcdTAwMWT0Llxcs1e8ybZ8gVx1MDAxMkbGyJh8mjVcdTAwMTJ0XewrNs9cdTAwMTCxXHUwMDExXHUwMDE03q/4KnmFtZuIrWIxV97a/VZcdTAwMWKRuMWNTixR0Nwwylxi/sDujoXyzVH3sZevcXVPnp/Fabf0bbvDr5xcdTAwMTNcdTAwMDY+k4Rhjt/ZNW91XHUwMDEwx5XeRkGMNefYkp1cZsK4dJk/2r/YW1x1MDAwZox/vCr8zUq/f+FVPPvQXHUwMDE3UG+O2s44XHUwMDFmP87BUMM4teuvn/Sq4H/9+PU/+LHWtiJ9CI/CD pvm mark-pr triggers GIT pull-request commits merge commit pvm add-tag makes v2.3.0 pvm publish CREATE REVIEW ADD-TAG PUBLISH В данном случае используется команда pvm add-tag
, которая не создает новый коммит, а только подбирает новую версию тега и выставляет ее на мерж коммит в основной ветке и заканчивает свою работу на этом.
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1cXFlTKklcdTAwMTZ+v7/CcF6b7NyXflx1MDAxM3DfUMFtZuJcdTAwMDZLsShQXGKlIFx1MDAxZP3f52SpXHUwMDE01IIsYtedmVxuQ6WyliTzO+d8Z8n888fW1rb32nO2/9jadkbVcrtV65eH27/Z8y9Of9Byu9BE/c9cdTAwMDP3uV/1r2x6Xm/wx++/XHUwMDA3d6Cq23m7y2k7XHUwMDFkp+tccuC6f8Lnra0//d9T7yn3++7bK/zTwWuY5uGzZ27XfyXRgmAjhaaTK1qDPLzLc2rQXFwvt1x1MDAwN07QYk9tq3xzz2Wlh0tyOiw4V6N+njnXwWvrrXb7yntt+11cdTAwMWG48DWCtoHXd1x1MDAxZp2bVs1rQitcdTAwMGadT7qr7z43ml1nYL86npx1e+Vqy3u131x1MDAwMVx1MDAwN2fL3Yb/jODMXGI+XHTNXHUwMDEwU9pgScWkwb9VXHUwMDE4JLHgUitcdTAwMTHqTc5tu33bm39cdTAwMTAteblcdTAwMTL0p1KuPjagU93a5Fx1MDAxYa9f7lx1MDAwZXrlPkxQcN3w/XsqrFx1MDAxMaOaTL276bRcdTAwMWFNz/ZcdTAwMTNpyimZeb3jXHUwMDBmPZw3wiiuJlxy9p29w5qPgH+Hx65Z7vfex2jb79tUf+3H3Tf4xNxe7nvZVrfW6jagpfvcbk/anG4toaVdXHUwMDFleDm302l5gJOC2+p64Sv85+5YRDadci3mydNtYej27Fx1MDAxM1x1MDAwM6TbI/hvK5hcXP/D5P9//1x1MDAxNnt1dPjtkVx0Rj54wI/pv3/9XHUwMDE2L2btVteJlTImksVMacY1U0wvLGbt0kunvidz2Z+Fx1bjrHD0mDk5W0XM6LeJmZRcdTAwMDZpqWbQ7N8p42C+vJRFrvmQMEY54jPCPVx1MDAxMTDQbshQI2MkjFx1MDAxMEOYkESy5UVsYD/8SlwiNtP2pfJcdTAwMDWTrrDCLCRgduClMSFcdIt/XHUwMDA0ZVxmzSjn4Fx1MDAwMcI+97P7I/NvXHUwMDBmkHDKsK/al5Rwp91u9Vx1MDAwNrFCzmWijCtcIlx1MDAwNGVULizhJ0/eWa88fjre322Ts/O9XHUwMDFkd79z+F1cdTAwMTJOVpNwQZBSinFcdTAwMTZcdTAwMTZxjlx1MDAxMTaYalxmXHUwMDAyRSWT61x0er1ej5FygZRgJl7OmUSgf4VcdTAwMTGEgs2kMlC0XHUwMDFm0m6gz1xuXHUwMDAznjZcIu2rXHUwMDAySkmSXGIoriWlTC5Oza6u91qV50e31endu+ePz/Vhbmc33YhSXHUwMDA2ZpWC4Fx1MDAxOK2Bh2E6XHUwMDAzKyolXCJGKUw5jINkKsxcdTAwMTm/xn5cdTAwMDBBMIzCW6jByijCovjSSDBONZU+vFx1MDAxNJZcdTAwMTF8XHRquNhcdTAwMTS+Jlx1MDAxYWx73L7qX1x1MDAxY+x4XHUwMDE3pJJ97Fx1MDAxNXeLROR72+vqNU1ZXHUwMDEyXGZcdOZUXHUwMDFhQvHimlxyj85cdTAwMGWbd9Vm/ez8io2PX0q1zoVKN1x1MDAwZY3GyERIin8vMzD3XG7AXHTwsaqNrYXBTag2S29cdTAwMTlcdTAwMTVEbFx1MDAxNnqvJV1cdTAwMWON6M7+09jN3jXl6HCnMF5cdTAwMWZ6OFx1MDAxOXpEgVBJKfDC0LvdXHUwMDFkXHUwMDFml3H9Ythk90dXfdK5XHUwMDE5nlx1MDAxZaVcdTAwMWJ6mmqEKVAlcFx1MDAwZuJVIDhcdTAwMGZcdTAwMDDMd/ilVlx1MDAwMzIuOKVSmFxyo5C3XHUwMDFlR2fd/ez10YMy7o4hu/1gPuzd3ULlSefqpze3+dx+iZ1Wrk7L68OUqCSYXHUwMDFhTHzrtDhKa4Ph1UPx4GKPXHUwMDBlb1x1MDAwZW/FceOl31x1MDAxOKRcdTAwMWOlXHUwMDEyOLogXHUwMDFh0ySUKqkx4YalXHUwMDFipVxcK0NAp29cdTAwMTakt4xcdTAwMWWwXvP2UuZcdTAwMGW8UnvvPtveyU2DtNc1g53i5X6/1WndXHUwMDE4r5M9XHUwMDFkPL0sXHUwMDA20sQ4XHUwMDFmnVx1MDAxMr2wJpVcdTAwMDJmh9MlNGk80fgmjK5cdTAwMTaA0Fx1MDAxOCNcdTAwMGVzK6VkXHUwMDAygKJDXHUwMDE4xciPTmAjOSdkjo9cdTAwMDKa1jHVXHUwMDE1XGY5RkSDJaacXGJcZkyBXHUwMDFiXHUwMDE1hSglXHUwMDE0acWNXHUwMDEx0X68a1JcZq6KXHUwMDA2i788SNeI/f1cdTAwMTmg0/m443OvwkLBrT5cdTAwMGbevjwxwE9cdTAwMThIqJBAl1x1MDAwMi5sv0K5XHUwMDA311xikE/NpNRCXHUwMDFhjEGfvF/w16RXMyGRpD7tXHLljqvOy8PXZ7WHT0vH41q/XHUwMDEy3ydcdTAwMDHaSjKNtWJMk4A9TbpE+Ht8MNKVXynMmUmGnt9cdTAwMWNFXfDEhdRO36l6b2JcdTAwMTejelxiweGzXHUwMDAxiVx1MDAxM4aTpVJcZvNnN5WqRymBiFxi51x1MDAxNzLEIG30TLhkXHUwMDA1XTM3vUBgYlx1MDAwNVbx+Vx1MDAwNcFcdTAwMTBcdTAwMGJFZD/sIJhIXHUwMDAwwoZdhvlGJJGsfY2h9JyRXHUwMDE3XHUwMDA3VqGTsGqHXHUwMDA06IHhXHUwMDBiQ/XUnNb0Y+ZcZjv9+vhlv1ar0lx1MDAxYp1uqFxuzZHkOlx1MDAxMsPLcEAwZeuCNd4wTo15YFxicVx1MDAxOJRcbmvgmdCDTaAyuL3udr2r1viNXHUwMDE4zZzdK3da7ddcdTAwMTmS7KNcYl6QO/w9l5/+5lx1MDAwM8dPXHUwMDA1WVx1MDAwMzJz8U671bAw22479Vn8ea1quT1p9tz3uM2y+J1mryFcdTAwMDBTLMCRlFgvXHUwMDFlrMnUSy93tVuXXFzhV0ZHudZ9/WYv3VxiVlx1MDAxYXxcdTAwMTHGhIlAmCFcdTAwMDI6bTpcdTAwMTfxdVx1MDAxMDYx7kZcdTAwMTTCnDEgNnQzXvCaXHUwMDEw7r10tjrl/mOm119cbshV6IHTn1x1MDAwM+VOq1aDeVpNXHUwMDFiT9mgMHUw4LJQJcniXou5rreck/vX87Ni9fKml8/uXHUwMDBm99opRzPjKFx1MDAxYXa0OTG+NnOIR7JcXFxiyYBjhrlQaUSy1281XHUwMDFhXHUwMDAwlnToY5lcdTAwMDRgSsFcdTAwMTmS4I8ujt9cdTAwMDfvRGSIW3XpNb+8KPZeKuY53fhcdTAwMTV61s8m2CRCdvVcYrlcXFx1MDAwNLKEciC7VGw4o79cdTAwMTJk91x1MDAwZoupQKtMjmNcbmwknlx1MDAwZe19htZzUqlnyNA1tNFgJ979Sc3Ig3SjVWKCwm5cdTAwMWFcdTAwMDU3jWu8dlx1MDAxOVhcdTAwMDJvwItAl2JsXHUwMDE0UHOVRu7be263M33n6dlcdTAwMTl4qVx1MDAwMPGcikZcdTAwMDZeOGeEL47ibuX2oDC4qu9XScE72cuKJ89l6UaxUlxuXHUwMDExXG6aNsyAKTS8V818PZJcdTAwMTdz4ohN2WHwotOI5KpcdTAwMWbOS1x1MDAwN2/QLFFcdTAwMTVcdTAwMTOimDSaLqGLx+TENC+P3CG48Fx1MDAwZqdPzmhHtb6t+GM1XHUwMDE0XHUwMDFialx1MDAxMJaSR+tyiUDh81+GYm6iKOZRfUw4o1x1MDAxYd6RRi7Rcfpccudf3Tcwx2KZbVxiy4nJJ4J5YlRCKsqwWqaCJL7UIN1gNlx1MDAwNlx1MDAxMSZtqVx1MDAxMlVARGdcdTAwMDHNJOKYYiFcYmbgXHUwMDE1JOdH10g9MYYtXHUwMDAx5lhTojCNcfJcdTAwMDRFXHUwMDE4SIa2XYBcdTAwMWZcdTAwMTEtJSFgOlxilasw6FxypJ7mXHUwMDE3XHUwMDEybVx1MDAwNWmeXGZGXHUwMDE4W/IvOdFcdTAwMDR+XHUwMDFiXHUwMDFlUIStj0xcdTAwMGaDXHSyWSCKNVx1MDAxMC1CjXy/XCIh+/TL1rxnksHgN0dwXHUwMDEwPPDH9N+VckGMJZY0XHUwMDEyXHTOXHUwMDE5XSZcdTAwMGJ9cVxcLzzXi/XXdvdlv/q0f+++/MykXFxcdTAwMTHYgi1cdTAwMWPKyHxkg1xmwbNpopSkg6SRmlx0pTdcXFx1MDAxN9FcdTAwMTkpM3i5Prp5Klx1MDAxNfdL/Kg1esrx9bI5TCWmc5SUNo++XHUwMDA0iTpwcrLUXHUwMDFil+9yXa9XymtncHjcSDncuEJcIlx1MDAwNmxcZq1ccrR4Q6Nj+FPUXHUwMDBiMJTZ6v9Valx1MDAxOL4lXHUwMDBl/tyrlT0nljttNFxmPqfEzOjkSLhiRFx1MDAxMYaX0JyXLnbUXHUwMDFkXHUwMDE5j4/urk8yRTaUXHUwMDA3+f53QXnVXCJcXIU4M6FcdTAwMDTOR1x1MDAxMS5cdTAwMTcmqIJMLsJcdTAwMTVVw3FtXHUwMDA1XFyvWYQrtV1cdTAwMDFcIjbk9a5IyimZs17FSKbJXHUwMDEyiIpX3qlWjuCVgFx1MDAxZZSMcrsqRYBGnIFcdTAwMTUnXGJ4oFx1MDAwMVxcaSUxMWRcdTAwMDO8XFwjXHUwMDBlXHUwMDE0y1C7fEFhXHUwMDE2XHUwMDE3yFbEpnqAptmiXGbAVnSpXHUwMDFhOFx1MDAxN6BcdTAwMWTArqeCllx1MDAxZo+9YmN4eP3aKzyMd1x1MDAwZmuj0cn4OpaWXHUwMDEzROGbXHUwMDBiXHUwMDA29MIu8cA6Wn4lkaJcdTAwMDS4XHUwMDA3Jv78XHUwMDAwPZpPypM6xdV5P39zpl9cdTAwMWLZw4fm2at7rFx1MDAxZkVCmVx1MDAxYWhcYlCnXHUwMDE0U1uxPFx1MDAxNWSZdFxu9Fx1MDAxMFa2SIpJeyGLdOlX8lx1MDAwNlx1MDAwNMK2XHUwMDA0i1x1MDAxYu2XfUyZXHUwMDE5ezC7Ts6WjH1MXHUwMDEx/9S7sCyScaUo/GhhmJ5+Xlx1MDAwNMxL+lx1MDAxNonRMpm4ToBcdTAwMTIsXGJbyq+YXHUwMDBm4VTqMmMw4jCNkWhcdTAwMTnnKGI0v0x98YVcdTAwMTJvilx1MDAwYq413UzhzqLuw3qksFN+dNJcdTAwMTFcdTAwMTees19cdTAwMDOoR4zxXHUwMDEyy8jna8VU4lx1MDAxY67gKJyN82+l2Cqe2a1cdTAwMTS+jP5cdLpcYtBccuPcgHe/4brJ+VTLXHUwMDBls9C5e5zXbNfdx4dcclWt5St3XyRcdC9cdTAwMTQxhL9VXHUwMDE05jDYOdEkMGhcdTAwMThcdTAwMWKwa1x1MDAwYotD/LClXFxcdTAwMWMo2Fuso9VuRDAk5Obq3TTCms4s7J/dV0FyXHUwMDFhXG48TMowsJCSmlVcdTAwMTYkboCuLsxcZlx0wlxmUymAtihul15PRU0/XHUwMDE2XHUwMDBiMEQxIWpqW4MleWrh/PTYObwrPDcuu3eXmcaDzraLseRcdTAwMTkjTDF4ldJmXHUwMDAzoV/GiGhMm2BcdTAwMDSG95dfvlx1MDAwMJ5YODRqj1xmoVx1MDAxM6f8s0cog8CFXHUwMDEz4Y0oMlx1MDAwMiOF36vwP3tGXGbm37oxXHL3JVx07fxguUnMXHUwMDAxay5cclfCLE5q50MrpdpNiYRaXmvt59v6vylWrpWRXG5L+bfEylx1MDAxN+ZcdTAwMDArUU/OXHUwMDEza1x1MDAxOW1u02BjyOKLI1x1MDAxZTOiXb48KWR/dq9cdTAwMTg9PuqeOe1O2vFcYl5WXFxhXHI4vUJ9sofR6jGihbgn01pcdTAwMWHCUlx1MDAxYlLvPVfarUHz+2PqyTvfXHUwMDExmlx1MDAwNGcjlF0mqlx1MDAxNkfz/KVKqUSzZlx1MDAwNFFliFx1MDAxNpxZ9MxGP+2CWMolwZLZXFyNXGb366vWw4LxNUpQJamOzVx1MDAxZIFcdTAwMTaWRFFwbHWoXHUwMDFi76U4jHGqplx1MDAwNe/vZJPzd5iY5W/AIVx1MDAwNVFSXHUwMDE4KohRU1x1MDAwYpK3guinZMAnOdXANlx1MDAxOSdqNVK5xHpYXGZcXFxu6Dn4TUxpXHRcYonhlFx1MDAxY1x1MDAxMflGxn5pUplJhp/fXHUwMDFjQd6SzC5Z7ySvxFdcdTAwMWFcdTAwMGJGxVx1MDAxMrVQ8Ssg0613pEJcXINcdTAwMDMlXHUwMDA0JVx1MDAwMmxmSO9cdTAwMTDkXHUwMDEzKzCooHjERoqh7OpzXHUwMDA2XGaa+n9FYLGm9Fx1MDAwZTA8IbiyXHUwMDExndluvOlcdTAwMWTBwUhQscKGTlx1MDAxYlA787dcZplVOyC5moDCXHUwMDExNqZcdTAwMGbIj0q4QFgxm1x1MDAwNOGMM234XHUwMDA38jeldqBTYGutXHUwMDE3plxiXHUwMDEzfnFMnNbR72Hs/1x1MDAwMq1cdTAwMTNcdTAwMGI+vzmCuyW1TtJcdTAwMDakXFwnb6QkQc1cdTAwMDPfWYK7VzM0c0HPstdcXFx1MDAxZD28NlxuleFcdTAwMDXfSbfWUUnlxFx1MDAxOcJcdTAwMTRcbqf2w7pcdTAwMDb7x0q6ZiZSXHUwMDFk1Fx1MDAxNCuMYsNjwu5HwcX/xNa+m9t3dHbY7TFcdTAwMTnwJVx1MDAwNSpxpVSi88C13ZjMLJGHYb1xxa2UijX3/Lzx6N1cdTAwMGJ1k71PtzhJbDdfjMk3Zlxi5dFcbscvkydcdTAwMWS3XoqFhchcdTAwMTa1SrBcdTAwMTbi+1aZTHnkM95wMCWTvVx1MDAwMi53d4q70989cIT1zNVflkFJtFxuU/HDcICRXG44pFjcKPxcdTAwMWM+nNf2XHUwMDFmunTw+FDOtS9PXHUwMDFm872UU1FDXHUwMDAwxVLiuM1ZwCqo+ftdrGFcdTAwMTRmQ0UzVlx1MDAwMVxcQTlbm/mOaS2I3X+Er1x1MDAxMFn8v2WYXHUwMDFjmdDg22N62L/IPOhE80CkwUCuXHJfYt23k1x1MDAxYrG8m1x1MDAxObmV/LB3und9dzb4tlx1MDAxZFx1MDAwMVfdhcPWo0RrNX3zwCNcdTAwMTD/KslScSGkqHng1pUwOo3W4XL3+nD3Jlx1MDAxNdZBmcTieVwiMZO24nVxknN6endH1bV5kVx1MDAwM1kvO1x1MDAwM9xuVlLuM1x1MDAxMGA3yNC4Pc3f7Fx1MDAwM5ezuYAvtFx1MDAxMInFxlRrJEh4XHUwMDE170edMehcdTAwMTabKv2/iVjPRIRG31x1MDAxZdPj/kVGQiUv8ZVSXHUwMDEwos1cdTAwMTL74t1enVx1MDAxNDqD0iU++Vl9OepeueYgf5tu+Vx1MDAwMi9cdFFcdTAwMDNaxLxbhKipgOFcdTAwMDZcdTAwMWFKVLiW5Hv9XHRKXHUwMDE1U3yVXHUwMDFjw8btRamQ/25vXCJxq1x1MDAxYj1nybpRjODpXVc/3ecxV7w96Tx1s1WuXHUwMDFlyOurOO9cdTAwMTS+bZ/4lfPDQG5kTH7YZz34k/3zVlx1MDAwN3FcXFx1MDAxOW5cdTAwMTTEWHOOLfNJIYxcdTAwMGKl7Mnh1cFmcPzjXdVvl3u9K8+u7PqIWm+/tJxhNn6c7VD/sHf/9Vx1MDAxZoZcItJ4In0=CI/CD pvm mark-pr triggers GIT pull-request commits merge commit pvm update makes v2.3.0 pvm publish CREATE REVIEW UPDATE PUBLISH Такой кейс с pvm update
возможен либо если явно указать что не нужно делать коммит с помощью настройки release.tag_only
равной true
.
Либо в случае если команде pvm update
нечего доставлять в основную ветку:
Ченжлоги либо отключены, либо настроены на хранение в другом месте (про хранение артефактов подробнее поговорим в главе [процесс обновления]). Артефакт списка релизов отключен, либо также настроен на хренение в другом месте. Не было других изменений, которые pvm настроен удалять с помощью релизного коммита. Далее происходит публикация пакетов в задаче запущенной на релизном теге.
Pvm перед публикацией будет подменять версии пакетов на версию указанную в релизном теге. Данное поведение настраивается явно в конфиге pvm:
[versioning] source = 'tag'
Copy Итоги В pvm есть 4 основных команды для построения процессов обновления пакетов. Одна для ревью, пара для фиксации релиза и одна для публикации.
В следующей части главы рассмотрим примеры интеграционных файлов, реализующих автоматический процесс доставки, для конкретных платформ .