Skip to content

Commit

Permalink
Convert Design System project to Rush monorepo (#929)
Browse files Browse the repository at this point in the history
  • Loading branch information
sdalonzo authored Sep 17, 2020
1 parent b101f1b commit 5fb0a0d
Show file tree
Hide file tree
Showing 308 changed files with 33,905 additions and 44,916 deletions.
4 changes: 0 additions & 4 deletions .eslintignore

This file was deleted.

44 changes: 0 additions & 44 deletions .eslintrc.js

This file was deleted.

14 changes: 14 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Don't allow people to merge changes to these generated files, because the result
# may be invalid. You need to run "rush update" again.
pnpm-lock.yaml merge=binary
shrinkwrap.yaml merge=binary
npm-shrinkwrap.json merge=binary
yarn.lock merge=binary

# Rush's JSON config files use JavaScript-style code comments. The rule below prevents pedantic
# syntax highlighters such as GitHub's from highlighting these comments as errors. Your text editor
# may also require a special configuration to allow comments in JSON.
#
# For more information, see this issue: https://github.com/microsoft/rushstack/issues/1088
#
*.json linguist-language=JSON-with-Comments
31 changes: 17 additions & 14 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,30 +17,33 @@ jobs:
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: 10.x
node-version: 12.x

- name: NPM Install
working-directory: docs
run: npm install
- name: PNPM cache via actions/cache@v2
id: pnpm-cache
uses: actions/cache@v2
with:
path: /home/runner/work/design-system/design-system/common/temp/pnpm-store/v3
key: rush-pnpm-cache
restore-keys: rush-pnpm-cache

- name: Install dependencies
run: node common/scripts/install-run-rush.js install

- name: Build components
run: node common/scripts/install-run-rush.js build

- name: Build docsite
working-directory: docs
env:
NODE_ENV: production
run: |
npm run build
touch out/.nojekyll
run: node common/scripts/install-run-rush.js build:docs

- name: Build static Storybook
working-directory: ./
run: |
npm install
npm run storybook
run: node common/scripts/install-run-rush.js build:storybook

- name: Push build directory to GitHub Pages branch
uses: s0/[email protected]
env:
REPO: self
BRANCH: gh-pages
FOLDER: docs/out
FOLDER: apps/docs/out
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47 changes: 18 additions & 29 deletions .github/workflows/continuous-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,54 +18,43 @@ jobs:

steps:
- uses: actions/checkout@v2

- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
fetch-depth: 0

- name: Cache node modules
- name: PNPM cache via actions/cache@v2
id: pnpm-cache
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: |
node_modules
*/*/node_modules
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
path: /home/runner/work/design-system/design-system/common/temp/pnpm-store/v3
key: rush-pnpm-cache
restore-keys: rush-pnpm-cache

- name: Install dependencies
run: node common/scripts/install-run-rush.js install

- name: Build components
run: node common/scripts/install-run-rush.js build

- name: Install dependencies and bootstrap lerna
run: npm install

- name: Build Storybook
if: ${{ matrix.node-version == '12.x' }}
working-directory: ./
run: |
npm run storybook
- name: Chromatic Storybook Review
if: ${{ matrix.node-version == '12.x' }}
uses: chromaui/action@v1

with:
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
storybookBuildDir: ./docs/out/storybook
exitOnceUploaded: true
env:
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
run: node common/scripts/install-run-rush.js build:storybook

- name: Run Unit Tests
run: npm run test:ci
run: node common/scripts/install-run-rush.js test:ci

- name: ESLint
run: npm run lint
run: node common/scripts/install-run-rush.js lint

- name: Generate and upload coverage report
if: ${{ matrix.node-version == '10.x' }}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: |
npm run codecov
npx codecov
30 changes: 13 additions & 17 deletions .github/workflows/master-storyboook-baseline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,33 +25,29 @@ jobs:
node-version: ${{ matrix.node-version }}
fetch-depth: 0

- name: Cache node modules
- name: PNPM cache via actions/cache@v2
id: pnpm-cache
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: |
node_modules
*/*/node_modules
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Install dependencies and bootstrap lerna
run: npm install
path: /home/runner/work/design-system/design-system/common/temp/pnpm-store/v3
key: rush-pnpm-cache
restore-keys: rush-pnpm-cache

- name: Install dependencies
run: node common/scripts/install-run-rush.js install

- name: Build components
run: node common/scripts/install-run-rush.js build

- name: Build Storybook
working-directory: ./
run: |
npm run storybook
run: node common/scripts/install-run-rush.js build:storybook

- name: Chromatic Storybook Review
uses: chromaui/action@v1

with:
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
storybookBuildDir: ./docs/out/storybook
storybookBuildDir: ./docs/out/storybook
exitOnceUploaded: true
autoAcceptChanges: true
99 changes: 75 additions & 24 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,24 +1,75 @@
node_modules
npm-debug.log
lerna-debug.log
yarn.lock
coverage
dist
.history
.vscode
.idea
icons.json
.ssh
.DS_Store
*/.DS_Store
tmp
log
.settings
id_rsa
id_rsa.pub
known_hosts
id_rs*
*ssh*
packages/**/package-lock.json
.npmrc

# Logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Runtime data
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env

# next.js build output
.next

# OS X temporary files
.DS_Store

# Rush temporary files
common/deploy/
common/temp/
common/autoinstallers/*/.npmrc
**/.rush/temp/

# build output
**/dist/

apps/docs/out/

# SVGR intermediate build steps
packages/icons/components/

.vscode
Loading

0 comments on commit 5fb0a0d

Please sign in to comment.