Skip to content

Instantly share code, notes, and snippets.

@alexeagle
Created October 27, 2022 14:19
Show Gist options
  • Save alexeagle/fa5185019ff99895d8bf3e6519495d29 to your computer and use it in GitHub Desktop.
Save alexeagle/fa5185019ff99895d8bf3e6519495d29 to your computer and use it in GitHub Desktop.

Aspect Workflows Configuration

Title: Aspect Workflows Configuration

Type object
Required No
Additional properties [Not allowed]

Description: The configuration schema for Aspect Workflows

Property Pattern Type Deprecated Definition Title/Description
- __path No string No - -
- bazel No string No - The binary name to be invoked when invoking 'bazel'
- env No object No In A set of environment variables that are set of each task. Can be overridden at the task level
- bazel_version No string No - The version of bazel that is used for each task. Sets the USE_BAZEL_VERSION environment variable
- workspaces No array No - List of (nested) workspaces to run tasks, creating a matrix for each task. The properties in the task in the workspace list override those given in tasks at the root. If no tasks are listed (just the path to the nested workspace), then no overrides will take place
+ tasks No object No Same as workspaces_items_anyOf_i1_pattern1 The tasks that Aspect Workflows will perform for a given run
- notifications No object No In The notifications that will be issued on build pass/fail events
- warming No object No In Enable warming an supply any necessary config

1. Property Aspect Workflows Configuration > __path

Type string
Required No

2. Property Aspect Workflows Configuration > bazel

Type string
Required No
Default "bazel"

Description: The binary name to be invoked when invoking 'bazel'

3. Property Aspect Workflows Configuration > env

Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: A set of environment variables that are set of each task. Can be overridden at the task level

4. Property Aspect Workflows Configuration > bazel_version

Type string
Required No

Description: The version of bazel that is used for each task. Sets the USE_BAZEL_VERSION environment variable

5. Property Aspect Workflows Configuration > workspaces

Type array
Required No

Description: List of (nested) workspaces to run tasks, creating a matrix for each task. The properties in the task in the workspace list override those given in tasks at the root. If no tasks are listed (just the path to the nested workspace), then no overrides will take place

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
workspaces items -

5.1. Aspect Workflows Configuration > workspaces > workspaces items

Type combining
Required No
Additional properties [Any type: allowed]
Any of(Option)
item 0
item 1

5.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 0

Type string
Required No

5.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1

Type object
Required No
Additional properties [Any type: allowed]
Property Pattern Type Deprecated Definition Title/Description
- .+ Yes object No In #/definitions/Tasks -
5.1.2.1. Pattern Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > Tasks

All properties whose name matches the regular expression .+ (Test) must respect the following conditions

Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/Tasks
Property Pattern Type Deprecated Definition Title/Description
- group No object No - Properties associated to this workspace level of tasks
- buildifier No object No In Adds buildifier checks and linting to the build
- build No object No Same as workspaces_items_anyOf_i1_pattern1_buildifier_allOf_i0 Adds an invocation of 'bazel build' with the associated properties
- test No object No In Adds an invocation of 'bazel test' with the associated properties
- warming No object No In Properties associated with warming
5.1.2.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > group
Type object
Required No
Additional properties [Not allowed]

Description: Properties associated to this workspace level of tasks

Property Pattern Type Deprecated Definition Title/Description
- icon No string No - The icon to assign the group
- label No string No - The label to give the group. Defaults to the workspace name or 'root' for the root workspace
5.1.2.1.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > group > icon
Type string
Required No

Description: The icon to assign the group

5.1.2.1.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > group > label
Type string
Required No

Description: The label to give the group. Defaults to the workspace name or 'root' for the root workspace

5.1.2.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier
Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Adds buildifier checks and linting to the build

