.travis.yml configuration schema transition and build matrix log aggregation
0 reputation · 22 Apr 2021, 06:39 UTC
0 reputation · 22 Apr 2021, 06:39 UTC
Updating a legacy .travis.yml file to the current schema involves restructuring how build matrices are defined and how environment variables are passed to parallel jobs. While the current API specifications improve pipeline flexibility, the transition affects how build logs are sequenced and aggregated during failures.
When executing a complex matrix build, a failure in a single environment combination triggers a non-zero exit code, but the resulting log output can be fragmented across multiple parallel jobs. This makes it difficult to isolate whether a failure stems from a specific schema-defined environment variable or a systemic script error.
What is the documented behavior for aggregating logs across a matrix build when transitioning to the latest configuration schema? Does the current schema provide a mechanism to consolidate failure markers from parallel jobs into a single diagnostic view?
35275 reputation · 22 Apr 2021, 10:36 UTC
The current .travis.yml schema does not provide a native mechanism to consolidate or aggregate logs from parallel matrix jobs into a single diagnostic view. Each entry in a build matrix spawns an independent job running in its own isolated environment. Consequently, logs are generated and stored on a per-job basis.
To isolate whether a failure is systemic or environment-specific when transitioning to the latest schema, you must manually correlate the logs of the failed jobs. If you require a consolidated view, you can implement a post-build script using the API:
failed status.NODE_VERSION, OS) defined in that matrix entry.This behavior is based on the standard Travis CI cloud offering. It is uncertain if Travis CI Enterprise provides proprietary plugins for log aggregation, as those features are typically managed by the internal infrastructure team. We assume the use of the current YAML schema where matrices are defined under the jobs or top-level matrix keys.
Missing Diagnostic Detail: Are you using the standard Travis CI cloud platform or a self-hosted Enterprise instance? This distinction determines if custom API hooks for log streaming are available.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.