1- # .circleci/config.yaml
2- # Using orbs for reusable CircleCI configuration
3-
41version : 2.1
5-
6- orbs :
7- workflows :
aspect-build/[email protected] 8-
92workflows :
10- bazel_ci_workflow :
3+ aspect-workflows :
114 jobs :
12- - workflows/aspect-workflows :
13-
14- resource-class : writechoiceorg/aspect-default
15- filters :
16- branches :
17- only :
18- - main
19- tags :
20- ignore : /.*/
5+ - aw-build :
6+ workspace : .
7+ context : []
8+ - aw-test :
9+ workspace : .
10+ context : []
11+ jobs :
12+ aw-build :
13+ machine : true
14+ resource_class : writechoiceorg/aspect-default
15+ working_directory : /mnt/ephemeral/workdir
16+ steps :
17+ - run :
18+ name : Workflows environment
19+ command : /etc/aspect/workflows/bin/configure_workflows_env
20+ - checkout
21+ - run :
22+ name : Prepare archive directories
23+ command : rm -rf /workflows/artifacts /workflows/testlogs
24+ - run :
25+ name : Agent health check
26+ command : /etc/aspect/workflows/bin/agent_health_check
27+ no_output_timeout : 180m
28+ - run :
29+ name : Build
30+ command : rosetta run build --workspace << parameters.workspace >>
31+ no_output_timeout : 180m
32+ - when :
33+ condition :
34+ and :
35+ - <<parameters.delivery_manifest>>
36+ - or :
37+ - matches :
38+ pattern : ^main$
39+ value : << pipeline.git.branch >>
40+ steps :
41+ - run :
42+ name : Delivery manifest
43+ command : rosetta run delivery_manifest --workspace << parameters.workspace >>
44+ --data TARGETS_SOURCE=build
45+ no_output_timeout : 180m
46+ - store_artifacts :
47+ path : /workflows/testlogs
48+ - store_artifacts :
49+ path : /workflows/artifacts
50+ - run :
51+ name : Finalization
52+ command : rosetta run finalization
53+ no_output_timeout : 10m
54+ when : always
55+ parameters : &a1
56+ workspace :
57+ type : string
58+ delivery_manifest :
59+ type : boolean
60+ default : true
61+ environment :
62+ ASPECT_WORKFLOWS_CIRCLE_PIPELINE_NUMBER : << pipeline.number >>
63+ ASPECT_WORKFLOWS_CIRCLE_PIPELINE_PROJECT_TYPE : << pipeline.project.type >>
64+ ASPECT_WORKFLOWS_CIRCLE_WORKFLOW_BASE_NAME : aspect-workflows
65+ ASPECT_WORKFLOWS_CONFIG : .aspect/workflows/config.yaml
66+ ASPECT_WORKFLOWS_WORKSPACE : << parameters.workspace >>
67+ XDG_CACHE_HOME : /mnt/ephemeral/caches
68+ aw-test :
69+ machine : true
70+ resource_class : writechoiceorg/aspect-default
71+ working_directory : /mnt/ephemeral/workdir
72+ steps :
73+ - run :
74+ name : Workflows environment
75+ command : /etc/aspect/workflows/bin/configure_workflows_env
76+ - checkout
77+ - run :
78+ name : Prepare archive directories
79+ command : rm -rf /workflows/artifacts /workflows/testlogs
80+ - run :
81+ name : Agent health check
82+ command : /etc/aspect/workflows/bin/agent_health_check
83+ no_output_timeout : 180m
84+ - run :
85+ name : Test
86+ command : rosetta run test --workspace << parameters.workspace >>
87+ no_output_timeout : 180m
88+ - store_test_results :
89+ path : /workflows/testlogs
90+ - when :
91+ condition :
92+ and :
93+ - <<parameters.delivery_manifest>>
94+ - or :
95+ - matches :
96+ pattern : ^main$
97+ value : << pipeline.git.branch >>
98+ steps :
99+ - run :
100+ name : Delivery manifest
101+ command : rosetta run delivery_manifest --workspace << parameters.workspace >>
102+ --data TARGETS_SOURCE=test
103+ no_output_timeout : 180m
104+ - store_artifacts :
105+ path : /workflows/testlogs
106+ - store_artifacts :
107+ path : /workflows/artifacts
108+ - run :
109+ name : Finalization
110+ command : rosetta run finalization
111+ no_output_timeout : 10m
112+ when : always
113+ parameters : *a1
114+ environment :
115+ ASPECT_WORKFLOWS_CIRCLE_PIPELINE_NUMBER : << pipeline.number >>
116+ ASPECT_WORKFLOWS_CIRCLE_PIPELINE_PROJECT_TYPE : << pipeline.project.type >>
117+ ASPECT_WORKFLOWS_CIRCLE_WORKFLOW_BASE_NAME : aspect-workflows
118+ ASPECT_WORKFLOWS_CONFIG : .aspect/workflows/config.yaml
119+ ASPECT_WORKFLOWS_WORKSPACE : << parameters.workspace >>
120+ XDG_CACHE_HOME : /mnt/ephemeral/caches
121+ orbs :
122+ workflows :
aspect-build/[email protected]
0 commit comments