Misc #11719
Workflow file for this run
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: | |
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 |