fix: multiline output #259
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test | |
on: | |
push: | |
branches: ["main"] | |
pull_request: | |
types: | |
- opened | |
- synchronize | |
- reopened | |
- ready_for_review | |
# Enable manual trigger for easy debugging | |
workflow_dispatch: | |
permissions: | |
contents: read | |
pull-requests: write | |
jobs: | |
output: | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Use output" | |
id: use-output | |
uses: ./ | |
with: | |
version: latest | |
verb: core | |
args: container from --address=alpine with-exec --args echo,-n,"hello world" stdout | |
- name: "Use output (check)" | |
run: | | |
target='${{ steps.use-output.outputs.output }}' | |
if [[ "$target" == "hello world" ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
- name: "Use trailing output" | |
id: use-trailing-output | |
uses: ./ | |
with: | |
version: latest | |
verb: core | |
args: container from --address=alpine with-exec --args echo,-n,-e,"hello world\n" stdout | |
- name: "Use output (check)" | |
run: | | |
target='${{ steps.use-trailing-output.outputs.output }}' | |
result='hello world | |
' | |
if [[ "$target" == "$result" ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
- name: "Use multiline output" | |
id: use-multiline-output | |
uses: ./ | |
with: | |
version: latest | |
verb: core | |
args: container from --address=alpine with-exec --args echo,-n,-e,"hello\nworld" stdout | |
- name: "Use output (check)" | |
run: | | |
target='${{ steps.use-multiline-output.outputs.output }}' | |
result='hello | |
world' | |
if [[ "$target" == "$result" ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
version: | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Use latest" | |
id: use-latest | |
uses: ./ | |
with: | |
version: latest | |
verb: core | |
args: version | |
- name: "Use latest (check)" | |
run: | | |
target='${{ steps.use-latest.outputs.output }}' | |
if [[ "$target" =~ v[0-9]*\.[0-9]*\.[0-9]* ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
- name: "Use v0.13.5" | |
id: use-v0-13-5 | |
uses: ./ | |
with: | |
version: v0.13.5 | |
verb: core | |
args: version | |
- name: "Use v0.13.5 (check)" | |
run: | | |
target='${{ steps.use-v0-13-5.outputs.output }}' | |
if [[ "$target" =~ v0\.13\.5 ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
- name: "Use commit" | |
id: use-commit | |
uses: ./ | |
with: | |
commit: 540b4d1490f253054140f9249e823adf111e1c06 | |
verb: core | |
args: version | |
- name: "Use commit (check)" | |
run: | | |
target='${{ steps.use-commit.outputs.output }}' | |
if [[ "$target" =~ v0\.13\.6-[0-9]+-540b4d1490f2 ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
- name: "Use head" | |
id: use-head | |
uses: ./ | |
with: | |
commit: head | |
verb: core | |
args: version | |
- name: "Use head (check)" | |
run: | | |
target='${{ steps.use-commit.outputs.output }}' | |
if [[ "$target" =~ v[0-9]*\.[0-9]*\.[0-9]*-[0-9]+-[0-9a-f]{12} ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
call: | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Test call" | |
id: test-call | |
uses: ./ | |
with: | |
module: github.com/shykes/daggerverse/hello@v0.3.0 | |
call: hello | |
- name: "Test call (check)" | |
run: | | |
target='${{ steps.test-call.outputs.output }}' | |
if [[ "$target" == "hello, world!" ]]; then | |
echo "matches" | |
exit 0 | |
else | |
echo "does not match" | |
exit 1 | |
fi | |
nocall: | |
runs-on: "ubuntu-latest" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Only Install" | |
uses: ./ | |
- name: "Test Install" | |
run: | | |
dagger core version |