инкремент git версии с трэвисом при публикации репо - PullRequest
5 голосов
/ 27 мая 2020

Я хочу Travis публиковать sh npm всякий раз, когда я принимаю изменения зависимых ботов. Я добавил npm адрес электронной почты и токен авторизации.

Моя конфигурация travis такова прямо сейчас (я не уверен, верна она или нет)

language: node_js
node_js:
  - "node"
install:
  - "npm install"
script:
  - "npm run test"
before_deploy: 

deploy:
  provider: npm
  email: "$npm_email"
  api_key: "$npm_token"
  on:
    branch: production

Где npm тест выглядит так

  "scripts": {
    "test": "jest"
 }

Как я могу заставить travis увеличивать версию пакета npm и иметь эту версию пакета также на git? то же самое для changelog.md?

Ответы [ 2 ]

2 голосов
/ 05 июня 2020

Хорошее полноценное решение для этого: semanti c -release .

При использовании semanti c -release сообщения фиксации должны придерживаться спецификации c формата . Затем вы настроите свой конвейер travis для запуска semanti c -release, который анализирует ваши коммиты, генерирует журнал изменений, новый номер версии и отправляет изменения как новую фиксацию (для журнала изменений) и новый тег в ваше репо. .

Настройка немного сложнее, но у вас будет стабильное решение, обеспечивающее логичность номеров версий. Кроме того, вы получаете «бесплатные» автоматически сгенерированные журналы изменений.

Также есть рецепт для travis , который должен помочь его настроить.

0 голосов
/ 04 июня 2020

Установка версии зависимости - это ручная задача среды выполнения или языка программирования, Travis - это инструмент CI & CD, вам НЕ СЛЕДУЕТ автоматизировать с помощью travis.

Вам может понадобиться инструмент для проверки пакетов и зависимостей, таких как Snyk , чтобы он мог проверять уязвимости или возможные обновляемые пакеты.

В любом случае вы можете обновить свои пакеты на свой страх и риск. в before_install вот так:

language: node_js
node_js:
  - "node"
before_install:
  - "npm update <package name>"  ## change your package to update.
install:
  - "npm install"
script:
  - "npm run test"
before_deploy: 

deploy:
  provider: npm
  email: "$npm_email"
  api_key: "$npm_token"
  on:
    branch: production
...