Есть ли способ настроить развертывание Travis GitHub Pages в несколько этапов? - PullRequest
0 голосов
/ 19 мая 2018

Ожидается

Чтобы иметь возможность развертывать страницы в GitHub в Travis с использованием этапов.

Результат

Ошибка, у меня не должно быть правильного синтаксиса, или это невозможно.

Репродукция

Источник:

Проект:

Эта работа по созданию страницы без этапов: См. задание "travis": travis-ci.org/kopax / deleteme / builds / 380660202 :

dist: trusty

# Blocklist
branches:
  except:
    - gh-pages # will be deployed to, no need to build it

cache:
  directories:
    - node_modules

node_js:
  - "10"

before_install:
    - npm install -g npm
    # const
    - export PACKAGE_NAME=$(node -p "require('./package.json').name")
    - export PACKAGE_VERSION=$(node -p "require('./package.json').version")
    - export NODE_VERSION=$(node --version)
    - export NPM_VERSION=$(npm --version)

    # logging
    - npm --version || echo npm not installed
    - node --version|| echo node not installed
    - npx rollup-umd-scripts --version || echo npx not installed
    - echo "package version $PACKAGE_VERSION"

language: node_js
sudo: required
script:
  # execute all of the commands which need to be executed
  # before running actual tests
  - npm run styleguide:build


deploy:
  provider: pages
  skip_cleanup: true
  github_token: $GH_TOKEN  # Set in the settings page of your repository, as a secure variable
  keep_history: true
  local_dir: public/
  on:
    branch: master

Но это не удается, когда добавление развертывания страницы в качестве этапа Посмотреть это неудачное задание travis: travis-ci.org/kopax/deleteme/ jobs / 380983577 :

language: node_js
sudo: required

#env:
#  global:
#    - DISPLAY=:99.0
#    - NODE_ENV=test
dist: trusty

# Blocklist
branches:
  except:
    - gh-pages # will be deployed to, no need to build it

cache:
  directories:
    - node_modules

node_js:
  - "10"

before_install:
    - npm install -g npm
    # const
    - export PACKAGE_NAME=$(node -p "require('./package.json').name")
    - export PACKAGE_VERSION=$(node -p "require('./package.json').version")
    - export NODE_VERSION=$(node --version)
    - export NPM_VERSION=$(npm --version)

    # logging
    - npm --version || echo npm not installed
    - node --version|| echo node not installed
    - npx rollup-umd-scripts --version || echo npx not installed
    - echo "package version $PACKAGE_VERSION"

stages:
  - build
  - test
  - release
  - deploy
script:
  # execute all of the commands which need to be executed
  # before running actual tests
  - npm run styleguide:build
jobs:
  include:
    # Job: Build
    - stage: build
      node_js:
        - lts/*
#        - 10
#        - 8
      script:
        - npm run build
      branches:
        only:
        - release
        - dev
        - master
    # Job: Test
    - stage: test
      node_js:
        - lts/*
#        - 10
#        - 8
      script:
        - npm run test
      branches:
        only:
        - release
        - dev
        - master
    # Job: Release
    - stage: release
      node_js:
        - lts/*
      skip_cleanup: true
      script:
        - npx semantic-release
      branches:
        only:
        - master
    # Job: Page
    - stage: deploy
      provider: pages
      skip_cleanup: true
      github_token: $GH_TOKEN  # Set in the settings page of your repository, as a secure variable
      keep_history: true
      local_dir: public/
      on:
        branch: master

Кто-нибудь знает, как я могу развернуть этапы со страницей, работающей в Travis?

1 Ответ

0 голосов
/ 19 мая 2018

На этапе развертывания не определена установка / сценарий, поэтому он принял установку по умолчанию.Вам нужно на этапе определить, что вы хотите сделать, вы забыли про deploy уровень.Чтобы иметь выделенный этап только для развертывания, настройте его следующим образом:

- stage: deploy
  if: type = push AND branch = master # or whenever you want to deploy
  script: skip # to not run Travis' default script
  deploy:      # <-- that was missing !!!
    - provider: pages
      skip_cleanup: true
      github_token: $GH_TOKEN  # Set in the settings page of your repository, as a secure variable
      keep_history: true
      local_dir: public/
...