Skip to content

exit 1 Even though commands passed #312

@Sushisource

Description

@Sushisource

The plugin is reliably exiting 1, and hence failing my runs, with rather long runtimes. I have a 4 hour test which triggers this every time.

My pipeline definition looks like:

agents:
  queue: 'default'
  docker: '*'

steps:
  - label: 'nightly-test'
    timeout_in_minutes: 360
    concurrency: 1 # Only allow one nightly build at a time
    concurrency_group: 'node-sdk/nightly'
    commands:
      - '.buildkite/docker/build.sh'
      - 'npm run ci-nightly'
      - 'echo success'
    artifact_paths:
      - 'docker-compose-logs/*'
    plugins:
      - docker-compose#v3.8.0:
          run: test-container
          upload-container-logs: always
          config:
            - .buildkite/docker/docker-compose.yaml
            - .buildkite/docker/docker-compose-ci.yaml

I know the commands work fine because I see the success line get echoed. The build output ends with:

success
🚨 Error: The command exited with status 1
user command error: The plugin docker-compose command hook exited with status 1

Whereas builds that have failed for legitimate reasons look like:

⚠️ Failed to run command, exited with 2, run params:
run --name buildkitec14d1406904d4db98fa70cefd10a4e75_test-container_build_250 --rm test-container /bin/sh -e -c .buildkite/docker/build.sh
npm run ci-load
🚨 Error: The command exited with status 2
user command error: The plugin docker-compose command hook exited with status 2

The "failed to run command" part being missing says to me the plugin isn't mistakenly thinking my command failed. It thinks it passed, and then exits 1 anyway.

I haven't dug into plugin code yet but this is preventing me from using the plugin for these longer running tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions