Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/actions/composite/setupNode/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ description: Set up Node

inputs:
IS_HYBRID_BUILD:
description: "Indicates if node is set up for hybrid app"
description: 'Indicates if node is set up for hybrid app'
required: false
default: 'false'

Expand Down Expand Up @@ -35,7 +35,7 @@ runs:
key: ${{format('{0}-node-modules-{1}', runner.os, hashFiles('package-lock.json', 'patches/**'))}}

- name: Install root project node packages
if: steps.cache-node-modules.outputs.cache-hit != 'true'
if: steps.cache-node-modules.outputs.cache-hit != 'true'
uses: nick-fields/retry@3f757583fb1b1f940bc8ef4bf4734c8dc02a5847
with:
timeout_minutes: 30
Expand Down
4 changes: 2 additions & 2 deletions .github/actions/javascript/requireTests/action.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: 'Require Tests'
description: 'Checks that PRs modifying source files in lib/ include corresponding test changes.'
runs:
using: 'node24'
main: './index.js'
using: 'node24'
main: './index.js'
4 changes: 2 additions & 2 deletions .github/actions/javascript/validatePRChecklist/action.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: 'Validate PR Checklist'
description: 'Validates that the PR description has a completed checklist and filled-in sections.'
runs:
using: 'node24'
main: './index.js'
using: 'node24'
main: './index.js'
22 changes: 11 additions & 11 deletions .github/actions/javascript/validateReassureOutput/action.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: 'Validate Regression Test Output'
description: 'Validates the output of regression tests and determines if a test action should fail.'
inputs:
ALLOWED_DURATION_DEVIATION:
description: Allowable deviation in milliseconds for the mean duration in regression test results.
required: true
ALLOWED_RELATIVE_DURATION_DEVIATION:
description: Allowable percentage deviation for the mean duration in regression test results.
required: true
IS_VALIDATING_STABILITY:
description: Whether the workflow is validating a Reassure stability check or not.
required: true
ALLOWED_DURATION_DEVIATION:
description: Allowable deviation in milliseconds for the mean duration in regression test results.
required: true
ALLOWED_RELATIVE_DURATION_DEVIATION:
description: Allowable percentage deviation for the mean duration in regression test results.
required: true
IS_VALIDATING_STABILITY:
description: Whether the workflow is validating a Reassure stability check or not.
required: true
runs:
using: 'node24'
main: './index.js'
using: 'node24'
main: './index.js'
16 changes: 8 additions & 8 deletions .github/workflows/cla.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
name: CLA Assistant

on:
issue_comment:
types: [created]
pull_request_target:
types: [opened, synchronize]
issue_comment:
types: [created]
pull_request_target:
types: [opened, synchronize]

jobs:
CLA:
cache-mode: read
uses: Expensify/GitHub-Actions/.github/workflows/cla.yml@main
secrets: inherit
CLA:
cache-mode: read
uses: Expensify/GitHub-Actions/.github/workflows/cla.yml@main
secrets: inherit
52 changes: 26 additions & 26 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,35 +1,35 @@
name: Lint JavaScript

on:
pull_request:
types: [opened, synchronize]
pull_request:
types: [opened, synchronize]

jobs:
lint:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
lint:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493

- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: ".nvmrc"
cache: npm
cache-dependency-path: package-lock.json
- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: '.nvmrc'
cache: npm
cache-dependency-path: package-lock.json

- run: npm ci
- run: npm ci

- run: npm run lint
env:
CI: true
- run: npm run lint
env:
CI: true

- name: Verify there's no Prettier diff
run: |
npm run prettier -- --loglevel silent
if ! git diff --name-only --exit-code; then
# shellcheck disable=SC2016
echo 'Error: Prettier diff detected! Please run `npm run prettier` and commit the changes.'
exit 1
fi
- name: Verify there's no Oxfmt diff
run: |
npm run fmt
if ! git diff --name-only --exit-code; then
# shellcheck disable=SC2016
echo 'Error: Oxfmt diff detected! Please run `npm run fmt` and commit the changes.'
exit 1
fi
26 changes: 13 additions & 13 deletions .github/workflows/pr-checklist.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
name: PR Checklist Validation