All of(Requirement)
BazelTask
_BazelRunTask
5.1.2.1.2.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > BazelTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/BazelTask
All of(Requirement)
_BazelTask
Task
5.1.2.1.2.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > _BazelTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/_BazelTask
Property Pattern Type Deprecated Definition Title/Description
- _bazel No string No - -
- use_unreleased_flags No boolean No - If true, use a set of experimental flags that may improve performance but are only available on unreleased versions of bazel
- archive_execution_log No boolean No - if true, generate and capture the execution log during this invocation
- flags No array of string No - List of Bazel flags to be applied to the invocation
5.1.2.1.2.1.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 0 > _bazel
Type string
Required No
Default "bazel"
5.1.2.1.2.1.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 0 > use_unreleased_flags
Type boolean
Required No
Default false

Description: If true, use a set of experimental flags that may improve performance but are only available on unreleased versions of bazel

5.1.2.1.2.1.1.3. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 0 > archive_execution_log
Type boolean
Required No
Default true

Description: if true, generate and capture the execution log during this invocation

5.1.2.1.2.1.1.4. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 0 > flags
Type array of string
Required No

Description: List of Bazel flags to be applied to the invocation

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
flags items -
5.1.2.1.2.1.1.4.1. Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 0 > flags > flags items
Type string
Required No
5.1.2.1.2.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > Task
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/Task
Property Pattern Type Deprecated Definition Title/Description
- _type No string No - -
- _workspace No string No - -
- _overrides No boolean No - -
- without No boolean No - Setting this will exclude this task from being created when using additional workspace overrides
- icon No string No - The emoji icon used in the tasks label
- env No object No Same as env Environment variables to set on this task. Overrides those set globally
- cci No object No In Settings specific to CircleCI for the given task
5.1.2.1.2.1.2.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > _type
Type string
Required No
5.1.2.1.2.1.2.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > _workspace
Type string
Required No
5.1.2.1.2.1.2.3. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > _overrides
Type boolean
Required No
5.1.2.1.2.1.2.4. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > without
Type boolean
Required No
Default false

Description: Setting this will exclude this task from being created when using additional workspace overrides

5.1.2.1.2.1.2.5. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > icon
Type string
Required No

Description: The emoji icon used in the tasks label

5.1.2.1.2.1.2.6. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > env
Type object
Required No
Additional properties [Any type: allowed]
Same definition as env

Description: Environment variables to set on this task. Overrides those set globally

5.1.2.1.2.1.2.7. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > cci
Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Settings specific to CircleCI for the given task

Property Pattern Type Deprecated Definition Title/Description
- contexts No array of string No - List of contexts to pass to CircleCI
5.1.2.1.2.1.2.7.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > cci > contexts
Type array of string
Required No

Description: List of contexts to pass to CircleCI

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
contexts items -
5.1.2.1.2.1.2.7.1.1. Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 0 > allOf > item 1 > cci > contexts > contexts items
Type string
Required No
5.1.2.1.2.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > _BazelRunTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/_BazelRunTask
Property Pattern Type Deprecated Definition Title/Description
- target No string No - The bazel target to run for this task
5.1.2.1.2.2.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > buildifier > allOf > item 1 > target
Type string
Required No

Description: The bazel target to run for this task

5.1.2.1.3. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > build
Type object
Required No
Additional properties [Any type: allowed]
Same definition as workspaces_items_anyOf_i1_pattern1_buildifier_allOf_i0

Description: Adds an invocation of 'bazel build' with the associated properties

5.1.2.1.4. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test
Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Adds an invocation of 'bazel test' with the associated properties

All of(Requirement)
BazelBuildTask
_BazelTestTask
5.1.2.1.4.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > BazelBuildTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/BazelBuildTask

Description: Adds an invocation of 'bazel build' with the associated properties

All of(Requirement)
BazelTask
_BazelBuildTask
5.1.2.1.4.1.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > BazelTask
Type object
Required No
Additional properties [Any type: allowed]
Same definition as workspaces_items_anyOf_i1_pattern1_buildifier_allOf_i0
5.1.2.1.4.1.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > _BazelBuildTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/_BazelBuildTask
Property Pattern Type Deprecated Definition Title/Description
- artifact_paths No array of string No - List of paths or glob pattens that are used to save artifacts
- targets No array of string No - List of Bazel targets that will be invoked as part of this invocation
5.1.2.1.4.1.2.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > item 1 > artifact_paths
Type array of string
Required No

