apiVersion: tekton.dev/v1 kind: Task metadata: name: openapi-generate spec: params: - name: context type: string description: context directory default: "" - name: source type: string default: "source" description: | source directory (sub directory of context) - name: output type: string default: "output" description: | output directory (sub directory of context) - name: specPath type: string default: "" - name: packageName description: Rust crate name type: string default: "" - name: version description: Rust crate version type: string default: "0.0.0" - name: generator description: specify the generator type: string default: "" - name: generatorOptions type: array description: | openapi-generator-cli options ex) ['--additional-properties=key=value', '--enable-post-process-file'] default: [] workspaces: - name: base description: Git-cloned source code results: - name: output steps: - name: generate-code image: openapitools/openapi-generator-cli:v7.13.0 workingDir: /workspace/base/$(params.context) env: - name: HOME value: /workspace/base/$(params.context)/home args: - generate - -i - $(params.specPath) - -g - $(params.generator) - -o - "$(params.output)" - --additional-properties=packageName=$(params.packageName) - --additional-properties=packageVersion=$(params.version) - --additional-properties=publish=true - --additional-properties=disableValidator=false - $(params.generatorOptions[*]) # 배열 확장 - name: write-output-result image: alpine:latest script: | #!/bin/sh OUTPUT="/workspace/base/$(params.context)/$(params.output)" echo -n "${OUTPUT}" > $(results.output.path) - name: debug image: alpine:latest workingDir: /workspace/base/$(params.context) script: | #!/bin/sh if [ -f "/workspace/base/$(params.context)/$(params.output)/Cargo.toml" ]; then echo "/$(params.output)/Cargo.toml" cat /workspace/base/$(params.context)/$(params.output)/Cargo.toml fi if [ -f "/workspace/base/$(params.context)/$(params.output)/src/models/request_summary.rs" ]; then echo "/$(params.output)/src/models/request_summary.rs" cat /workspace/base/$(params.context)/$(params.output)/src/models/request_summary.rs fi