Files
gh-action-readme/testdata/composite-action/action.yml
Ismo Vuorinen f3693e67fc feat: gen command enhancements, race condition fixes, workflow tweaks (#21)
* feat: enhance gen command with directory/file arguments and custom output filenames

- Add positional argument support for targeting specific directories or files
- Add --output flag for custom output filename specification
- Implement resolveOutputPath method to handle absolute and relative custom paths
- Update CLI interface with comprehensive examples and help text
- Fix race condition in FixtureManager cache access with RWMutex synchronization
- Update .gitignore to cover additional generated file types (html, json)
- Maintain backward compatibility with existing gen command usage

This enhancement enables generating documentation for multiple actions in the same
directory without filename conflicts, while supporting flexible file targeting.

* feat: enhance CI workflow and standardize license filename

- Update CI workflow to use new gen command functionality with directory targeting
- Remove working-directory requirement by using positional arguments
- Add comprehensive documentation generation with multiple formats (md, html, json)
- Test single file targeting and recursive generation with themes
- Add artifact upload for generated documentation files
- Standardize license filename from LICENSE.md to LICENSE following GitHub conventions
- Clean up duplicate license files

The enhanced workflow demonstrates all new gen command features including
directory targeting, custom output filenames, multiple formats, and themes.

* fix: resolve all linting and EditorConfig violations

Fixed remaining code quality issues:
- Line length violation in TODO.md by breaking long summary
- Trailing whitespace removal from CI workflow, CLAUDE.md, and TODO.md
- Indentation consistency fixes in CI workflow YAML
- Security workflow cleanup for better formatting

All linters now pass:
- golangci-lint: 0 issues
- EditorConfig: No violations detected

Project maintains enterprise-grade code quality standards.

* refactor: optimize security workflow by removing Snyk and reducing duplication

Streamlined security scanning workflow:
- Remove Snyk job to eliminate redundancy with govulncheck and Trivy
- Add comprehensive coverage documentation explaining each tool's purpose
- Ensure consistent action version pinning across all jobs
- Maintain complete security protection with govulncheck, Trivy, gitleaks, and dependency-review

Benefits:
- Reduced execution time by ~2-3 minutes per workflow run
- Simplified secret management (no SNYK_TOKEN required)
- Lower complexity while maintaining enterprise-grade security coverage
- Better workflow maintainability with clear job documentation

Security coverage remains comprehensive with Go-specific vulnerability scanning,
multi-language dependency analysis, secrets detection, and PR-level dependency review.
2025-08-06 09:38:03 +03:00

54 lines
1.3 KiB
YAML

name: Composite Example Action
description: 'Test Composite Action for gh-action-readme dependency analysis'
inputs:
node-version:
description: Node.js version to use
required: false
default: '20'
working-directory:
description: Working directory
required: false
default: '.'
outputs:
build-result:
description: Build result status
value: ${{ steps.build.outputs.result }}
runs:
using: composite
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
token: ${{ github.token }}
- name: Setup Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: ${{ inputs.node-version }}
cache: 'npm'
- name: Install dependencies
shell: bash
run: |
cd ${{ inputs.working-directory }}
npm ci
- name: Run tests
shell: bash
run: |
npm test
echo "Tests completed successfully"
env:
NODE_ENV: test
- name: Build project
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
id: build
with:
node-version: ${{ inputs.node-version }}
branding:
icon: package
color: blue