on:
pull_request:
types: [opened, synchronize, edited, reopened, ready_for_review]
pull_request:
types: [opened, synchronize, edited, reopened, ready_for_review]

permissions:
pull-requests: read
pull-requests: read

concurrency:
group: pr-checklist-${{ github.event.pull_request.number }}
cancel-in-progress: true
group: pr-checklist-${{ github.event.pull_request.number }}
cancel-in-progress: true

jobs:
validate-checklist:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
validate-checklist:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493

- name: Validate PR checklist and sections
uses: ./.github/actions/javascript/validatePRChecklist
- name: Validate PR checklist and sections
uses: ./.github/actions/javascript/validatePRChecklist
18 changes: 9 additions & 9 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
name: Publish package to npmjs

on:
push:
branches: [main]
push:
branches: [main]

permissions:
# Required for OIDC: https://docs.npmjs.com/trusted-publishers
Expand All @@ -14,10 +14,10 @@ permissions:
concurrency: ${{ github.workflow }}

jobs:
publish:
# os-botify[bot] will update the version on `main`, so this check is important to prevent an infinite loop
if: ${{ github.actor != 'os-botify[bot]' }}
uses: Expensify/GitHub-Actions/.github/workflows/npmPublish.yml@main
secrets: inherit
with:
should_run_build: true
publish:
# os-botify[bot] will update the version on `main`, so this check is important to prevent an infinite loop
if: ${{ github.actor != 'os-botify[bot]' }}
uses: Expensify/GitHub-Actions/.github/workflows/npmPublish.yml@main
secrets: inherit
with:
should_run_build: true
30 changes: 15 additions & 15 deletions .github/workflows/require-tests.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
name: Require Tests

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
pull_request:
types: [opened, synchronize, reopened, ready_for_review]

permissions:
pull-requests: read
pull-requests: read

concurrency:
group: require-tests-${{ github.event.pull_request.number }}
cancel-in-progress: true
group: require-tests-${{ github.event.pull_request.number }}
cancel-in-progress: true

jobs:
require-tests:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
require-tests:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493

- name: Check for test file changes
uses: ./.github/actions/javascript/requireTests
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Check for test file changes
uses: ./.github/actions/javascript/requireTests
env:
GITHUB_TOKEN: ${{ github.token }}
48 changes: 24 additions & 24 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,34 @@
name: Test JavaScript

on:
pull_request:
types: [opened, synchronize]
pull_request:
types: [opened, synchronize]

jobs:
test:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
test:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493

# 4.3.0
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
# 4.3.0
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-

- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: ".nvmrc"
- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: '.nvmrc'

- run: npm ci
- run: npm ci

- run: npm run test
env:
CI: true
- run: npm run test
env:
CI: true

- run: npm run test:types
- run: npm run test:types
38 changes: 19 additions & 19 deletions .github/workflows/typecheck.yml
Original file line number Diff line number Diff line change
@@ -1,27 +1,27 @@
name: TypeScript Checks

on:
pull_request:
types: [opened, synchronize]
pull_request:
types: [opened, synchronize]

jobs:
typecheck:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493
typecheck:
runs-on: ubuntu-latest
steps:
# v5.0.0
- uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493

- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: ".nvmrc"
cache: npm
cache-dependency-path: package-lock.json
- name: Setup Node
# v4
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e
with:
node-version-file: '.nvmrc'
cache: npm
cache-dependency-path: package-lock.json

- run: npm ci
- run: npm ci

- name: Type check with TypeScript
run: npm run typecheck
env:
CI: true
- name: Type check with TypeScript
run: npm run typecheck
env:
CI: true
Loading
Loading