App-GHGen
view release on metacpan or search on metacpan
ghgen generate --auto
Detection looks for:
- **Perl**: cpanfile, dist.ini, Makefile.PL, Build.PL, lib/\*.pm
- **Node.js**: package.json, package-lock.json, yarn.lock
- **Python**: requirements.txt, setup.py, pyproject.toml
- **Rust**: Cargo.toml, Cargo.lock
- **Go**: go.mod, go.sum
- **Ruby**: Gemfile, Rakefile
- **Docker**: Dockerfile, docker-compose.yml
If multiple types are detected, it shows alternatives:
â Detected project type: PERL
Evidence: cpanfile, lib, t
Other possibilities:
⢠docker (confidence: 65%)
Generate PERL workflow? [Y/n]:
## Specify Project Type
Generate for a specific language:
ghgen generate --type=perl
ghgen generate --type=node
ghgen generate --type=python
ghgen generate --type=rust
ghgen generate --type=go
ghgen generate --type=ruby
ghgen generate --type=docker
ghgen generate --type=static
## Interactive Mode
Choose from a menu of available types:
ghgen generate --interactive
GitHub Actions Workflow Generator
==================================================
Select a project type:
1. Node.js/npm
2. Python
3. Rust
4. Go
5. Ruby
6. Perl
7. Docker
8. Static site (GitHub Pages)
Enter number (1-8):
## Interactive Customization
Customize workflows with guided prompts:
ghgen generate --type=perl --customize
For Perl, you'll be asked:
- **Perl versions to test** - Select from 5.22 through 5.40 (multi-select with defaults)
- **Operating systems** - Ubuntu, macOS, Windows (multi-select)
- **Enable Perl::Critic** - Code quality analysis (yes/no)
- **Enable Devel::Cover** - Test coverage (yes/no)
- **Branch configuration** - Which branches to run on
Example session:
=== Workflow Customization: PERL ===
Perl Versions to Test:
Which Perl versions?
(Enter numbers separated by commas, or 'all')
â 1. 5.40
â 2. 5.38
â 3. 5.36
4. 5.34
5. 5.32
Enter choices [1,2,3]: 1,2,3
Operating Systems:
Which operating systems?
â 1. ubuntu-latest
â 2. macos-latest
â 3. windows-latest
Enter choices [1,2,3]: 1,2
Enable Perl::Critic? [Y/n]: y
Enable test coverage? [Y/n]: y
Each language has its own customization options appropriate to its ecosystem.
## List Available Types
See all supported project types:
ghgen generate --list
Available workflow templates:
node - Node.js/npm projects with testing and linting
python - Python projects with pytest and coverage
rust - Rust projects with cargo, clippy, and formatting
go - Go projects with testing and race detection
ruby - Ruby projects with bundler and rake
perl - Perl projects with cpanm, prove, and coverage
docker - Docker image build and push workflow
static - Static site deployment to GitHub Pages
# WORKFLOW ANALYSIS
## Basic Analysis
( run in 0.941 second using v1.01-cache-2.11-cpan-6aa56a78535 )