zendesk / zendesk/setup-jsonnet

Error setting up jsonnet doesn't fail the task

Open
#12 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Shell
Stars
7
Forks
5
PR merge metrics
No merged PRs in 30d

Description

We use this action in our repo, and today I got a failure on my action because jsonnet wasn't found in the path. Then I looked into this step and found the error pasted below, but github thinks the step passed (terminated with exit code 0 instead of failing)

Can we look into making this fail when it didn't really setup jsonnet?

Run zendesk/setup-jsonnet@v7
/home/runner/runner/agent/_work/_actions/zendesk/setup-jsonnet/v7/install-jsonnet.sh

  • go get github.com/google/go-jsonnet/cmd/jsonnet
    unrecognized import path "gopkg.in/yaml.v2": reading https://gopkg.in/yaml.v2?go-get=1: 502 Bad Gateway
    server response: Cannot obtain refs from GitHub: cannot talk to GitHub: Get https://github.com/go-yaml/yaml.git/info/refs?service=git-upload-pack: net/http: request canceled (Client.Timeout exceeded while awaiting headers)
    (node:4495) UnhandledPromiseRejectionWarning: Error: The process '/home/runner/runner/agent/_work/_actions/zendesk/setup-jsonnet/v7/install-jsonnet.sh' failed with exit code 1
    at ExecState._setResult (/home/runner/runner/agent/_work/_actions/zendesk/setup-jsonnet/v7/node_modules/@actions/exec/lib/toolrunner.js:574:25)
    at ExecState.CheckComplete (/home/runner/runner/agent/_work/_actions/zendesk/setup-jsonnet/v7/node_modules/@actions/exec/lib/toolrunner.js:557:18)
    at ChildProcess. (/home/runner/runner/agent/_work/_actions/zendesk/setup-jsonnet/v7/node_modules/@actions/exec/lib/toolrunner.js:451:27)
    at ChildProcess.emit (events.js:210:5)
    at maybeClose (internal/child_process.js:1021:16)
    at Socket. (internal/child_process.js:430:11)
    at Socket.emit (events.js:210:5)
    at Pipe. (net.js:659:12)
    (node:4495) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
    (node:4495) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with install-jsonnet.sh, which is invoked by zendesk/setup-jsonnet@v7, and trace how its exit status reaches the action. Reproduce the reported go get failure and verify that setup-jsonnet reports a non-zero result when installation fails, rather than completing with exit code 0.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, shell
Domain
ci-cd
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.