From 9b1919f6b166d2bcc67b2c798201df5e09ad4e5f Mon Sep 17 00:00:00 2001 From: svetlanaMuravlova Date: Tue, 31 Aug 2021 14:10:57 +0300 Subject: [PATCH] feat(gh actions): try gh actions --- .github/workflows/on-push-or-pull.yml | 247 ++++++-------------------- apps/demo/tsconfig.json | 31 ---- 2 files changed, 59 insertions(+), 219 deletions(-) diff --git a/.github/workflows/on-push-or-pull.yml b/.github/workflows/on-push-or-pull.yml index aa3354d..7dc5f95 100644 --- a/.github/workflows/on-push-or-pull.yml +++ b/.github/workflows/on-push-or-pull.yml @@ -1,189 +1,60 @@ -#name: on-pull-request-or-push -# -#on: -# pull_request: -# push: -# branches: -# - development -# -#env: -# NX_BRANCH: ${{ github.event.number }} -# NX_RUN_GROUP: ${{ github.run_id }} +name: on-pull-request-or-push + +on: + pull_request: + push: + branches: + - development + +env: + NX_BRANCH: ${{ github.event.number }} + NX_RUN_GROUP: ${{ github.run_id }} # NX_CLOUD_AUTH_TOKEN: ${{ secrets.NX_CLOUD_AUTH_TOKEN }} -# MOZ_HEALESS: 1 -# SAUCE_USERNAME_PR: valorkinpr -## SAUCE_ACCESS_KEY_PR: e0a97bd3-4b74-4408-89bf-cce1b44a8bf1 -## FIREBASE_CHANNEL: ${{ fromJSON('["", "live"]')[!github.base_ref] }} -# -# CACHE_NODE_MODULES_PATH: | -# ~/.npm -# node_modules -# -# CACHE_DIST_PATH: | -# dist -# -#jobs: -# # one run -# one_run: -# runs-on: ubuntu-latest -# steps: -# - name: Cancel Previous Runs -# uses: styfle/cancel-workflow-action@0.9.0 -# with: -# access_token: ${{ secrets.GITHUB_TOKEN }} -# -# # install dependencies -# install: -# runs-on: ubuntu-latest -# needs: one_run -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# id: cache -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - run: npm ci -# if: steps.cache.outputs.cache-hit != 'true' -# -# # build ngx-bootstrap -# build: -# needs: install -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_DIST_PATH }} -# key: dist-${{ github.run_id }} -# - run: npx ng build --runner cloud --prod --with-deps -# -# -# # run unit tests -# unit_tests_with_coverage: -# runs-on: ubuntu-latest -# needs: build -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_DIST_PATH }} -# key: dist-${{ github.run_id }} -# - run: npm test -- --runner cloud --codeCoverage -# - run: npx codecov ./coverage/ -# continue-on-error: true -# -# # run linting -# linting: -# runs-on: ubuntu-latest -# needs: install -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - run: npm run lint -- --runner cloud -# -# # firebase deploy preview -# firebase_preview: -# runs-on: ubuntu-latest -# needs: build -# outputs: -# output_url: ${{ steps.firebase_hosting_preview.outputs.details_url }} -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_DIST_PATH }} -# key: dist-${{ github.run_id }} -# - uses: FirebaseExtended/action-hosting-deploy@v0 -# continue-on-error: true -# id: firebase_hosting_preview -# with: -# repoToken: '${{ secrets.GITHUB_TOKEN }}' -# firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_NGX_BOOTSTRAP_DEMO }}' -# projectId: ngx-bootstrap-demo -# channelId: ${{ env.FIREBASE_CHANNEL }} -# expires: 7d -# -# # run cypress -# e2e_smoke: -# name: e2e smoke -# runs-on: ubuntu-latest -# needs: [install, build, firebase_preview] -# -# strategy: -# # when one test fails, DO NOT cancel the other -# # containers, because this will kill Cypress processes -# # leaving the Dashboard hanging ... -# # https://github.com/cypress-io/github-action/issues/48 -# fail-fast: false -# matrix: -# # run 3 copies of the current job in parallel -# containers: [1, 2, 3, 4, 5] -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_DIST_PATH }} -# key: dist-${{ github.run_id }} -# -# # because of "record" and "parallel" parameters -# # these containers will load balance all found tests among themselves -# - name: smoke e2e on firebase -# if: ${{ needs.firebase_preview.outputs.output_url }} -# run: npx nx run ngx-bootstrap-docs-e2e:e2e -c firebase --runner cloud --record --group smoke --baseUrl=${{ needs.firebase_preview.outputs.output_url }}/ngx-bootstrap/ -- --parallel -# -# - name: smoke e2e local -# if: ${{ !needs.firebase_preview.outputs.output_url }} -# run: npx nx run ngx-bootstrap-docs-e2e:e2e --prod --runner cloud --record --group smoke -- --parallel -# -# e2e_full: -# name: e2e full -# runs-on: ubuntu-latest -# needs: [e2e_smoke] -# -# strategy: -# # when one test fails, DO NOT cancel the other -# # containers, because this will kill Cypress processes -# # leaving the Dashboard hanging ... -# # https://github.com/cypress-io/github-action/issues/48 -# fail-fast: false -# matrix: -# # run 3 copies of the current job in parallel -# containers: [1, 2, 3, 4, 5] -# steps: -# - uses: actions/checkout@v2 -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_NODE_MODULES_PATH }} -# key: node_modules-${{ hashFiles('**/package-lock.json') }} -# - uses: actions/cache@v2 -# with: -# path: ${{ env.CACHE_DIST_PATH }} -# key: dist-${{ github.run_id }} -# -# # because of "record" and "parallel" parameters -# # these containers will load balance all found tests among themselves -# - name: full e2e on firebase -# if: ${{ needs.firebase_preview.outputs.output_url }} -# continue-on-error: true -# run: npx nx run ngx-bootstrap-docs-e2e:e2e -c firebase --runner cloud --cypressConfig ./apps/ngx-bootstrap-docs-e2e/cypress-full.json --record --group full --baseUrl=${{ needs.firebase_preview.outputs.output_url }}/ngx-bootstrap/ -- --parallel -# -# - name: full e2e on local -# if: ${{ !needs.firebase_preview.outputs.output_url }} -# continue-on-error: true -# run: npx nx run ngx-bootstrap-docs-e2e:e2e --prod --runner cloud --cypressConfig ./apps/ngx-bootstrap-docs-e2e/cypress-full.json --record --group full -- --parallel + MOZ_HEALESS: 1 + SAUCE_USERNAME_PR: valorkinpr +# SAUCE_ACCESS_KEY_PR: e0a97bd3-4b74-4408-89bf-cce1b44a8bf1 +# FIREBASE_CHANNEL: ${{ fromJSON('["", "live"]')[!github.base_ref] }} + + CACHE_NODE_MODULES_PATH: | + ~/.npm + node_modules + + CACHE_DIST_PATH: | + dist + +jobs: + # one run + one_run: + runs-on: ubuntu-latest + steps: + - run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + + # install dependencies + install: + runs-on: ubuntu-latest + needs: one_run + steps: + - uses: actions/checkout@v2 + - uses: actions/cache@v2 + id: cache + with: + path: ${{ env.CACHE_NODE_MODULES_PATH }} + key: node_modules-${{ hashFiles('**/package-lock.json') }} + - run: npm ci + if: steps.cache.outputs.cache-hit != 'true' + + # build ngx-bootstrap + build: + needs: install + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/cache@v2 + with: + path: ${{ env.CACHE_NODE_MODULES_PATH }} + key: node_modules-${{ hashFiles('**/package-lock.json') }} + - uses: actions/cache@v2 + with: + path: ${{ env.CACHE_DIST_PATH }} + key: dist-${{ github.run_id }} + - run: npx ng build --runner cloud --prod --with-deps diff --git a/apps/demo/tsconfig.json b/apps/demo/tsconfig.json index 8d3f650..d4cfa26 100644 --- a/apps/demo/tsconfig.json +++ b/apps/demo/tsconfig.json @@ -18,34 +18,3 @@ ], "exclude": ["**/*.spec.ts"] } - -//{ -// "compilerOptions": { -// "baseUrl": ".", -// "declaration": false, -// "downlevelIteration": true, -// "emitDecoratorMetadata": true, -// "experimentalDecorators": true, -// "noEmitHelpers": false, -// "lib": ["es6", "dom"], -// "mapRoot": "./", -// "module": "esnext", -// "moduleResolution": "node", -// "outDir": "../temp/out-tsc", -// "sourceMap": true, -// "target": "es2015" -// }, -// "files": [ -// "../../scripts/typings.d.ts", -// "main.ts", -// "../../scripts/polyfills.ts" -// ], -// "exclude": [ -// "**/*.spec.ts" -// ], -// "paths": { -// "@ng2-file-upload": [ -// "../../dist/ng2-file-upload/index.ts" -// ] -// } -//}