Skip to content

Commit c6eb55c

Browse files
authored
cci config - one build, one test (#4)
* cci config - one build, one test * correct resource class * pin orbs to aspect workflows
1 parent da5014d commit c6eb55c

File tree

1 file changed

+119
-17
lines changed

1 file changed

+119
-17
lines changed

.circleci/config.yml

Lines changed: 119 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,122 @@
1-
# .circleci/config.yaml
2-
# Using orbs for reusable CircleCI configuration
3-
41
version: 2.1
5-
6-
orbs:
7-
workflows: aspect-build/[email protected]
8-
92
workflows:
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

Comments
 (0)