Merge branch 'main' into release (#2373) #161
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: publish to NPM | |
on: | |
push: | |
branches: | |
- release | |
jobs: | |
deploy-storybook: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Configure CI Git User | |
run: | | |
git config --global user.name 'telekom' | |
git config --global user.email '[email protected]' | |
git remote set-url origin https://telekom:${{ secrets.GITHUB_TOKEN }}@github.com/telekom/scale | |
- name: Restore Lerna | |
id: yarn-cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
**/node_modules | |
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Install project dependencies | |
if: steps.yarn-cache.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Bootstrap | |
run: | | |
yarn bootstrap | |
- name: Build Components | |
run: | | |
yarn workspace @telekom/scale-components build | |
- name: Build Storybook | |
run: | | |
yarn workspace @telekom/scale-storybook-vue build --quiet | |
- name: Deploy Storybook | |
run: | | |
yarn workspace @telekom/scale-storybook-vue deploy | |
publish-telekom: | |
runs-on: ubuntu-20.04 | |
environment: RELEASE | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Authenticate with Registry | |
run: | | |
yarn logout | |
touch .npmrc | |
echo "registry=https://registry.npmjs.org/" >> .npmrc | |
echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> .npmrc | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Restore Lerna | |
id: yarn-cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
**/node_modules | |
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Install project dependencies | |
if: steps.yarn-cache.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Bootstrap | |
run: | | |
yarn bootstrap | |
- name: Build Components | |
run: | | |
yarn workspace @telekom/scale-components build | |
- name: Build Angular Proxy | |
run: | | |
yarn workspace @telekom/scale-components process-angular-proxies | |
yarn workspace @telekom/scale-components-angular build | |
- name: Build React Proxy | |
run: | | |
yarn workspace @telekom/scale-components-react build | |
- name: Build Vue Proxy | |
run: | | |
yarn workspace @telekom/scale-components-vue build | |
- name: Publish to NPM | |
run: | | |
yarn publish-telekom | |
- name: Deprecate Angular Package | |
run: | | |
npm deprecate @telekom/scale-components-angular@~3.0.0-beta.17 "Please use @telekom/scale-components directly, see the Scale docs. Angular support for web components is already great." | |
- name: Deprecate Vue Package | |
run: | | |
npm deprecate @telekom/scale-components-vue@~3.0.0-beta.17 "Please use @telekom/scale-components directly, see the Scale docs. Vue support for web components is already great." | |
publish-neutral: | |
runs-on: ubuntu-20.04 | |
environment: RELEASE | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Configure CI Git User | |
run: | | |
git config --global user.name 'telekom' | |
git config --global user.email '[email protected]' | |
git remote set-url origin https://telekom:${{ secrets.GITHUB_TOKEN }}@github.com/telekom/scale | |
- name: Authenticate with Registry | |
run: | | |
yarn logout | |
touch .npmrc | |
echo "registry=https://registry.npmjs.org/" >> .npmrc | |
echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> .npmrc | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Restore Lerna | |
id: yarn-cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
**/node_modules | |
key: ${{ runner.os }}-${{ hashFiles('**/yarn.lock') }} | |
- name: Install project dependencies | |
if: steps.yarn-cache.outputs.cache-hit != 'true' | |
run: yarn | |
- name: Bootstrap | |
run: | | |
WHITELABEL=1 yarn bootstrap | |
- name: Build Components | |
run: | | |
WHITELABEL=1 yarn workspace @telekom/scale-components build | |
- name: Prepare neutral packages | |
run: | | |
yarn prepare-neutral | |
- name: Build Angular Proxy | |
run: | | |
yarn workspace @telekom/scale-components-neutral process-angular-proxies | |
yarn workspace @telekom/scale-components-angular-neutral build | |
- name: Build React Proxy | |
run: | | |
yarn workspace @telekom/scale-components-react-neutral build | |
- name: Build Vue Proxy | |
run: | | |
yarn workspace @telekom/scale-components-vue-neutral build | |
- name: Publish to NPM | |
run: | | |
yarn publish-neutral | |
- name: Deprecate Angular Package | |
run: | | |
npm deprecate @telekom/scale-components-angular-neutral@~3.0.0-beta.17 "Please use @telekom/scale-components directly, see the Scale docs. Angular support for web components is already great." | |
- name: Deprecate Vue Package | |
run: | | |
npm deprecate @telekom/scale-components-vue-neutral@~3.0.0-beta.17 "Please use @telekom/scale-components directly, see the Scale docs. Vue support for web components is already great." | |