Cardinal-Cryptography / Cardinal-Cryptography/github-actions-validator

False positive error for action output

Open
#5 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

On example on [this](https://github.com/Cardinal-Cryptography/aleph-node/actions/runs/5356212949/jobs/9715455989) run:
> EA811: action create-featurenet step 5 Called step with id 'get-argocd-featurnet-app-name' output 'name' does not exist
EA811: action create-featurenet step 6 Called step with id 'get-argocd-featurnet-app-name' output 'name' does not exist
EA811: action create-featurenet step 8 Called step with id 'get-argocd-featurnet-app-name' output 'name' does not exist
EA811: action delete-featurenet step 6 Called step with id 'get-argocd-featurnet-app-name' output 'name' does not exist
EA811: action delete-featurenet step 9 Called step with id 'get-argocd-featurnet-app-name' output 'name' does not exist
This error comes from the below code
```yaml
- name: Get argocd featurenet app name
id: get-argocd-featurnet-app-name
shell: bash
env:
# yamllint disable-line rule:line-length
APP_NAME: ${{ inputs.featurenet-name != '' && inputs.featurenet-name || format('{0}{1}', 'fe-', steps.get-ref-properties.outputs.branch-name-for-argo) }}
run: |
echo "name=${{ env.APP_NAME }}" >> $GITHUB_OUTPUT
```
Most likely problem is that validator sees GH expression and cannot parse `name` identifier correctly.

[The workaround is:](https://github.com/Cardinal-Cryptography/aleph-node/pull/1266/commits/bd1783cef6fbf842f6a43200eae61ade8c22791c)
```yaml
- name: Get argocd featurenet app name
id: get-argocd-featurnet-app-name
shell: bash
env:
# yamllint disable-line rule:line-length
APP_NAME: ${{ inputs.featurenet-name != '' && inputs.featurenet-name || format('{0}{1}', 'fe-', steps.get-ref-properties.outputs.branch-name-for-argo) }}
run: |
name_local=${{ env.APP_NAME }}
echo "name=$name_local" >> $GITHUB_OUTPUT
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the reported EA811 diagnostics with the GitHub Actions YAML shown in the issue, then inspect the validator's handling of expressions used in action output assignments. Done means the shown workflow no longer produces false 'output does not exist' errors while genuinely missing outputs remain detectable.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, go
Domain
ci-cd, devtools
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.