Skip to content

Commit c1e61d2

Browse files
authored
chore: move CI to GHA CodeBuild Runners (#1422)
1 parent 4265768 commit c1e61d2

File tree

5 files changed

+5536
-18242
lines changed

5 files changed

+5536
-18242
lines changed

.github/workflows/ci.yml

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# This workflow performs tests in JavaScript.
2+
name: ESDK JavaScript CI Tests
3+
4+
on: [pull_request, workflow_call]
5+
6+
jobs:
7+
CI:
8+
strategy:
9+
matrix:
10+
node: [16, 18.3.0, 20.4.0]
11+
fail-fast: false
12+
runs-on: codebuild-AWS-ESDK-JS-Release-${{ github.run_id }}-${{ github.run_attempt }}-ubuntu-5.0-large
13+
permissions:
14+
id-token: write
15+
contents: read
16+
defaults:
17+
run:
18+
shell: bash
19+
steps:
20+
- uses: actions/checkout@v4
21+
with:
22+
submodules: true
23+
- uses: actions/setup-node@v4
24+
with:
25+
node-version: ${{matrix.node}}
26+
- name: Configure AWS Credentials for Tests
27+
uses: aws-actions/configure-aws-credentials@v4
28+
with:
29+
aws-region: us-west-2
30+
role-to-assume: arn:aws:iam::370957321024:role/GitHub-CI-MPL-Dafny-Role-us-west-2
31+
role-session-name: JavaScriptTests
32+
- name: Test Node ${{matrix.node}}
33+
env:
34+
NODE_OPTIONS: "--max-old-space-size=4096"
35+
run: |
36+
npm ci
37+
npm run build
38+
npm run coverage-node
39+
- name: Test compliance
40+
env:
41+
NODE_OPTIONS: "--max-old-space-size=4096"
42+
run: |
43+
npm run lint
44+
npm run test_conditions
45+
- name: Run Test Vectors Node ${{matrix.node}}
46+
env:
47+
NODE_OPTIONS: "--max-old-space-size=4096"
48+
NPM_CONFIG_UNSAFE_PERM: true
49+
PUBLISH_LOCAL: true
50+
run: |
51+
npm run verdaccio-publish
52+
npm run verdaccio-node-decrypt
53+
npm run verdaccio-node-encrypt
54+
- name: Run Test Vectors Browser node ${{matrix.node}}
55+
env:
56+
NODE_OPTIONS: "--max-old-space-size=4096"
57+
NPM_CONFIG_UNSAFE_PERM: true
58+
PUBLISH_LOCAL: true
59+
run: |
60+
npm run verdaccio-publish
61+
npm run verdaccio-browser-decrypt
62+
npm run verdaccio-browser-encrypt

.github/workflows/daily_ci.yml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# This workflow runs every weekday at 15:00 UTC (8AM PDT)
2+
name: Daily CI
3+
4+
on:
5+
schedule:
6+
- cron: "00 15 * * 1-5"
7+
8+
jobs:
9+
DAILY_CI:
10+
# Don't run the cron builds on forks
11+
if: github.event_name != 'schedule' || github.repository_owner == 'aws'
12+
uses: ./.github/workflows/ci.yml

modules/encrypt-node/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"@aws-crypto/material-management-node": "file:../material-management-node",
2121
"@aws-crypto/serialize": "file:../serialize",
2222
"@types/duplexify": "^3.6.0",
23-
"duplexify": "^4.1.1",
23+
"duplexify": "^4.1.3",
2424
"readable-stream": "^3.6.0",
2525
"tslib": "^2.2.0"
2626
},

modules/material-management/src/types.ts

+1
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ export interface AwsEsdkKeyObject {
112112
export(options?: { format: 'jwk' }): AwsEsdkJsonWebKey
113113
symmetricSize?: number
114114
type: AwsEsdkKeyObjectType
115+
equals(otherKeyObject: AwsEsdkKeyObject): boolean
115116
}
116117
export type AwsEsdkCreateSecretKey = (key: Uint8Array) => AwsEsdkKeyObject
117118

0 commit comments

Comments
 (0)