Kozack
@Kozack
Thinking about a11y

Как получить номер версии из вывода в консоли?

Для сборки проекта предусмотрена команда
npm run push_production
Весь проект собирается на GitHub Action.
В процессе выполнения запускается много всяких других команд, после чего весь проект заливается на прод, а в консоли выводится строчка:
Created version N.
Я хочу получить номер версии из вывода и создать соответствующий релиз на GitHub.

Я попробовал сделать следующим образом:
- id: push-production
      run: echo "::set-output name=PUSH_RESULT::$(npm run push_production)"
      shell: bash
    
    - run: echo PUSH_RESULT:${{ steps.push-production.outputs.PUSH_RESULT }}


Но в консоли выводится только PUSH_RESULT: почему-то результат сборки не сохраняется в переменную, из которой позже можно было бы вытащить номер версии.

Полный action.yml

name: Deploy to Produtcion

on:
  push:
    branches: [ main ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-node@v1
      with:
        node-version: 14.x
    - run: npm ci
      
    - name: Create credentials
      env:
        credentials: ${{ secrets.GOOGLE_CREDENTIALS }}
      run: echo $credentials >> ~/.clasprc.json
      
    - id: push-production
      run: echo "::set-output name=PUSH_RESULT::$(npm run push_production)"
      shell: bash
    
    - run: echo PUSH_RESULT:${{ steps.push-production.outputs.PUSH_RESULT }} 
      
    - id: created-version
      env: 
        PUSH_RESULT: ${{ steps.push-production.outputs.PUSH_RESULT }}
      run: echo "::set-output name=CREATED_VERSION::$( $PUSH_RESULT | grep -oE "Created version [0-9]+" | grep -oE "[0-9]+")"
      shell: bash
      
    - run: echo CREATED_VERSION:${{ steps.created-version.outputs.CREATED_VERSION }}

  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ответы на вопрос 1
svsd_val
@svsd_val
Разработчик & администратор M$, GNU/Linux
Возможно у вас выводится номер версии в STD error, попробуйте читать с него либо перенаправьте все потоки в STD out
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы