mirror of
https://github.com/dagger/dagger-for-github.git
synced 2025-12-31 12:49:46 +11:00
Proper support for shell input (#189)
* add options for shell Signed-off-by: kpenfound <kyle@dagger.io> assemble dagger command in new step with output Signed-off-by: kpenfound <kyle@dagger.io> fixing some inline bash Signed-off-by: kpenfound <kyle@dagger.io> wrap conditional inputs in quotes Signed-off-by: kpenfound <kyle@dagger.io> use cat for heredoc script file Signed-off-by: kpenfound <kyle@dagger.io> missing space in heredoc Signed-off-by: kpenfound <kyle@dagger.io> add tab ignore and dagger shebang Signed-off-by: kpenfound <kyle@dagger.io> use toJson and jq to safely write the shell input to a file Signed-off-by: kpenfound <kyle@dagger.io> put DAGGER_COMMAND in a variable Signed-off-by: kpenfound <kyle@dagger.io> missing semicolon for the dagger command Signed-off-by: kpenfound <kyle@dagger.io> safely evaluate if shell is set Signed-off-by: kpenfound <kyle@dagger.io> extra > in shell file write Signed-off-by: kpenfound <kyle@dagger.io> add some logging Signed-off-by: kpenfound <kyle@dagger.io> strip extra newline from jq when shell is not set Signed-off-by: kpenfound <kyle@dagger.io> debugging Signed-off-by: kpenfound <kyle@dagger.io> toJSON and jq will send null instead of empty string with no input Signed-off-by: kpenfound <kyle@dagger.io> safely handle all inputs Signed-off-by: kpenfound <kyle@dagger.io> did i fix the wrong thing? Signed-off-by: kpenfound <kyle@dagger.io> change up the approach a bit for an easier diff Signed-off-by: kpenfound <kyle@dagger.io> fix shell test Signed-off-by: kpenfound <kyle@dagger.io> single quotes around shell input Signed-off-by: kpenfound <kyle@dagger.io> try with piped input Signed-off-by: kpenfound <kyle@dagger.io> try single quotes again Signed-off-by: kpenfound <kyle@dagger.io> debug Signed-off-by: kpenfound <kyle@dagger.io> debug Signed-off-by: kpenfound <kyle@dagger.io> fix shell test Signed-off-by: kpenfound <kyle@dagger.io> does shell emit a newline? Signed-off-by: kpenfound <kyle@dagger.io> remove the trailing newline if its in stdout Signed-off-by: kpenfound <kyle@dagger.io> break the trailing output test Signed-off-by: kpenfound <kyle@dagger.io> fix shell test Signed-off-by: kpenfound <kyle@dagger.io> missed ! Signed-off-by: kpenfound <kyle@dagger.io> add comment about weird test Signed-off-by: kpenfound <kyle@dagger.io> * use echo -n in shell test Signed-off-by: kpenfound <kyle@dagger.io> --------- Signed-off-by: kpenfound <kyle@dagger.io>
This commit is contained in:
parent
710906f307
commit
4e0ad19142
3 changed files with 58 additions and 7 deletions
23
.github/workflows/test.yml
vendored
23
.github/workflows/test.yml
vendored
|
|
@ -120,7 +120,6 @@ jobs:
|
|||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
version:
|
||||
runs-on: "ubuntu-latest"
|
||||
steps:
|
||||
|
|
@ -219,6 +218,27 @@ jobs:
|
|||
exit 1
|
||||
fi
|
||||
|
||||
shell:
|
||||
runs-on: "ubuntu-latest"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: "Test shell"
|
||||
id: test-shell
|
||||
uses: ./
|
||||
with:
|
||||
shell: 'container | from alpine | with-exec echo,-n,"hello world!" | stdout'
|
||||
- name: "Test shell (check)"
|
||||
run: |
|
||||
target='${{ steps.test-shell.outputs.output }}'
|
||||
result='hello world!'
|
||||
if [[ "$target" == "$result" ]]; then
|
||||
echo "matches"
|
||||
exit 0
|
||||
else
|
||||
echo "does not match"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
nocall:
|
||||
runs-on: "ubuntu-latest"
|
||||
steps:
|
||||
|
|
@ -228,4 +248,3 @@ jobs:
|
|||
- name: "Test Install"
|
||||
run: |
|
||||
dagger core version
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue