diff --git a/.travis.yml b/.travis.yml index cda17738c8..c80f8993b3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,19 +1,3 @@ -import: - - source: Alfresco/alfresco-build-tools:.travis.docker_hub_login.yml@v1.1.1 - -git: - depth: false - quiet: true - -language: node_js -arch: arm64-graviton2 -dist: bionic -node_js: - - '14' - -before_install: . ./scripts/ci/job_hooks/before_install.sh -install: ./scripts/ci/job_hooks/install.sh - env: global: # REPOSITORY @@ -43,580 +27,3 @@ env: - PLAYWRIGHT_WORKERS=2 - PLAYWRIGHT_STORYBOOK_E2E_HOST=http://localhost - PLAYWRIGHT_STORYBOOK_E2E_PORT=4400 - -branches: - only: - - /^master(-patch.*)?$/ - - /^develop(-patch.*)?$/ - - master - - develop - - /.*old-env.*/ - - /.*next-release.*/ - - /.*beta.*/ - -stages: - - name: Prerequisite - - name: Setup - - name: "Build" - if: tag IS blank AND (type = pull_request OR type = cron OR type = api) - - name: "Trigger Alpha ADF child build" - if: type = cron OR (type = api AND commit_message =~ /\[trigger adf\]/) - - name: "Release" - if: type = push - - name: "Unit test Lib" - if: type = pull_request OR type = cron OR type = api - - name: "e2e Test" - if: type = pull_request OR type = cron OR type = api - - name: "Release tag" - if: branch =~ /^master(-patch.*)?$/ - - name: "Check bundle" - if: type = push AND tag IS blank OR (type = cron || type = api) - - name: "Deprecate develop builds" - if: branch =~ /^master(-patch.*)?$/ - -addons: - chrome: stable -before_script: - - export GIT_HASH=`git rev-parse HEAD` -services: - - xvfb - -jobs: - include: - # Big Bang =================== - - stage: Prerequisite - name: "Before anything unnece$$ary happens..." - if: type == pull_request - language: python - python: 3.8 - install: echo "no install here" - script: ./scripts/ci/jobs/dbpci-build-guard-check $TRAVIS_PULL_REQUEST || exit 1 - - # Setup ====================== - - stage: Setup - name: "Node modules cache preparation" - script: echo "Only here for setting up the shared node_modules" - workspaces: - create: - name: node_modules_cache - paths: - - "$NODE_MODULES_DIR" - use: node_modules_cache - - - stage: "Build" - name: "Lib::Build" - install: echo "no install" - script: $(npm bin)/nx affected:build $NX_CALCULATION_FLAGS --prod --exclude="demoshell" - - workspaces: - create: - name: built_libs_cache - paths: - - "$BUILT_LIBS_DIR" - - "$NODE_MODULES_DIR" - use: node_modules_cache - - - stage: "Build" - name: "Lint" - install: echo "no install" - script: $(npm bin)/nx affected:lint $NX_CALCULATION_FLAGS --parallel=5 - workspaces: - use: node_modules_cache - - - stage: "Build" - name: "Demo Shell::Build" - install: echo "no install" - script: $(npm bin)/nx build demoshell --configuration production - workspaces: - create: - name: built_demo_shell_cache - paths: - - "$DEMO_SHELL_DIR" - use: - - node_modules_cache - - - stage: "Build" - name: "Storybook::Build" - install: echo "no install" - script: $(npm bin)/nx run stories:build-storybook --configuration ci - workspaces: - create: - name: built_storybook_cache - paths: - - "$STORYBOOK_DIR" - use: - - node_modules_cache - - - stage: "Unit test Lib" - name: "content::unit" - install: echo "no install" - script: $(npm bin)/nx affected:test $NX_CALCULATION_FLAGS --exclude="insights,core,extensions,process-services,process-services-cloud" - workspaces: - use: built_libs_cache - - - stage: "Unit test Lib" - name: "core-extension::unit" - install: echo "no install" - script: $(npm bin)/nx affected:test $NX_CALCULATION_FLAGS --exclude="insights,content-services,process-services,process-services-cloud" - workspaces: - use: built_libs_cache - - - stage: "Unit test Lib" - name: "process-insights::unit" - install: echo "no install" - script: $(npm bin)/nx affected:test $NX_CALCULATION_FLAGS --exclude="core,extensions,content-services,process-services-cloud" - workspaces: - use: built_libs_cache - - - stage: "Unit test Lib" - name: "process-cloud::unit" - install: echo "no install" - script: $(npm bin)/nx affected:test $NX_CALCULATION_FLAGS --exclude="insights,core,extensions,content-services,process-services" - workspaces: - use: built_libs_cache - - - stage: "Trigger Alpha ADF child build" - name: "Trigger Alpha ADF child build" - script: ./scripts/travis/update/update-project.sh -p $TRAVIS_BUILD_NUMBER -t $GITHUB_TOKEN -v alpha -c $TRAVIS_COMMIT - workspaces: - use: built_libs_cache - - - stage: "Release" - name: "release libs::npm" - install: echo "no install" - script: - - ./scripts/travis/build/bumpversion.sh || travis_terminate 1 - - $(npm bin)/nx affected:build $NX_CALCULATION_FLAGS --prod --exclude="demoshell" || travis_terminate 1 - - $(npm bin)/nx affected $NX_CALCULATION_FLAGS --target=pretheme || travis_terminate 1 - - ./scripts/travis/release/release-npm.sh || travis_terminate 1 - workspaces: - use: node_modules_cache - - - stage: "Release" - name: "release demoshell::docker" - install: echo "no install" - script: - - $(npm bin)/nx build demoshell --configuration production || travis_terminate 1 - - . ./scripts/travis/release/docker-tag.sh || travis_terminate 1 - - ./scripts/travis/release/release-demoshell-docker.sh - workspaces: - use: node_modules_cache - - - stage: "Release" - name: "release storybook::docker" - install: echo "no install" - script: - - $(npm bin)/nx run stories:build-storybook --configuration ci || travis_terminate 1 - - . ./scripts/travis/release/docker-tag.sh || travis_terminate 1 - - ./scripts/travis/release/release-storybook-docker.sh || travis_terminate 1 - workspaces: - use: node_modules_cache - - - stage: "Release tag" - script: ./scripts/travis/release/git-tag.sh - - - stage: "Deprecate develop builds" - script: - - ADF_VERSION=$(npm view @alfresco/adf-core@${TAG_NPM} version) - - ./scripts/travis/release/deprecate-develop-build.sh -v ${ADF_VERSION} - - - stage: "e2e Test" - name: "Process Cloud: Storybook Playwright" - install: echo "no install" - before_script: ./scripts/ci/jobs/dbpci-before-playwright - script: ./scripts/travis/storybook-testing/storybook-test.sh - workspaces: - use: - - built_libs_cache - - built_demo_shell_cache - - - stage: "e2e Test" - name: "Core" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "core" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="core" - - PROVIDER='ALL' - - AUTH_TYPE='OAUTH' - - - stage: "e2e Test" - name: "Content: Components" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="content-services/components" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Content: Directives" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="content-services/directives" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Content: Document List" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="content-services/document-list" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Content: Metadata" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="content-services/metadata" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Content: Upload and Versioning" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" "browser" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="content-services/upload" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Search" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "content-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="search" - - PROVIDER="ECM" - - AUTH_TYPE="BASIC" - - - stage: "e2e Test" - name: "Process: Form" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-ps-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-external-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services/form" - - PROVIDER="BPM" - - AUTH_TYPE="OAUTH" - - - stage: "e2e Test" - name: "Process: Process" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-ps-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-external-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services/process" - - PROVIDER="BPM" - - AUTH_TYPE="OAUTH" - - - stage: "e2e Test" - name: "Process: Tasks" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-ps-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-external-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services/tasks" - - PROVIDER="BPM" - - AUTH_TYPE="OAUTH" - - - stage: "e2e Test" - name: "Process: Widgets" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-ps-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-external-cs-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services/widgets" - - PROVIDER="BPM" - - AUTH_TYPE="OAUTH" - - - stage: "e2e Test" - name: "Process Cloud : Form" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-cloud-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services-cloud" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services-cloud/form-field" - - PROVIDER="ALL" - - AUTH_TYPE="OAUTH" - - PROXY_HOST_BPM=$E2E_HOST_APA - - - stage: "e2e Test" - name: "Process Cloud : People" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-cloud-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services-cloud" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services-cloud/people" - - PROVIDER="ALL" - - AUTH_TYPE="OAUTH" - - PROXY_HOST_BPM=$E2E_HOST_APA - - - stage: "e2e Test" - name: "Process Cloud : Process" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-cloud-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services-cloud" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services-cloud/process" - - PROVIDER="ALL" - - AUTH_TYPE="OAUTH" - - PROXY_HOST_BPM=$E2E_HOST_APA - - - stage: "e2e Test" - name: "Process Cloud : Start Task" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-cloud-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services-cloud" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services-cloud/start-task" - - PROVIDER="ALL" - - AUTH_TYPE="OAUTH" - - PROXY_HOST_BPM=$E2E_HOST_APA - - - stage: "e2e Test" - name: "Process Cloud : Tasks List" - install: echo "no install" - before_script: - - ./scripts/ci/job_hooks/before_e2e.sh - - ./scripts/ci/check-env/check-cs-env.sh || travis_terminate 1 - - ./scripts/ci/check-env/check-ps-cloud-env.sh || travis_terminate 1 - script: ./scripts/travis/e2e/e2e.sh "process-services-cloud" - after_script: ./scripts/ci/job_hooks/after_e2e.sh - workspaces: - create: - name: e2e_cache - paths: - - "$SMART_RUNNER_DIRECTORY" - use: - - built_libs_cache - - built_demo_shell_cache - - e2e_cache - env: - - FOLDER="process-services-cloud/task-list" - - PROVIDER="ALL" - - AUTH_TYPE="OAUTH" - - PROXY_HOST_BPM=$E2E_HOST_APA - - - stage: Check bundle - install: echo "no install" - script: - - ADF_VERSION=$(npm view @alfresco/adf-core@${TAG_NPM} version) - - ./scripts/travis/build/npm-check-bundles.sh -v ${ADF_VERSION} - workspaces: - use: built_libs_cache - -notifications: - slack: - on_pull_requests: false - rooms: - secure: "qcTP/+rhVweMSZZAQMPz4sW7boS8XC0RX1SPYgg7hIfxBr9747WpRLkJ1sirkVaXI/6XfYAyl42CTfPmTuJxIC+co/NSnEDknwVsnKZd0O/ykTpo+mxIN4BTZX8dm+gELR5IEYQPs+Yki3ZnD9b+0mCK1yD8JallKCQeE2U9BhzZhP/Fn0ce35EulybNp3QQDaox0XC+7gadMdxlvK8mzP1scw76wRLtx25QLxxV+OwEw0bzyh8y3onfjHfnoDcUQWRTNdnjapzmgf1LNdC202A5kwp5sJggfSDr+ActRqaMvv4BbMsFpdan34B6zPQJfyZL1r8IB8O8BEKcAaOUVcTjnZAOom8kHS8F07/mo5xnNYmV8oNX2/egr1CiG4U0EAGF2XGqM+vetYnF88LTEzy84kVxmSwKGVfzlGOyTplMXJ1iCENndtfWm1AXhAFj5RSsSAZg6IStTM+mcpnC75moEwQtj8bTenwehHz1HQAjQX7xeTQo27SxDc7oqp1ReyXCllMjKxckjVGmp2j6yxn1Jl55kivBj57vluLtEtziOGluVELP5E2fV0VAuErNhnjLm4LJARVN76PQaTOXYwATVVJJDhb/77TesvxQsr3VfiROEKm7QB7IDFjghjLLisSX67JQ5+7K/qMlqf9+9hNw4n0v1eMylVjt+gyxspc=" - on_failure: always - on_success: change - template: - - "Repo `%{repository_slug}` *%{result}* build (<%{build_url}|#%{build_number}>) for commit (<%{compare_url}|%{commit}>) on branch `%{branch}`." - - "Author: %{author} Execution time: *%{duration}*" - - "Message: %{message}" - -cache: - npm: false - directories: - - tmp diff --git a/README.md b/README.md index 3bc9b02183..869c4922b6 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ | branch | status | | --- | --- | -| master | [![Build Status](https://travis-ci.com/Alfresco/alfresco-ng2-components.svg?branch=master)](https://travis-ci.com/Alfresco/alfresco-ng2-components) | -| develop | [![Build Status](https://travis-ci.com/Alfresco/alfresco-ng2-components.svg?branch=develop)](https://travis-ci.com/Alfresco/alfresco-ng2-components) | +| master | [![git-tag](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/git-tag.yml/badge.svg)](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/git-tag.yml) | +| develop | [![cron schedule](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/cron.yml/badge.svg)](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/cron.yml)| [![Codacy Badge](https://api.codacy.com/project/badge/Grade/d9eb873741da403bb3284778102372e7)](https://www.codacy.com/app/Alfresco/alfresco-ng2-components?utm_source=github.com&utm_medium=referral&utm_content=Alfresco/alfresco-ng2-components&utm_campaign=badger) [![Join the chat at https://gitter.im/Alfresco/alfresco-ng2-components](https://badges.gitter.im/Alfresco/alfresco-ng2-components.svg)](https://gitter.im/Alfresco/alfresco-ng2-components?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) @@ -39,8 +39,8 @@ ADF Libraries list: - [Insights](https://github.com/Alfresco/alfresco-ng2-components/tree/develop/lib/insights) - [Process Service Cloud](https://github.com/Alfresco/alfresco-ng2-components/tree/develop/lib/process-services-cloud) - [Process service](https://github.com/Alfresco/alfresco-ng2-components/tree/develop/lib/process-services) -- [Stories](https://github.com/Alfresco/alfresco-ng2-components/tree/develop/lib/stories) - +- [Stories](https://github.com/Alfresco/alfresco-ng2-components/tree/develop/lib/stories) + ## Demo Application A separate application showcasing integration of components can be found @@ -49,7 +49,7 @@ The app has examples of basic interaction for both APS and ACS components. ## Yeoman generators -To speed up the development of your ADF application, use the +To speed up the development of your ADF application, use the [Yeoman Generator](https://github.com/Alfresco/generator-ng2-alfresco-app). This will create a full working project with all the right libraries and tools. @@ -69,6 +69,6 @@ All components are supported in the following browsers: |Edge |13, 14 | |Internet Explorer |11 | -* Due to a [known issue](https://bugzilla.mozilla.org/show_bug.cgi?id=1188880) in Firefox, the Alfresco Upload Component does not currently support folder upload functionality on Firefox. +* Due to a [known issue](https://bugzilla.mozilla.org/show_bug.cgi?id=1188880) in Firefox, the Alfresco Upload Component does not currently support folder upload functionality on Firefox. See the [Browser Support](BROWSER-SUPPORT.md) article for more details.