Skip to content

Merge origin/main #11780

Merge origin/main

Merge origin/main #11780

Workflow file for this run

name: Push
on: push
jobs:
buildwebsite:
name: Build website
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install website deps (with cache)
uses: bahmutov/npm-install@v1
with:
working-directory: website
- name: Build website
run: |
cd website/
yarn build
mkdir testing
mv build testing/jb2
- name: Check website links
uses: untitaker/[email protected]
with:
args: website/testing/ --check-anchors
buildwholerepo:
name: Build whole repo
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install deps (with cache)
uses: bahmutov/npm-install@v1
- name: Build codebase
run: yarn build
- name: Test build
run: BUILT_TESTS=1 yarn built-test-ci
- name: Test embedded lgv
run: |
yarn
yarn build
yarn test:e2e
working-directory: component_tests/lgv
- name: Test embedded cgv
run: |
yarn
yarn build
yarn test:e2e
working-directory: component_tests/cgv
- name: Test embedded react-app
run: |
yarn
yarn build
yarn test:e2e
working-directory: component_tests/react-app
buildjbrowseweb:
name: Deploy jbrowse-web and storybooks to S3
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install deps (with cache)
uses: bahmutov/npm-install@v1
- name: Build project
run: |
echo $RELEASE_VERSION
cd products/jbrowse-web/
NODE_OPTIONS='--max-old-space-size=6500' yarn build
cd ../../
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Copy branch build to S3
run: |
cd products/jbrowse-web/build && zip -r "jbrowse-web-$(echo ${{github.ref}} | cut -d '/' -f3-).zip" . && cd -
cp products/jbrowse-web/build/test_data/config.json products/jbrowse-web/build/config.json
aws s3 sync --delete products/jbrowse-web/build s3://jbrowse.org/code/jb2/$(echo ${{github.ref}} | cut -d "/" -f3-)
aws cloudfront create-invalidation --distribution-id E13LGELJOT4GQO --paths "/code/jb2/$(echo ${{github.ref}} | cut -d "/" -f3-)/*"
- name: Build LGV
run: |
yarn storybook:build
working-directory: products/jbrowse-react-linear-genome-view
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Deploy LGV
run: |
pwd
aws s3 sync --delete storybook-static s3://jbrowse.org/storybook/lgv/$(echo ${{github.ref}} | cut -d "/" -f3-)
aws cloudfront create-invalidation --distribution-id E13LGELJOT4GQO --paths "/storybook/lgv/$(echo ${{github.ref}} | cut -d "/" -f3-)/*"
working-directory: products/jbrowse-react-linear-genome-view
- name: Build React App
run: |
yarn storybook:build
working-directory: products/jbrowse-react-app
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Deploy React App
run: |
pwd
aws s3 sync --delete storybook-static s3://jbrowse.org/storybook/app/$(echo ${{github.ref}} | cut -d "/" -f3-)
aws cloudfront create-invalidation --distribution-id E13LGELJOT4GQO --paths "/storybook/app/$(echo ${{github.ref}} | cut -d "/" -f3-)/*"
working-directory: products/jbrowse-react-app
- name: Build CGV
run: |
yarn storybook:build
working-directory: products/jbrowse-react-circular-genome-view
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Deploy CGV
run: |
pwd
aws s3 sync --delete storybook-static s3://jbrowse.org/storybook/cgv/$(echo ${{github.ref}} | cut -d "/" -f3-)
aws cloudfront create-invalidation --distribution-id E13LGELJOT4GQO --paths "/storybook/cgv/$(echo ${{github.ref}} | cut -d "/" -f3-)/*"
working-directory: products/jbrowse-react-circular-genome-view
formatchecks:
name: Lint, typecheck, test
runs-on: ubuntu-latest
steps:
- run: sudo apt-get -y install tabix
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install deps and build (with cache)
uses: bahmutov/npm-install@v1
- name: Check codebase format
run: yarn prettier --check .
- name: Check autogen docs
run: yarn statedocs && yarn configdocs
- name: Spellcheck
uses: crate-ci/typos@master
- name: Lint codebase
run: yarn lint
- name: Test codebase
run: yarn test-ci
- name: Upload coverage
uses: codecov/codecov-action@v4
- name: Typecheck codebase
run: yarn typecheck