Skip to main content
Version: Next

Parse Project Config Workflow

View Source

Parse and validate project configuration from intent.yaml file.

Overviewโ€‹

This workflow parses the enhanced intent.yaml configuration file, validates its structure, and provides structured outputs for all project settings including Docker, Git, validation, and documentation configuration.

When to Useโ€‹

  • โœ… You need to parse intent.yaml configuration
  • โœ… You want centralized project configuration
  • โœ… You need configuration validation
  • โœ… You're using the release system

Inputsโ€‹

InputTypeDefaultDescription
config_pathstring'.github/tag_and_release/intent.yaml'Path to config file

Outputsโ€‹

OutputDescription
project_nameProject name
package_namePython package name
base_branchBase branch name
git_commit_nameGit commit author name
git_commit_emailGit commit author email
docker_registry_dockerhubDocker Hub registry URL
docker_registry_ghcrGHCR registry URL
docker_health_check_pathHealth check endpoint
docker_health_check_portHealth check port
docker_run_optionsDocker run options
validation_versionValidation version
validation_test_versionTest version
docs_readme_pathREADME path
docs_installation_pathInstallation docs path
docs_ci_cd_pathCI/CD docs path
docs_preview_branchPreview branch name

Usage Examplesโ€‹

Basic Usageโ€‹

jobs:
config:
uses: Chisanan232/GitHub-Action_Reusable_Workflows-Python/.github/workflows/rw_parse_project_config.yaml@master

use-config:
needs: config
runs-on: ubuntu-latest
steps:
- name: Use config
run: |
echo "Project: ${{ needs.config.outputs.project_name }}"
echo "Package: ${{ needs.config.outputs.package_name }}"

In Release Workflowโ€‹

jobs:
config:
uses: Chisanan232/GitHub-Action_Reusable_Workflows-Python/.github/workflows/rw_parse_project_config.yaml@master

release:
needs: config
runs-on: ubuntu-latest
steps:
- name: Configure Git
run: |
git config user.name "${{ needs.config.outputs.git_commit_name }}"
git config user.email "${{ needs.config.outputs.git_commit_email }}"

Configuration Fileโ€‹

See Release Intent Configuration for complete configuration reference.