Skip to content

feat: v1.0

feat: v1.0 #346

Workflow file for this run

name: Continuous Integration
on:
pull_request:
branches:
- main
push:
branches:
- main
- feature/v1
permissions:
contents: read
jobs:
test-docker:
name: Docker Tests
runs-on: ubuntu-latest
services:
registry:
image: registry:2
ports:
- 5001:5000
env:
TEST_TAG: localhost:5001/actions/yq-yaml-parser-action:latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v4
- name: Setup Docker BuildX
id: setup-buildx
uses: docker/setup-buildx-action@v3
with:
install: true
driver-opts: network=host
- name: Build the Container
id: build
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: ${{ env.TEST_TAG }}
- name: Run the Container
id: run
env:
INPUT_YAML_FILE_PATH: ./yq-test-action.yml
run: |
docker run \
--workdir /github/workspace \
--volume "${{ github.workspace }}":/github/workspace \
--volume "${{ runner.temp }}/_runner_file_commands":${{ runner.temp }}/_runner_file_commands \
--env GITHUB_OUTPUT="$GITHUB_OUTPUT" \
--env INPUT_YAML_FILE_PATH="${{ env.INPUT_YAML_FILE_PATH }}" \
--rm ${{ env.TEST_TAG }}
test-action:
name: GitHub Actions Test Output
runs-on: ubuntu-latest
outputs:
comment-line: ${{ steps.action.outputs.test-action_comment-line }}
multiline: ${{ steps.action.outputs.test-action_multiline }}
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v4
- name: Test Action
id: action
uses: ./
with:
file-path: ./yq-test-action.yml
test-action-output-comment-line:
name: GitHub Actions Test Output - Comment Line
needs: test-action
runs-on: ubuntu-latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v4
- name: Test Output Comment Line
id: test-output-comment-line
run: |
test_name="Test Output Comment Line"
expected_result="./app ="
.github/scripts/test-action-output.sh "$test_name" "$expected_result" "${{ needs.test-action.outputs.comment-line }}"
test-action-output-multiline:
name: GitHub Actions Test Output - Multiline
needs: test-action
runs-on: ubuntu-latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v4
- name: Test Output Multiline
id: test-output-multiline
run: |
test_name="Test Output Multiline"
expected_result=$(printf "%b" "### Heading\n\n* Bullet C:\\\\\\\\ E:\\\\\n* Driver D:\\\\\n* Points")
.github/scripts/test-action-output.sh "$test_name" "$expected_result" "${{ needs.test-action.outputs.multiline }}"