简体   繁体   中英

Getting error in concourse hijack: Backend error: Exit status: 500

I am getting below error while working on concourse:

hijack: Backend error: Exit status: 500, message: {"Type":"","Message":"runc exec: exit status 1: exec failed: container_linux.go:264: starting container process caused \\"exec: \\\\"./task-scripts/task_show_uname.sh\\\\": stat ./task-scripts/task_show_uname.sh: no such file or directory\\"\\n","Handle":""}

I have a task.yml:

platform: linux

image_resource:
  type: docker-image
  source: {repository: busybox}

inputs:
- name: task-scripts

run:
  path: ./task-scripts/task_show_uname.sh

***************

task_show_uname.sh runs a simple "uname -a" command.

***************

pipeline.yml looks like:

resources:
- name: resource-tutorial
  type: git
  source:
    uri: https://github.com/manmohan1391/concourse-tutorial.git
    branch: master

jobs:
- name: job-hello-world
  public: true
  plan:
  - task: hello-world
    config:
      platform: linux
      image_resource:
        type: docker-image
        source: {repository: busybox}
      run:
        path: echo
        args:
        - hello world

- name: scripts
  public: true
  plan:
  - get: resource-tutorial
  - task: script-hello
    file: resource-tutorial/tutorials/basic/task-scripts/task_show_uname.yml

Any idea?

if your pipeline goes orange instead of red, it means the hijack failed to create and you can't hijack it. Looking at your task yml in the question:

platform: linux

image_resource:
  type: docker-image
  source: {repository: busybox}

inputs:
- name: task-scripts

run:
  path: ./task-scripts/task_show_uname.sh

Given with your pipeline definition, it should probably look like this:

platform: linux

image_resource:
  type: docker-image
  source: {repository: busybox}

inputs:
- name: resource-tutorial

run:
  path: resource-tutorial/tutorials/basic/task-scripts/task_show_uname.sh

How are you trying to run hijack? It looks like you're trying to have fly run your script instead of a shell. The hijack command tries to run bash by default and if the docker image doesn't have bash, just have hijack run 'sh'.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM