Что такое конфигурация Travis CI для репозитория с несколькими папками

Еще один быстрый и простой способ - использовать Boost.Fusion I/O :

#include 
#include 

#include 
#include 

namespace fusion = boost::fusion;

struct CsvString
{
    std::string value;

    // Stop reading a string once a CSV delimeter is encountered.
    friend std::istream& operator>>(std::istream& s, CsvString& v) {
        v.value.clear();
        for(;;) {
            auto c = s.peek();
            if(std::istream::traits_type::eof() == c || ',' == c || '\n' == c)
                break;
            v.value.push_back(c);
            s.get();
        }
        return s;
    }

    friend std::ostream& operator<<(std::ostream& s, CsvString const& v) {
        return s << v.value;
    }
};

int main() {
    std::stringstream input("abc,123,true,3.14\n"
                            "def,456,false,2.718\n");

    typedef boost::tuple CsvRow;

    using fusion::operator<<;
    std::cout << std::boolalpha;

    using fusion::operator>>;
    input >> std::boolalpha;
    input >> fusion::tuple_open("") >> fusion::tuple_close("\n") >> fusion::tuple_delimiter(',');

    for(CsvRow row; input >> row;)
        std::cout << row << '\n';
}

Выходы:

(abc 123 true 3.14)
(def 456 false 2.718)

0
задан Ioan Ungurean 20 February 2019 в 08:22
поделиться

2 ответа

Прочитав ответ @ tbking, я нашел файл конфигурации, который работает довольно хорошо.

language: node_js
node_js:
  - "stable"
cache:
  directories:
    - "$HOME/.npm"
matrix:
  fast_finish: true
  include:
    - env: ECMAScript
      before_script:
        - cd ${TRAVIS_BUILD_DIR}/templates/ECMAScript
        - npm install
      script:
        - npm test
        - npm run build
    - env: TypeScript
      before_script:
        - cd ${TRAVIS_BUILD_DIR}/templates/TypeScript
        - npm install
      script:
        - npm test
        - npm run build
on:
  branch: master
0
ответ дан Ioan Ungurean 20 February 2019 в 08:22
поделиться

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

before_install
  - cd ./subfolder1
  - npm install
  - npm test 
  - npm run build
  - cd ./subfolder2
  - npm install
  - npm test 
  - npm run build

Вы также можете выполнить тестирование и сборку обоих этих проектов в разделе script, но идея заключается в том, что вам нужно самостоятельно управлять последовательностью выполняемых действий. Это сделает install stage просто заполнителем.

0
ответ дан tbking 20 February 2019 в 08:22
поделиться
Другие вопросы по тегам:

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