2025-04-25 19:22:03 +00:00

45 lines
1.3 KiB
YAML

apiVersion: tekton.dev/v1
kind: Task
metadata:
name: nx-nodejs-version
spec:
params:
- name: context
type: string
description: context directory
default: ""
- name: specDomain
type: string
default: ""
- name: specVersion
description: Rust crate version
type: string
default: "0.0.0"
workspaces:
- name: base
description: Git-cloned source code
results:
- name: version
description: Extracted project version (e.g. 0.2.0)
steps:
- name: verify-version
image: mikefarah/yq:4.24.2
workingDir: /workspace/base/$(params.context)/source
env:
- name: HOME
value: /workspace/base/$(params.context)/home
script: |
set -e
OPENAPI_FILE="specs/$(params.specDomain)/openapi.yaml"
EXPECTED_VERSION="$(params.specVersion)"
ACTUAL_VERSION=$(yq '.info.version' "$OPENAPI_FILE")
echo "Expected: $EXPECTED_VERSION"
echo "Actual: $ACTUAL_VERSION"
if [ "$ACTUAL_VERSION" != "$EXPECTED_VERSION" ]; then
echo "❌ Version mismatch! Expected: $EXPECTED_VERSION, Actual: $ACTUAL_VERSION"
exit 1
fi
echo "✅ Tag and version match: $ACTUAL_VERSION"
echo -n "$ACTUAL_VERSION" > /tekton/results/version