Description: List of paths or glob pattens that are used to save artifacts

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
artifact_paths items -
5.1.2.1.4.1.2.1.1. Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > item 1 > artifact_paths > artifact_paths items
Type string
Required No
5.1.2.1.4.1.2.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > item 1 > targets
Type array of string
Required No

Description: List of Bazel targets that will be invoked as part of this invocation

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
targets items -
5.1.2.1.4.1.2.2.1. Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 0 > allOf > item 1 > targets > targets items
Type string
Required No
5.1.2.1.4.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > _BazelTestTask
Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/_BazelTestTask
Property Pattern Type Deprecated Definition Title/Description
- archive_test_logs No boolean No - If true, archive the all the test.xml and test.log files
- collect_coverage No boolean No - If true, coverage is collected by bazel
- filters No array of string No - Test target tag filters to be applied
5.1.2.1.4.2.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 1 > archive_test_logs
Type boolean
Required No
Default true

Description: If true, archive the all the test.xml and test.log files

5.1.2.1.4.2.2. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 1 > collect_coverage
Type boolean
Required No
Default false

Description: If true, coverage is collected by bazel

5.1.2.1.4.2.3. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 1 > filters
Type array of string
Required No

Description: Test target tag filters to be applied

Array restrictions
Min items N/A
Max items N/A
Items unicity False
Additional items False
Tuple validation See below
Each item of this array must be Description
filters items -
5.1.2.1.4.2.3.1. Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > test > allOf > item 1 > filters > filters items
Type string
Required No
5.1.2.1.5. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > warming
Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Properties associated with warming

Property Pattern Type Deprecated Definition Title/Description
- without No boolean No - Setting this will exclude this workspace from warming
5.1.2.1.5.1. Property Aspect Workflows Configuration > workspaces > workspaces items > anyOf > item 1 > .+ > warming > without
Type boolean
Required No
Default false

Description: Setting this will exclude this workspace from warming

6. Property Aspect Workflows Configuration > tasks

Type object
Required Yes
Additional properties [Any type: allowed]
Same definition as workspaces_items_anyOf_i1_pattern1

Description: The tasks that Aspect Workflows will perform for a given run

7. Property Aspect Workflows Configuration > notifications

Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: The notifications that will be issued on build pass/fail events

Property Pattern Type Deprecated Definition Title/Description
- slack No object No In Enable slack notifications. Defaults will be used but can be overridden

7.1. Property Aspect Workflows Configuration > notifications > slack

Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Enable slack notifications. Defaults will be used but can be overridden

All of(Requirement)
_SlackNotification
Notification

7.1.1. Property Aspect Workflows Configuration > notifications > slack > allOf > _SlackNotification

Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/_SlackNotification
Property Pattern Type Deprecated Definition Title/Description
- channel No string No - -
- cci No object No In -
7.1.1.1. Property Aspect Workflows Configuration > notifications > slack > allOf > item 0 > channel
Type string
Required No
7.1.1.2. Property Aspect Workflows Configuration > notifications > slack > allOf > item 0 > cci
Type object
Required No
Additional properties [Any type: allowed]
Defined in

7.1.2. Property Aspect Workflows Configuration > notifications > slack > allOf > Notification

Type object
Required No
Additional properties [Any type: allowed]
Defined in #/definitions/Notification
Property Pattern Type Deprecated Definition Title/Description
- branch_pattern No string No - -
7.1.2.1. Property Aspect Workflows Configuration > notifications > slack > allOf > item 1 > branch_pattern
Type string
Required No

8. Property Aspect Workflows Configuration > warming

Type object
Required No
Additional properties [Any type: allowed]
Defined in

Description: Enable warming an supply any necessary config


Generated using json-schema-for-humans

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment