Merge remote-tracking branch 'origin/main' into layout_max_height_calc #11262
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Push | |
on: push | |
jobs: | |
test: | |
name: Test and typecheck | |
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 (with cache) | |
uses: bahmutov/npm-install@v1 | |
- name: Test codebase | |
run: yarn test-ci | |
- name: Upload coverage | |
uses: codecov/codecov-action@v4 | |
- name: Typecheck codebase | |
run: yarn typecheck | |
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: Build only jbrowse-web and upload 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-) | |
storybook_lgv: | |
name: Build and deploy static linear genome view Storybook site to AWS 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 Storybook static site | |
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 Storybook for branch to S3 | |
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 | |
storybook_app: | |
name: Build and deploy static react app Storybook site to AWS 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 Storybook static site | |
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 Storybook for branch to S3 | |
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 | |
storybook_cgv: | |
name: Build and deploy static circular genome view Storybook site to AWS 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 Storybook static site | |
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 Storybook for branch to S3 | |
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 | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- 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: Lint codebase | |
run: yarn lint | |
formatchecks: | |
name: Format/spellcheck/docs | |
runs-on: ubuntu-latest | |
steps: | |
- 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 |