@@ -62,6 +62,9 @@ class Templates:
6262 TEMPLATE_ENV_SECRET = """\
6363 {SECRET_NAME}: ${{{{{{{{ secrets.{SECRET_NAME} }}}}}}}}
6464"""
65+ TEMPLATE_ENV_GH_VAR = """\
66+ {VAR_NAME}: ${{{{{{{{ vars.{VAR_NAME} }}}}}}}}
67+ """
6568
6669 TEMPLATE_SCHEDULE = """\
6770 # generated by praktika
@@ -166,6 +169,13 @@ class Templates:
166169 )\
167170 """
168171
172+ TEMPLATE_SETUP_ENV_VARS = """\
173+ export {VAR_NAME}=$(cat<<'EOF'
174+ ${{{{ vars.{VAR_NAME} }}}}
175+ EOF
176+ )\
177+ """
178+
169179 TEMPLATE_SETUP_ENVS_INPUTS = """\
170180 cat > {WORKFLOW_INPUTS_FILE} << 'EOF'
171181 ${{{{ toJson(github.event.inputs) }}}}
@@ -313,6 +323,10 @@ def generate(self):
313323 SECRET_NAME = secret
314324 )
315325 )
326+ for var in self .workflow_config .variable_names_gh :
327+ secrets_envs .append (
328+ YamlGenerator .Templates .TEMPLATE_SETUP_ENV_VARS .format (VAR_NAME = var )
329+ )
316330 if self .workflow_config .event == Workflow .Event .DISPATCH :
317331 secrets_envs .append (
318332 YamlGenerator .Templates .TEMPLATE_SETUP_ENVS_INPUTS .format (
@@ -419,12 +433,17 @@ def generate(self):
419433 ), f"Invalid or Not implemented event [{ self .workflow_config .event } ]"
420434
421435 SECRET_ENVS = ""
436+ GH_VAR_ENVS = ""
422437 for secret in self .parser .config .secrets :
423- if secret .is_gh ():
438+ if secret .is_gh_secret ():
424439 SECRET_ENVS += YamlGenerator .Templates .TEMPLATE_ENV_SECRET .format (
425440 SECRET_NAME = secret .name
426441 )
427- format_kwargs ["ENV_SECRETS" ] = SECRET_ENVS
442+ elif secret .is_gh_var ():
443+ GH_VAR_ENVS += YamlGenerator .Templates .TEMPLATE_ENV_GH_VAR .format (
444+ VAR_NAME = secret .name
445+ )
446+ format_kwargs ["ENV_SECRETS" ] = GH_VAR_ENVS + SECRET_ENVS
428447
429448 template_1 = base_template .strip ().format (
430449 NAME = self .workflow_config .name ,
0 commit comments