feat(listitembase): dynamic list support #2185
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: Pull Request CI | |
on: | |
pull_request_target: | |
branches: | |
- master | |
types: [opened, labeled, reopened, synchronize] | |
env: | |
rid: ${{ github.run_id }}-${{ github.run_number }} | |
jobs: | |
check-validation: | |
name: Check - Validation | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Check Validation | |
run: | | |
HEAD_REPO=${{ github.event.pull_request.head.repo.full_name }} | |
BASE_REPO=${{ github.event.pull_request.base.repo.full_name }} | |
FROM_BASE=0; [ "$HEAD_REPO" == "$BASE_REPO" ] && FROM_BASE=1 | |
HAS_VALIDATED_LABEL=${{ contains(github.event.pull_request.labels.*.name, 'validated') }} | |
VALIDATED=0; [ "$HAS_VALIDATED_LABEL" == "true" ] && VALIDATED=1 | |
echo from base $FROM_BASE | |
echo validated $VALIDATED | |
if [[ $FROM_BASE == 1 || $VALIDATED == 1 ]] | |
then | |
echo 'pull request is validated, running tests' | |
exit 0 | |
else | |
echo 'pull request is not validated, exiting' | |
exit 1 | |
fi | |
initialize: | |
name: Initialize | |
needs: check-validation | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Project | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Setup Environment | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16.x | |
check-latest: true | |
- name: Validate Dependencies | |
id: validate-dependencies | |
uses: actions/cache@v2 | |
with: | |
path: node_modules/ | |
key: node-modules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Install Dependencies | |
if: steps.validate-dependencies.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Cache Dependencies | |
uses: actions/cache@v2 | |
if: steps.validate-dependencies.outputs.cache-hit != 'true' | |
with: | |
path: node_modules/ | |
key: node-modules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
test-source: | |
name: Test - Source | |
needs: initialize | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Project | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Setup Environment | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16.x | |
check-latest: true | |
- name: Uncache Dependencies | |
uses: actions/cache@v2 | |
with: | |
path: node_modules/ | |
key: node-modules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Test Source | |
run: yarn ci:test:src | |
test-static: | |
name: Test - static | |
needs: initialize | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Project | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Setup Environment | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16.x | |
check-latest: true | |
- name: Uncache Dependencies | |
uses: actions/cache@v2 | |
with: | |
path: node_modules/ | |
key: node-modules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: test-static | |
run: yarn ci:test:lint | |
- name: test-tokens | |
run: yarn ci:test:tokens | |
build-source: | |
name: Build - Source | |
needs: initialize | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Project | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Setup Environment | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 16.x | |
check-latest: true | |
- name: Uncache Dependencies | |
uses: actions/cache@v2 | |
with: | |
path: node_modules/ | |
key: node-modules-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Build Source | |
run: yarn ci:build | |
- name: Cache Dist | |
uses: actions/cache@v2 | |
with: | |
path: dist/ | |
key: dist-${{ runner.os }}-${{ env.rid }} | |
- name: Cache Docs | |
uses: actions/cache@v2 | |
with: | |
path: docs/ | |
key: docs-${{ runner.os }}-${{ env.rid }} | |
- name: Cache Styles | |
uses: actions/cache@v2 | |
with: | |
path: scss/ | |
key: scss-${{ runner.os }}-${{ env.rid }} | |