Skip to content

Class: GhaWorkflowJob

A job under a workflow’s jobs key: steps that run on a runner, or a call to a reusable workflow.

URI: gha:WorkflowJob

 classDiagram
    class GhaWorkflowJob
    click GhaWorkflowJob href "../GhaWorkflowJob/"
      GhaWorkflowJob : calls
        
      GhaWorkflowJob : job_id
        
      GhaWorkflowJob : job_name
        
      GhaWorkflowJob : job_permissions
        
      GhaWorkflowJob : runner_environment
        
          
    
        
        
        GhaWorkflowJob --> "0..1" GhaRunnerEnvironment : runner_environment
        click GhaRunnerEnvironment href "../GhaRunnerEnvironment/"
    

        
      GhaWorkflowJob : runner_group
        
      GhaWorkflowJob : runs_on
        
      
Property Value
Class URI gha:WorkflowJob
Name Cardinality and Range Description Inheritance
job_id 1
GhaIdentifier
The job’s key under jobs direct
job_name 0..1
String
The job’s name, which GitHub shows and its check run takes; the check run t… direct
calls 0..1
String
The reusable workflow the job runs, its uses value: ` direct
runs_on *
String
The runner labels from the job’s runs-on: one label, a list, or the `labels… direct
runner_group 0..1
String
The runner group the job’s `runs-on direct
runner_environment 0..1
GhaRunnerEnvironment
Whether the job’s runner is hosted by GitHub or by the repository’s owner, as… direct
job_permissions *
GhaPermission
The access the job’s own permissions key gives its GITHUB_TOKEN, in place o… direct
used by used in type used
GhaWorkflow jobs range GhaWorkflowJob
GhaReusableWorkflow jobs range GhaWorkflowJob

Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'calls': {'value_presence': 'PRESENT'}} {'runs_on': {'value_presence': 'ABSENT'}}
Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'calls': {'value_presence': 'PRESENT'}} {'runner_group': {'value_presence': 'ABSENT'}}
Mapping Type Mapped Value
self gha:WorkflowJob
native gha:GhaWorkflowJob
name: GhaWorkflowJob
description: 'A job under a workflow''s `jobs` key: steps that run on a runner, or
a call to a reusable workflow.'
from_schema: https://w3id.org/lmodel/github-actions
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobs
attributes:
job_id:
name: job_id
description: The job's key under `jobs`.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
rank: 1000
domain_of:
- GhaWorkflowJob
range: gha_identifier
required: true
job_name:
name: job_name
description: The job's `name`, which GitHub shows and its check run takes; the
check run takes the job's id when it has none.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idname
rank: 1000
domain_of:
- GhaWorkflowJob
calls:
name: calls
description: 'The reusable workflow the job runs, its `uses` value: `./.github/workflows/<file>`
in the same repository, or `<owner>/<repo>/.github/workflows/<file>@<ref>`.'
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_iduses
rank: 1000
domain_of:
- GhaWorkflowJob
pattern: ^(.+\/)+(.+)\.(ya?ml)(@.+)?$
runs_on:
name: runs_on
description: 'The runner labels from the job''s `runs-on`: one label, a list,
or the `labels` of a group. A runner must carry every one.'
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idruns-on
rank: 1000
domain_of:
- GhaWorkflowJob
multivalued: true
runner_group:
name: runner_group
description: The runner group the job's `runs-on.group` names.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#choosing-runners-in-a-group
rank: 1000
domain_of:
- GhaWorkflowJob
runner_environment:
name: runner_environment
description: Whether the job's runner is hosted by GitHub or by the repository's
owner, as GitHub's build type records runner_environment for a run.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
rank: 1000
domain_of:
- GhaWorkflowJob
range: GhaRunnerEnvironment
job_permissions:
name: job_permissions
description: The access the job's own `permissions` key gives its GITHUB_TOKEN,
in place of the workflow's. A called workflow can lower its token's access,
never raise it.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idpermissions
rank: 1000
domain_of:
- GhaWorkflowJob
range: gha_permission
multivalued: true
class_uri: gha:WorkflowJob
rules:
- preconditions:
slot_conditions:
calls:
name: calls
value_presence: PRESENT
postconditions:
slot_conditions:
runs_on:
name: runs_on
value_presence: ABSENT
description: 'A job that calls a reusable workflow names no runner labels: a calling
job takes no `runs-on` key, and the called workflow''s jobs choose their own runners.'
- preconditions:
slot_conditions:
calls:
name: calls
value_presence: PRESENT
postconditions:
slot_conditions:
runner_group:
name: runner_group
value_presence: ABSENT
description: A job that calls a reusable workflow names no runner group.
name: GhaWorkflowJob
description: 'A job under a workflow''s `jobs` key: steps that run on a runner, or
a call to a reusable workflow.'
from_schema: https://w3id.org/lmodel/github-actions
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobs
attributes:
job_id:
name: job_id
description: The job's key under `jobs`.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: gha_identifier
required: true
job_name:
name: job_name
description: The job's `name`, which GitHub shows and its check run takes; the
check run takes the job's id when it has none.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idname
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: string
calls:
name: calls
description: 'The reusable workflow the job runs, its `uses` value: `./.github/workflows/<file>`
in the same repository, or `<owner>/<repo>/.github/workflows/<file>@<ref>`.'
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_iduses
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: string
pattern: ^(.+\/)+(.+)\.(ya?ml)(@.+)?$
runs_on:
name: runs_on
description: 'The runner labels from the job''s `runs-on`: one label, a list,
or the `labels` of a group. A runner must carry every one.'
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idruns-on
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: string
multivalued: true
runner_group:
name: runner_group
description: The runner group the job's `runs-on.group` names.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#choosing-runners-in-a-group
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: string
runner_environment:
name: runner_environment
description: Whether the job's runner is hosted by GitHub or by the repository's
owner, as GitHub's build type records runner_environment for a run.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: GhaRunnerEnvironment
job_permissions:
name: job_permissions
description: The access the job's own `permissions` key gives its GITHUB_TOKEN,
in place of the workflow's. A called workflow can lower its token's access,
never raise it.
from_schema: https://w3id.org/lmodel/github-actions/github_actions_workflow
see_also:
- https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idpermissions
rank: 1000
owner: GhaWorkflowJob
domain_of:
- GhaWorkflowJob
range: gha_permission
multivalued: true
class_uri: gha:WorkflowJob
rules:
- preconditions:
slot_conditions:
calls:
name: calls
value_presence: PRESENT
postconditions:
slot_conditions:
runs_on:
name: runs_on
value_presence: ABSENT
description: 'A job that calls a reusable workflow names no runner labels: a calling
job takes no `runs-on` key, and the called workflow''s jobs choose their own runners.'
- preconditions:
slot_conditions:
calls:
name: calls
value_presence: PRESENT
postconditions:
slot_conditions:
runner_group:
name: runner_group
value_presence: ABSENT
description: A job that calls a reusable workflow names no runner group.