[«28-github-действия»] (26 части серии)
Матричные рабочие процессы в Действиях GitHub обрабатывают вариант переменной замены. Вы определяете набор переменных в ключевого слова Matrix, а действия GitHub передают расширение расширения этих переменных для вас.
В мире узел с открытым исходным кодом сопровождающие должны поддерживать их до настоящего времени с тестами для нескольких версий Node.js. Матрица сборки в Действия GitHub становятся сильными очень быстро.
В приведенных ниже примерах я хочу проверить с четырьмя разными версиями узлов и три версии Mongo и двух версий Redis. Чтобы проверить эти разные комбинации, это 24 различных конфигурации.
Вместо того, чтобы определять шестнадцать разных рабочих мест, или хуже, необходимость настроить 24 различных машины на вашем кухонном столе (ы), я могу просто указать матрицу с тремя переменными. Если я укажу матрицу на работе, я фактически получаю шестнадцать рабочих мест с различными перестановками:
name: Run test matrix on: [push] jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [8.x, 10.x, 12.x, 14.x] mongodb-version: [4.0, 4.2, 4.4] redis-version: [4, 5] steps: - name: Git checkout uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: node-version: ${{ matrix.node-version }} - name: Start MongoDB v${{ matrix.mongodb-version }} uses: supercharge/mongodb-github-action@1.3.0 with: mongodb-version: ${{ matrix.mongodb-version }} - name: Start Redis v${{ matrix.redis-version }} uses: supercharge/redis-github-action@1.1.0 with: redis-version: ${{ matrix.redis-version }} - run: echo "done"
Каждое отклонение узла выполняет последнюю второстепенную версию, то есть 14.x будет работать 14.15.4
Когда вы запускаете этот рабочий процесс, вы можете быстро увидеть, как он расширяется до 16 различных рабочих мест. Слева от запуска рабочего процесса вы можете увидеть каждого из них. Так что простой рабочий процесс расширился очень быстро.
Когда вы открываете шаги на одной из прогонов, вы можете увидеть, что действительно мы смогли установить наши зависимости. Если я открою сборку, я на самом деле запускаю среду с узлом, MongoDB и Redis.
Чтобы узнать больше о репликах Mongodb Checkout SuperChare/Mongodb-Github-Action ПРОЧТИ МЕНЯ.
Это часть моих 28 дней серии действий. Чтобы получить уведомление о большего количества подсказки GitHub, следуйте за организацией GitHub прямо здесь на Dev.
Пропустить запрос на тягу и протолкните рабочие процессы GitHub Action с [Skip CI]
Брайан Дуглас · 9 февраля · 1 мин прочитан
[«28-github-действия»] (26 части серии)
Оригинал: «https://dev.to/github/run-complex-matrix-builds-in-github-actions-29o1»