From c06b8167f009d770c44bcc40dccfbd9c95a452d7 Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Thu, 21 Dec 2023 11:48:27 +0530 Subject: [PATCH 1/7] test --- .github/workflows/a11y.yaml | 124 +++---- .github/workflows/catalog.yaml | 310 +++++++++--------- .github/workflows/clean.yaml | 124 +++---- .github/workflows/crowdin.yaml | 114 +++---- .github/workflows/ftest.yaml | 6 + .github/workflows/lint.yaml | 72 ++--- .github/workflows/preview.yaml | 392 +++++++++++------------ .github/workflows/test.yaml | 84 ++--- .github/workflows/veracode.yml | 362 ++++++++++----------- package.json | 2 +- packages/nuxeo-web-ui-ftest/package.json | 2 +- 11 files changed, 799 insertions(+), 793 deletions(-) diff --git a/.github/workflows/a11y.yaml b/.github/workflows/a11y.yaml index f81d137336..5d1e829104 100644 --- a/.github/workflows/a11y.yaml +++ b/.github/workflows/a11y.yaml @@ -1,72 +1,72 @@ -name: A11y +# name: A11y -on: - pull_request: - branches: - - maintenance-3.0.x - workflow_call: - inputs: - branch: - description: 'The current branch' - default: maintenance-3.0.x - type: string - required: false - secrets: - NPM_PACKAGES_TOKEN: - description: 'NPM_PACKAGES_TOKEN' - required: true - PACKAGES_AUTH_USER: - description: 'PACKAGES_AUTH_USER' - required: true - PACKAGES_AUTH_TOKEN: - description: 'PACKAGES_AUTH_TOKEN' - required: true +# on: +# pull_request: +# branches: +# - maintenance-3.0.x +# workflow_call: +# inputs: +# branch: +# description: 'The current branch' +# default: maintenance-3.0.x +# type: string +# required: false +# secrets: +# NPM_PACKAGES_TOKEN: +# description: 'NPM_PACKAGES_TOKEN' +# required: true +# PACKAGES_AUTH_USER: +# description: 'PACKAGES_AUTH_USER' +# required: true +# PACKAGES_AUTH_TOKEN: +# description: 'PACKAGES_AUTH_TOKEN' +# required: true -env: - REFERENCE_BRANCH: maintenance-3.0.x - NPM_REPOSITORY: https://packages.nuxeo.com/repository/npm-public/ - BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} +# env: +# REFERENCE_BRANCH: maintenance-3.0.x +# NPM_REPOSITORY: https://packages.nuxeo.com/repository/npm-public/ +# BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} -jobs: - a11y: - runs-on: [self-hosted, master] - steps: - - uses: actions/checkout@v2 - with: - ref: ${{ env.BRANCH_NAME }} +# jobs: +# a11y: +# runs-on: [self-hosted, master] +# steps: +# - uses: actions/checkout@v2 +# with: +# ref: ${{ env.BRANCH_NAME }} - - run: git config user.name "nuxeo-webui-jx-bot" && git config user.email "webui@hyland.com" +# - run: git config user.name "nuxeo-webui-jx-bot" && git config user.email "webui@hyland.com" - - uses: actions/setup-node@v3 - with: - registry-url: ${{ env.NPM_REPOSITORY }} - node-version: 14 - scope: '@nuxeo' +# - uses: actions/setup-node@v3 +# with: +# registry-url: ${{ env.NPM_REPOSITORY }} +# node-version: 14 +# scope: '@nuxeo' - - uses: actions/setup-java@v2 - with: - distribution: 'zulu' - java-version: '11' +# - uses: actions/setup-java@v2 +# with: +# distribution: 'zulu' +# java-version: '11' - - name: Install google chrome - run: | - wget https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_114.0.5735.90-1_amd64.deb - apt install -y --allow-downgrades ./google-chrome-stable_114.0.5735.90-1_amd64.deb +# - name: Install google chrome +# run: | +# wget https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_114.0.5735.90-1_amd64.deb +# apt install -y --allow-downgrades ./google-chrome-stable_114.0.5735.90-1_amd64.deb - - name: 'Update settings.xml with server configuration' - run: | - echo ' - - - maven-internal - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} - - - ' > ~/.m2/settings.xml +# - name: 'Update settings.xml with server configuration' +# run: | +# echo ' +# +# +# maven-internal +# ${{ secrets.PACKAGES_AUTH_USER }} +# ${{ secrets.PACKAGES_AUTH_TOKEN }} +# +# +# ' > ~/.m2/settings.xml - - name: Web UI build - run: mvn -B -ntp install +# - name: Web UI build +# run: mvn -B -ntp install - - name: A11y checks - run: mvn -B -ntp -f plugin/a11y install +# - name: A11y checks +# run: mvn -B -ntp -f plugin/a11y install diff --git a/.github/workflows/catalog.yaml b/.github/workflows/catalog.yaml index 77e0756c3d..a4a69bde8a 100644 --- a/.github/workflows/catalog.yaml +++ b/.github/workflows/catalog.yaml @@ -1,155 +1,155 @@ -# This workflow generates a new version of the catalog used by Nuxeo Studio Designer. -# Note: some Catalog dependencies require Node 10.x to work. -name: Designer Catalog Generator - -on: - workflow_dispatch: - inputs: - target_platform: - description: 'The Nuxeo server target platform to build the catalog for.' - default: '11.3' - required: true - branch_name: - description: 'The name of the Nuxeo Web UI branch to generate the catalog for.' - default: 'maintenance-3.0.x' - required: true - classifier: - description: 'Classifier to name a custom version of the catalog (used for testing purposes).' - default: '' - required: false - - release: - types: [published] - -env: - ARTIFACT_ID: view-designer-catalog - GROUP_ID: org.nuxeo.web.ui.studio - -jobs: - catalog: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - run: git config --global user.name "nuxeo-webui-jx-bot" && git config --global user.email "webui@hyland.com" - - - uses: actions/setup-node@v3 - with: - node-version: 14 - - - uses: actions/setup-java@v3 - with: - distribution: 'zulu' - java-version: '11' - - - name: 'Update settings.xml with server configuration' - run: | - echo ' - - - maven-internal - external:* - https://packages.nuxeo.com/repository/maven-internal/ - - - - - nos-team - nuxeo-webui-jx-bot - ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} - - - maven-internal - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} - - - maven-public-releases - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} - - - maven-public-snapshots - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} - - - ' > ~/.m2/settings.xml - - - name: Install libxml2-utils (xmllint) - run: sudo apt-get update && sudo apt-get install -y libxml2-utils - - - name: Setup parameters (release) - if: github.event_name == 'release' - working-directory: packages/nuxeo-designer-catalog - run: | - echo "BRANCH_NAME=v${GITHUB_HEAD_REF##*/}" >> $GITHUB_ENV - echo "TARGET_PLATFORM=11.3" >> $GITHUB_ENV - - - name: Setup parameters (workflow_dispatch) - if: github.event_name == 'workflow_dispatch' - run: | - echo "BRANCH_NAME=${{ github.event.inputs.branch_name }}" >> $GITHUB_ENV - echo "TARGET_PLATFORM=${{ github.event.inputs.target_platform }}" >> $GITHUB_ENV - - - name: Install dependencies - working-directory: packages/nuxeo-designer-catalog - run: | - npm install - npm install -g gulp - - - name: Generate catalog - working-directory: packages/nuxeo-designer-catalog - run: | - gulp catalog --tp $TARGET_PLATFORM --webui-branch $BRANCH_NAME - gulp hints --tp $TARGET_PLATFORM - - - name: Bundle the catalog - run: | - sudo chmod +r pom.xml - CATALOG_VERSION=$(xmllint --xpath "//*[local-name()='project']/*[local-name()='version']/text()" pom.xml)${{ github.event.inputs.classifier }} - pushd packages/nuxeo-designer-catalog/data/applications/nuxeo/${{ env.TARGET_PLATFORM }} - echo "CATALOG_VERSION=$CATALOG_VERSION" >> $GITHUB_ENV - CATALOG_NAME=$ARTIFACT_ID-$CATALOG_VERSION.zip - echo "CATALOG_NAME=$CATALOG_NAME" >> $GITHUB_ENV - zip -q -r $CATALOG_NAME nuxeo-web-ui data hints catalog.json - popd - - - name: Archive catalog - uses: actions/upload-artifact@v3 - with: - name: catalog - path: packages/nuxeo-designer-catalog/data/applications/nuxeo/${{ env.TARGET_PLATFORM }}/${{ env.CATALOG_NAME }} - - - name: Upload catalog - working-directory: packages/nuxeo-designer-catalog - run: | - MVN_REPO_ID=maven-public-releases - MVN_REPO_URL=https://packages.nuxeo.com/repository/maven-public-releases/ - if [[ $CATALOG_VERSION == *-SNAPSHOT ]]; then - MVN_REPO_ID=maven-public-snapshots - MVN_REPO_URL=https://packages.nuxeo.com/repository/maven-public-snapshots/ - fi - - pushd data/applications/nuxeo/$TARGET_PLATFORM - mvn deploy:deploy-file -Dfile=$CATALOG_NAME -DgroupId=$GROUP_ID -DartifactId=$ARTIFACT_ID -Dversion=$CATALOG_VERSION -Dpackaging=zip -DrepositoryId=$MVN_REPO_ID -Durl=$MVN_REPO_URL - popd - - - name: Checkout NOS repository - uses: actions/checkout@v3 - with: - repository: nuxeo/nos - token: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} - path: nos - - - name: Create pull request for catalog update in NOS - working-directory: nos - env: - GH_TOKEN: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} - run: | - git checkout -b designer-catalog-update-$CATALOG_VERSION - mvn versions:set-property -Dproperty=view.designer.catalog.11.3 -DnewVersion=$CATALOG_VERSION - git add . - git commit -m "Update Designer catalog with version $CATALOG_VERSION" - git push origin designer-catalog-update-$CATALOG_VERSION - gh pr create --base master --fill \ No newline at end of file +# # This workflow generates a new version of the catalog used by Nuxeo Studio Designer. +# # Note: some Catalog dependencies require Node 10.x to work. +# name: Designer Catalog Generator + +# on: +# workflow_dispatch: +# inputs: +# target_platform: +# description: 'The Nuxeo server target platform to build the catalog for.' +# default: '11.3' +# required: true +# branch_name: +# description: 'The name of the Nuxeo Web UI branch to generate the catalog for.' +# default: 'maintenance-3.0.x' +# required: true +# classifier: +# description: 'Classifier to name a custom version of the catalog (used for testing purposes).' +# default: '' +# required: false + +# release: +# types: [published] + +# env: +# ARTIFACT_ID: view-designer-catalog +# GROUP_ID: org.nuxeo.web.ui.studio + +# jobs: +# catalog: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v3 + +# - run: git config --global user.name "nuxeo-webui-jx-bot" && git config --global user.email "webui@hyland.com" + +# - uses: actions/setup-node@v3 +# with: +# node-version: 14 + +# - uses: actions/setup-java@v3 +# with: +# distribution: 'zulu' +# java-version: '11' + +# - name: 'Update settings.xml with server configuration' +# run: | +# echo ' +# +# +# maven-internal +# external:* +# https://packages.nuxeo.com/repository/maven-internal/ +# +# +# +# +# nos-team +# nuxeo-webui-jx-bot +# ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} +# +# +# maven-internal +# ${{ secrets.PACKAGES_AUTH_USER }} +# ${{ secrets.PACKAGES_AUTH_TOKEN }} +# +# +# maven-public-releases +# ${{ secrets.PACKAGES_AUTH_USER }} +# ${{ secrets.PACKAGES_AUTH_TOKEN }} +# +# +# maven-public-snapshots +# ${{ secrets.PACKAGES_AUTH_USER }} +# ${{ secrets.PACKAGES_AUTH_TOKEN }} +# +# +# ' > ~/.m2/settings.xml + +# - name: Install libxml2-utils (xmllint) +# run: sudo apt-get update && sudo apt-get install -y libxml2-utils + +# - name: Setup parameters (release) +# if: github.event_name == 'release' +# working-directory: packages/nuxeo-designer-catalog +# run: | +# echo "BRANCH_NAME=v${GITHUB_HEAD_REF##*/}" >> $GITHUB_ENV +# echo "TARGET_PLATFORM=11.3" >> $GITHUB_ENV + +# - name: Setup parameters (workflow_dispatch) +# if: github.event_name == 'workflow_dispatch' +# run: | +# echo "BRANCH_NAME=${{ github.event.inputs.branch_name }}" >> $GITHUB_ENV +# echo "TARGET_PLATFORM=${{ github.event.inputs.target_platform }}" >> $GITHUB_ENV + +# - name: Install dependencies +# working-directory: packages/nuxeo-designer-catalog +# run: | +# npm install +# npm install -g gulp + +# - name: Generate catalog +# working-directory: packages/nuxeo-designer-catalog +# run: | +# gulp catalog --tp $TARGET_PLATFORM --webui-branch $BRANCH_NAME +# gulp hints --tp $TARGET_PLATFORM + +# - name: Bundle the catalog +# run: | +# sudo chmod +r pom.xml +# CATALOG_VERSION=$(xmllint --xpath "//*[local-name()='project']/*[local-name()='version']/text()" pom.xml)${{ github.event.inputs.classifier }} +# pushd packages/nuxeo-designer-catalog/data/applications/nuxeo/${{ env.TARGET_PLATFORM }} +# echo "CATALOG_VERSION=$CATALOG_VERSION" >> $GITHUB_ENV +# CATALOG_NAME=$ARTIFACT_ID-$CATALOG_VERSION.zip +# echo "CATALOG_NAME=$CATALOG_NAME" >> $GITHUB_ENV +# zip -q -r $CATALOG_NAME nuxeo-web-ui data hints catalog.json +# popd + +# - name: Archive catalog +# uses: actions/upload-artifact@v3 +# with: +# name: catalog +# path: packages/nuxeo-designer-catalog/data/applications/nuxeo/${{ env.TARGET_PLATFORM }}/${{ env.CATALOG_NAME }} + +# - name: Upload catalog +# working-directory: packages/nuxeo-designer-catalog +# run: | +# MVN_REPO_ID=maven-public-releases +# MVN_REPO_URL=https://packages.nuxeo.com/repository/maven-public-releases/ +# if [[ $CATALOG_VERSION == *-SNAPSHOT ]]; then +# MVN_REPO_ID=maven-public-snapshots +# MVN_REPO_URL=https://packages.nuxeo.com/repository/maven-public-snapshots/ +# fi + +# pushd data/applications/nuxeo/$TARGET_PLATFORM +# mvn deploy:deploy-file -Dfile=$CATALOG_NAME -DgroupId=$GROUP_ID -DartifactId=$ARTIFACT_ID -Dversion=$CATALOG_VERSION -Dpackaging=zip -DrepositoryId=$MVN_REPO_ID -Durl=$MVN_REPO_URL +# popd + +# - name: Checkout NOS repository +# uses: actions/checkout@v3 +# with: +# repository: nuxeo/nos +# token: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} +# path: nos + +# - name: Create pull request for catalog update in NOS +# working-directory: nos +# env: +# GH_TOKEN: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} +# run: | +# git checkout -b designer-catalog-update-$CATALOG_VERSION +# mvn versions:set-property -Dproperty=view.designer.catalog.11.3 -DnewVersion=$CATALOG_VERSION +# git add . +# git commit -m "Update Designer catalog with version $CATALOG_VERSION" +# git push origin designer-catalog-update-$CATALOG_VERSION +# gh pr create --base master --fill \ No newline at end of file diff --git a/.github/workflows/clean.yaml b/.github/workflows/clean.yaml index cb5c574208..d866d89e9e 100644 --- a/.github/workflows/clean.yaml +++ b/.github/workflows/clean.yaml @@ -1,62 +1,62 @@ -name: Cleanup - -on: - pull_request: - types: [closed, unlabeled] - branches: - - maintenance-3.0.x - - workflow_dispatch: - inputs: - branch_name: - description: 'The name of the branch to preview.' - default: 'maintenance-3.0.x' - required: true - caller_id: - description: 'run identifier' - default: 'maintenance-3.0.x' - type: string - required: false - -env: - GKE_CLUSTER: jx-prod - GKE_ZONE: us-east1-b - -jobs: - id: - name: Remote Caller ID ${{ github.event.inputs.caller_id }} - runs-on: ubuntu-latest - steps: - - name: ${{ github.event.inputs.id }} - run: echo run identifier ${{ github.event.inputs.id }} - cleanup: - needs: id - name: Preview - if: (github.event.action == 'unlabeled' && github.event.label.name == 'preview') || contains(github.event.pull_request.labels.*.name, 'preview') || github.event_name == 'workflow_dispatch' - runs-on: ubuntu-latest - steps: - - - name: Prepare environment (pull_request) - if: github.event_name == 'pull_request' - run: | - BRANCH_NAME=${GITHUB_HEAD_REF##*/} - echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV - - - name: Prepare environment (workflow_dispatch) - if: github.event_name == 'workflow_dispatch' - run: | - BRANCH_NAME=${{ github.event.inputs.branch_name }} - echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV - - - name: Get GKE credentials - uses: google-github-actions/get-gke-credentials@v0.2.1 - with: - cluster_name: ${{ env.GKE_CLUSTER }} - location: ${{ env.GKE_ZONE }} - project_id: ${{ secrets.GKE_PROJECT }} - credentials: ${{ secrets.GKE_SA_KEY }} - - - name: Cleanup preview namespace - continue-on-error: true - run: | - kubectl delete ns ${PREVIEW_NAMESPACE} +# name: Cleanup + +# on: +# pull_request: +# types: [closed, unlabeled] +# branches: +# - maintenance-3.0.x + +# workflow_dispatch: +# inputs: +# branch_name: +# description: 'The name of the branch to preview.' +# default: 'maintenance-3.0.x' +# required: true +# caller_id: +# description: 'run identifier' +# default: 'maintenance-3.0.x' +# type: string +# required: false + +# env: +# GKE_CLUSTER: jx-prod +# GKE_ZONE: us-east1-b + +# jobs: +# id: +# name: Remote Caller ID ${{ github.event.inputs.caller_id }} +# runs-on: ubuntu-latest +# steps: +# - name: ${{ github.event.inputs.id }} +# run: echo run identifier ${{ github.event.inputs.id }} +# cleanup: +# needs: id +# name: Preview +# if: (github.event.action == 'unlabeled' && github.event.label.name == 'preview') || contains(github.event.pull_request.labels.*.name, 'preview') || github.event_name == 'workflow_dispatch' +# runs-on: ubuntu-latest +# steps: + +# - name: Prepare environment (pull_request) +# if: github.event_name == 'pull_request' +# run: | +# BRANCH_NAME=${GITHUB_HEAD_REF##*/} +# echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV + +# - name: Prepare environment (workflow_dispatch) +# if: github.event_name == 'workflow_dispatch' +# run: | +# BRANCH_NAME=${{ github.event.inputs.branch_name }} +# echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV + +# - name: Get GKE credentials +# uses: google-github-actions/get-gke-credentials@v0.2.1 +# with: +# cluster_name: ${{ env.GKE_CLUSTER }} +# location: ${{ env.GKE_ZONE }} +# project_id: ${{ secrets.GKE_PROJECT }} +# credentials: ${{ secrets.GKE_SA_KEY }} + +# - name: Cleanup preview namespace +# continue-on-error: true +# run: | +# kubectl delete ns ${PREVIEW_NAMESPACE} diff --git a/.github/workflows/crowdin.yaml b/.github/workflows/crowdin.yaml index e16599742d..05ef68f08b 100644 --- a/.github/workflows/crowdin.yaml +++ b/.github/workflows/crowdin.yaml @@ -1,59 +1,59 @@ -# Workflow that syncronizes translations from Crowdin -name: Crowdin Sync - -on: - # Check for updates every day - schedule: - - cron: '0 0 * * *' - - # Sync when a commit is done on maintenance-3.0.x - push: - branches: - - maintenance-3.0.x - paths: - - 'i18n/messages.json' +# # Workflow that syncronizes translations from Crowdin +# name: Crowdin Sync + +# on: +# # Check for updates every day +# schedule: +# - cron: '0 0 * * *' + +# # Sync when a commit is done on maintenance-3.0.x +# push: +# branches: +# - maintenance-3.0.x +# paths: +# - 'i18n/messages.json' - # Manually trigger the workflow - workflow_dispatch: +# # Manually trigger the workflow +# workflow_dispatch: -jobs: - crowdin: - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Crowdin Action - uses: crowdin/github-action@v1 - with: - # Tokens - project_id: ${{ secrets.CROWDIN_PROJECT_ID }} - token: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - # Load external configuration file (to support translation rename) - config: crowdin-conf.yml - - # Upload sources for translation - upload_sources: true - - # Auto-approve reference sentences we are pushing (english) - auto_approve_imported: true - - # Name of the branch where to merge the translations - localization_branch_name: crowdin-translations-update - create_pull_request: true - pull_request_title: 'New Crowdin translations' - pull_request_body: 'New Crowdin pull request with translations' - - # The commit message - commit_message: 'Automatic update of translations from Crowdin' - - # Automatically download all the new translations - download_translations: true - - # User properties - github_user_name: nuxeo-webui-jx-bot - github_user_email: webui@hyland.com - - env: - GITHUB_TOKEN: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} +# jobs: +# crowdin: +# runs-on: ubuntu-latest + +# steps: +# - name: Checkout +# uses: actions/checkout@v3 + +# - name: Crowdin Action +# uses: crowdin/github-action@v1 +# with: +# # Tokens +# project_id: ${{ secrets.CROWDIN_PROJECT_ID }} +# token: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} +# # Load external configuration file (to support translation rename) +# config: crowdin-conf.yml + +# # Upload sources for translation +# upload_sources: true + +# # Auto-approve reference sentences we are pushing (english) +# auto_approve_imported: true + +# # Name of the branch where to merge the translations +# localization_branch_name: crowdin-translations-update +# create_pull_request: true +# pull_request_title: 'New Crowdin translations' +# pull_request_body: 'New Crowdin pull request with translations' + +# # The commit message +# commit_message: 'Automatic update of translations from Crowdin' + +# # Automatically download all the new translations +# download_translations: true + +# # User properties +# github_user_name: nuxeo-webui-jx-bot +# github_user_email: webui@hyland.com + +# env: +# GITHUB_TOKEN: ${{ secrets.WEBUI_JX_BOT_GITHUB_ACTIONS_TOKEN }} diff --git a/.github/workflows/ftest.yaml b/.github/workflows/ftest.yaml index 4e4a2d9fbc..7e136b0dae 100644 --- a/.github/workflows/ftest.yaml +++ b/.github/workflows/ftest.yaml @@ -45,6 +45,12 @@ jobs: distribution: 'zulu' java-version: '11' + - uses: actions/setup-node@v3 + with: + registry-url: 'https://packages.nuxeo.com/repository/npm-public/' + scope: '@nuxeo' + node-version: 18 + - name: Install google chrome run: | wget -q https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_114.0.5735.90-1_amd64.deb diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 89dfa685fb..9ad0ad1939 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -1,42 +1,42 @@ -name: Lint +# name: Lint -on: - pull_request: - branches: - - maintenance-3.0.x - workflow_call: - inputs: - branch: - description: 'The current branch' - default: maintenance-3.0.x - type: string - required: false - secrets: - NPM_PACKAGES_TOKEN: - description: 'NPM_PACKAGES_TOKEN' - required: true +# on: +# pull_request: +# branches: +# - maintenance-3.0.x +# workflow_call: +# inputs: +# branch: +# description: 'The current branch' +# default: maintenance-3.0.x +# type: string +# required: false +# secrets: +# NPM_PACKAGES_TOKEN: +# description: 'NPM_PACKAGES_TOKEN' +# required: true -env: - BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} +# env: +# BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} -jobs: - lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - ref: ${{ env.BRANCH_NAME }} +# jobs: +# lint: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v2 +# with: +# ref: ${{ env.BRANCH_NAME }} - - uses: actions/setup-node@v3 - with: - registry-url: 'https://packages.nuxeo.com/repository/npm-public/' - node-version: 14 - scope: '@nuxeo' +# - uses: actions/setup-node@v3 +# with: +# registry-url: 'https://packages.nuxeo.com/repository/npm-public/' +# node-version: 14 +# scope: '@nuxeo' - - name: Install - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: npm install +# - name: Install +# env: +# NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} +# run: npm install - - name: Lint - run: npm run lint +# - name: Lint +# run: npm run lint diff --git a/.github/workflows/preview.yaml b/.github/workflows/preview.yaml index 5c8ef97767..07e071b7a5 100644 --- a/.github/workflows/preview.yaml +++ b/.github/workflows/preview.yaml @@ -1,197 +1,197 @@ -name: Preview - -on: - pull_request: - types: [opened, synchronize, reopened, labeled] - branches: - - maintenance-3.0.x - - workflow_dispatch: - inputs: - branch_name: - description: 'The name of the branch to preview.' - default: 'maintenance-3.0.x' - required: true - caller_id: - description: 'run identifier' - default: 'maintenance-3.0.x' - type: string - required: false - -env: - DOCKER_REGISTRY: us-east1-docker.pkg.dev - DOCKER_IMAGE: ${{ secrets.GKE_PROJECT }}/webui/nuxeo-web-ui - GKE_CLUSTER: jx-prod - GKE_ZONE: us-east1-b - -jobs: - id: - name: Remote Caller ID ${{ github.event.inputs.caller_id }} - runs-on: ubuntu-latest - steps: - - name: ${{ github.event.inputs.id }} - run: echo run identifier ${{ github.event.inputs.id }} - preview: - needs: id - name: Setup - outputs: - url: ${{ steps.preview.outputs.url }} - if: (github.event.action == 'labeled' && github.event.label.name == 'preview') || contains(github.event.pull_request.labels.*.name, 'preview') || github.event_name == 'workflow_dispatch' - runs-on: ubuntu-latest - steps: - - uses: actions/setup-node@v3 - with: - node-version: 14 - registry-url: 'https://packages.nuxeo.com/repository/npm-public/' - scope: '@nuxeo' - - - name: Setup branch name (pull_request) - if: github.event_name == 'pull_request' - run: | - BRANCH_NAME=${GITHUB_HEAD_REF##*/} - echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV - - - name: Setup branch name (workflow_dispatch) - if: github.event_name == 'workflow_dispatch' - run: | - BRANCH_NAME=${{ github.event.inputs.branch_name }} - echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV - - - name: Determine nuxeo-web-ui branch to use - uses: nuxeo/ui-team-gh-actions/get-branch@ca09d5c52a62e297502d3572c36d813be927982a - id: pick_nuxeo_web_ui_branch - with: - repository: nuxeo/nuxeo-web-ui - branch: ${BRANCH_NAME} - default-branch: maintenance-3.0.x - - - uses: actions/checkout@v3 - with: - ref: ${{ steps.pick_nuxeo_web_ui_branch.outputs.branch }} - - - name: Prepare environment - run: | - echo "VERSION=$(npx -c 'echo "$npm_package_version"')-$BRANCH_NAME" >> $GITHUB_ENV - echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV - - - name: Determine nuxeo-elements branch to use - id: pick_nuxeo_elements_branch - uses: nuxeo/ui-team-gh-actions/get-branch@ca09d5c52a62e297502d3572c36d813be927982a - with: - repository: nuxeo/nuxeo-elements - branch: ${BRANCH_NAME} - default-branch: maintenance-3.0.x - - - name: Checkout the nuxeo-elements repo - uses: actions/checkout@v2 - with: - repository: nuxeo/nuxeo-elements - path: nuxeo-elements - fetch-depth: 1 - ref: ${{ steps.pick_nuxeo_elements_branch.outputs.branch }} - - - name: Install - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: | - npm install nuxeo-elements/core - npm install nuxeo-elements/ui - npm install nuxeo-elements/dataviz - npm install - - - name: Webpack build - run: | - npm run build - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - - name: Login to DockerHub - uses: docker/login-action@v1 - with: - registry: ${{ env.DOCKER_REGISTRY }} - username: _json_key - password: ${{ secrets.GKE_SA_KEY }} - - - name: Build and push server image - uses: docker/build-push-action@v2 - with: - context: server - pull: true - push: true - file: server/Dockerfile - tags: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}/server:${{ env.VERSION }} - - - name: Build and push image - uses: docker/build-push-action@v2 - with: - context: . - pull: true - push: true - file: Dockerfile - tags: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}:${{ env.VERSION }} - build-args: SERVER_IMAGE=${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}/server:${{ env.VERSION }} - - - name: Get GKE credentials - uses: google-github-actions/get-gke-credentials@v0.2.1 - with: - cluster_name: ${{ env.GKE_CLUSTER }} - location: ${{ env.GKE_ZONE }} - project_id: ${{ secrets.GKE_PROJECT }} - credentials: ${{ secrets.GKE_SA_KEY }} - - - name: Check preview namespace - id: preview_ns - run: | - echo ::set-output name=exists::$(kubectl get namespace ${PREVIEW_NAMESPACE}) - - - name: Create preview namespace - if: ${{ !steps.preview_ns.outputs.exists }} - run: | - kubectl create namespace ${PREVIEW_NAMESPACE} - - - name: Install preview - id: preview - working-directory: ./charts/preview - run: | - # add helm jx repo - helm repo add jx https://jenkins-x-charts.github.io/v2/ - - # substitute env variables in values.yaml - mv values.yaml values.yaml.tosubst - envsubst < values.yaml.tosubst > values.yaml - - # update helm deps - helm dependency update . - - # install - helm upgrade --install --namespace ${PREVIEW_NAMESPACE} ${PREVIEW_NAMESPACE} . - - # ensure the deployment is restarted to pull the new preview image - kubectl rollout restart deployment ${PREVIEW_NAMESPACE}-preview --namespace ${PREVIEW_NAMESPACE} +# name: Preview + +# on: +# pull_request: +# types: [opened, synchronize, reopened, labeled] +# branches: +# - maintenance-3.0.x + +# workflow_dispatch: +# inputs: +# branch_name: +# description: 'The name of the branch to preview.' +# default: 'maintenance-3.0.x' +# required: true +# caller_id: +# description: 'run identifier' +# default: 'maintenance-3.0.x' +# type: string +# required: false + +# env: +# DOCKER_REGISTRY: us-east1-docker.pkg.dev +# DOCKER_IMAGE: ${{ secrets.GKE_PROJECT }}/webui/nuxeo-web-ui +# GKE_CLUSTER: jx-prod +# GKE_ZONE: us-east1-b + +# jobs: +# id: +# name: Remote Caller ID ${{ github.event.inputs.caller_id }} +# runs-on: ubuntu-latest +# steps: +# - name: ${{ github.event.inputs.id }} +# run: echo run identifier ${{ github.event.inputs.id }} +# preview: +# needs: id +# name: Setup +# outputs: +# url: ${{ steps.preview.outputs.url }} +# if: (github.event.action == 'labeled' && github.event.label.name == 'preview') || contains(github.event.pull_request.labels.*.name, 'preview') || github.event_name == 'workflow_dispatch' +# runs-on: ubuntu-latest +# steps: +# - uses: actions/setup-node@v3 +# with: +# node-version: 14 +# registry-url: 'https://packages.nuxeo.com/repository/npm-public/' +# scope: '@nuxeo' + +# - name: Setup branch name (pull_request) +# if: github.event_name == 'pull_request' +# run: | +# BRANCH_NAME=${GITHUB_HEAD_REF##*/} +# echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV + +# - name: Setup branch name (workflow_dispatch) +# if: github.event_name == 'workflow_dispatch' +# run: | +# BRANCH_NAME=${{ github.event.inputs.branch_name }} +# echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV + +# - name: Determine nuxeo-web-ui branch to use +# uses: nuxeo/ui-team-gh-actions/get-branch@ca09d5c52a62e297502d3572c36d813be927982a +# id: pick_nuxeo_web_ui_branch +# with: +# repository: nuxeo/nuxeo-web-ui +# branch: ${BRANCH_NAME} +# default-branch: maintenance-3.0.x + +# - uses: actions/checkout@v3 +# with: +# ref: ${{ steps.pick_nuxeo_web_ui_branch.outputs.branch }} + +# - name: Prepare environment +# run: | +# echo "VERSION=$(npx -c 'echo "$npm_package_version"')-$BRANCH_NAME" >> $GITHUB_ENV +# echo "PREVIEW_NAMESPACE=$(printf '%.53s' $(echo nuxeo-web-ui-$(echo $BRANCH_NAME | sed 's/[^[:alnum:]-]/-/g' | tr '[:upper:]' '[:lower:]')))" >> $GITHUB_ENV + +# - name: Determine nuxeo-elements branch to use +# id: pick_nuxeo_elements_branch +# uses: nuxeo/ui-team-gh-actions/get-branch@ca09d5c52a62e297502d3572c36d813be927982a +# with: +# repository: nuxeo/nuxeo-elements +# branch: ${BRANCH_NAME} +# default-branch: maintenance-3.0.x + +# - name: Checkout the nuxeo-elements repo +# uses: actions/checkout@v2 +# with: +# repository: nuxeo/nuxeo-elements +# path: nuxeo-elements +# fetch-depth: 1 +# ref: ${{ steps.pick_nuxeo_elements_branch.outputs.branch }} + +# - name: Install +# env: +# NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} +# run: | +# npm install nuxeo-elements/core +# npm install nuxeo-elements/ui +# npm install nuxeo-elements/dataviz +# npm install + +# - name: Webpack build +# run: | +# npm run build + +# - name: Set up Docker Buildx +# uses: docker/setup-buildx-action@v1 + +# - name: Login to DockerHub +# uses: docker/login-action@v1 +# with: +# registry: ${{ env.DOCKER_REGISTRY }} +# username: _json_key +# password: ${{ secrets.GKE_SA_KEY }} + +# - name: Build and push server image +# uses: docker/build-push-action@v2 +# with: +# context: server +# pull: true +# push: true +# file: server/Dockerfile +# tags: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}/server:${{ env.VERSION }} + +# - name: Build and push image +# uses: docker/build-push-action@v2 +# with: +# context: . +# pull: true +# push: true +# file: Dockerfile +# tags: ${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}:${{ env.VERSION }} +# build-args: SERVER_IMAGE=${{ env.DOCKER_REGISTRY }}/${{ env.DOCKER_IMAGE }}/server:${{ env.VERSION }} + +# - name: Get GKE credentials +# uses: google-github-actions/get-gke-credentials@v0.2.1 +# with: +# cluster_name: ${{ env.GKE_CLUSTER }} +# location: ${{ env.GKE_ZONE }} +# project_id: ${{ secrets.GKE_PROJECT }} +# credentials: ${{ secrets.GKE_SA_KEY }} + +# - name: Check preview namespace +# id: preview_ns +# run: | +# echo ::set-output name=exists::$(kubectl get namespace ${PREVIEW_NAMESPACE}) + +# - name: Create preview namespace +# if: ${{ !steps.preview_ns.outputs.exists }} +# run: | +# kubectl create namespace ${PREVIEW_NAMESPACE} + +# - name: Install preview +# id: preview +# working-directory: ./charts/preview +# run: | +# # add helm jx repo +# helm repo add jx https://jenkins-x-charts.github.io/v2/ + +# # substitute env variables in values.yaml +# mv values.yaml values.yaml.tosubst +# envsubst < values.yaml.tosubst > values.yaml + +# # update helm deps +# helm dependency update . + +# # install +# helm upgrade --install --namespace ${PREVIEW_NAMESPACE} ${PREVIEW_NAMESPACE} . + +# # ensure the deployment is restarted to pull the new preview image +# kubectl rollout restart deployment ${PREVIEW_NAMESPACE}-preview --namespace ${PREVIEW_NAMESPACE} - echo "PREVIEW_URL=https://preview-${PREVIEW_NAMESPACE}.webui.dev.nuxeo.com" >> $GITHUB_ENV - - echo ::set-output name=url::"https://preview-${PREVIEW_NAMESPACE}.webui.dev.nuxeo.com" - - - uses: actions/github-script@0.9.0 - if: github.event_name == 'pull_request' - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - script: | - github.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: `:star: PR built and available [here](${process.env.PREVIEW_URL})` - }) - - result: - name: "Result: ${{ needs.preview.outputs.url }}" - needs: preview - runs-on: ubuntu-latest - if: github.event_name == 'workflow_dispatch' - steps: - - name: "Result: ${{ needs.preview.outputs.url }}" - run: | - echo ${{ needs.preview.outputs.url }} +# echo "PREVIEW_URL=https://preview-${PREVIEW_NAMESPACE}.webui.dev.nuxeo.com" >> $GITHUB_ENV + +# echo ::set-output name=url::"https://preview-${PREVIEW_NAMESPACE}.webui.dev.nuxeo.com" + +# - uses: actions/github-script@0.9.0 +# if: github.event_name == 'pull_request' +# with: +# github-token: ${{ secrets.GITHUB_TOKEN }} +# script: | +# github.issues.createComment({ +# issue_number: context.issue.number, +# owner: context.repo.owner, +# repo: context.repo.repo, +# body: `:star: PR built and available [here](${process.env.PREVIEW_URL})` +# }) + +# result: +# name: "Result: ${{ needs.preview.outputs.url }}" +# needs: preview +# runs-on: ubuntu-latest +# if: github.event_name == 'workflow_dispatch' +# steps: +# - name: "Result: ${{ needs.preview.outputs.url }}" +# run: | +# echo ${{ needs.preview.outputs.url }} diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 5f3cfedd17..6f542fa715 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,48 +1,48 @@ -name: Test +# name: Test -on: - pull_request: - branches: - - maintenance-3.0.x - workflow_call: - inputs: - branch: - description: 'The current branch' - default: maintenance-3.0.x - type: string - required: false - secrets: - NPM_PACKAGES_TOKEN: - description: 'NPM_PACKAGES_TOKEN' - required: true - SAUCE_ACCESS_KEY: - description: 'SAUCE_ACCESS_KEY' - required: true +# on: +# pull_request: +# branches: +# - maintenance-3.0.x +# workflow_call: +# inputs: +# branch: +# description: 'The current branch' +# default: maintenance-3.0.x +# type: string +# required: false +# secrets: +# NPM_PACKAGES_TOKEN: +# description: 'NPM_PACKAGES_TOKEN' +# required: true +# SAUCE_ACCESS_KEY: +# description: 'SAUCE_ACCESS_KEY' +# required: true -env: - BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} +# env: +# BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} -jobs: - unit-test: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - with: - ref: ${{ env.BRANCH_NAME }} +# jobs: +# unit-test: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v2 +# with: +# ref: ${{ env.BRANCH_NAME }} - - uses: actions/setup-node@v3 - with: - registry-url: 'https://packages.nuxeo.com/repository/npm-public/' - scope: '@nuxeo' - node-version: 14 +# - uses: actions/setup-node@v3 +# with: +# registry-url: 'https://packages.nuxeo.com/repository/npm-public/' +# scope: '@nuxeo' +# node-version: 14 - - name: Install - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: npm install +# - name: Install +# env: +# NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} +# run: npm install - - name: Unit tests - env: - SAUCE_USERNAME: nuxeo-web-ui - SAUCE_ACCESS_KEY: ${{ secrets.SAUCE_ACCESS_KEY }} - run: npm run test +# - name: Unit tests +# env: +# SAUCE_USERNAME: nuxeo-web-ui +# SAUCE_ACCESS_KEY: ${{ secrets.SAUCE_ACCESS_KEY }} +# run: npm run test diff --git a/.github/workflows/veracode.yml b/.github/workflows/veracode.yml index 9b3ab5e9d3..b6c812fb10 100644 --- a/.github/workflows/veracode.yml +++ b/.github/workflows/veracode.yml @@ -1,193 +1,193 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. +# # This workflow uses actions that are not certified by GitHub. +# # They are provided by a third-party and are governed by +# # separate terms of service, privacy policy, and support +# # documentation. -# This workflow will initiate a Veracode Static Analysis Pipeline scan, return a results.json and convert to SARIF for upload as a code scanning alert +# # This workflow will initiate a Veracode Static Analysis Pipeline scan, return a results.json and convert to SARIF for upload as a code scanning alert -name: Veracode +# name: Veracode -on: - pull_request: - # The branches below must be a subset of the branches above - branches: [ "maintenance-3.0.x" ] - schedule: - # At 01:00 on Sunday - - cron: '0 1 * * SUN' - workflow_call: - inputs: - branch: - description: 'The branch to Analyze' - type: string - required: true - secrets: - NPM_PACKAGES_TOKEN: - description: 'NPM_PACKAGES_TOKEN' - required: true - PACKAGES_AUTH_USER: - description: 'PACKAGES_AUTH_USER' - required: true - PACKAGES_AUTH_TOKEN: - description: 'PACKAGES_AUTH_TOKEN' - required: true - VERACODE_API_ID: - description: 'VERACODE_API_ID' - required: true - VERACODE_API_KEY: - description: 'VERACODE_API_KEY' - required: true +# on: +# pull_request: +# # The branches below must be a subset of the branches above +# branches: [ "maintenance-3.0.x" ] +# schedule: +# # At 01:00 on Sunday +# - cron: '0 1 * * SUN' +# workflow_call: +# inputs: +# branch: +# description: 'The branch to Analyze' +# type: string +# required: true +# secrets: +# NPM_PACKAGES_TOKEN: +# description: 'NPM_PACKAGES_TOKEN' +# required: true +# PACKAGES_AUTH_USER: +# description: 'PACKAGES_AUTH_USER' +# required: true +# PACKAGES_AUTH_TOKEN: +# description: 'PACKAGES_AUTH_TOKEN' +# required: true +# VERACODE_API_ID: +# description: 'VERACODE_API_ID' +# required: true +# VERACODE_API_KEY: +# description: 'VERACODE_API_KEY' +# required: true -env: - REFERENCE_BRANCH: maintenance-3.0.x - NPM_REPOSITORY: https://packages.nuxeo.com/repository/npm-public/ - BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} +# env: +# REFERENCE_BRANCH: maintenance-3.0.x +# NPM_REPOSITORY: https://packages.nuxeo.com/repository/npm-public/ +# BRANCH_NAME: ${{ github.head_ref || inputs.branch || 'maintenance-3.0.x' }} -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -permissions: - contents: read +# # A workflow run is made up of one or more jobs that can run sequentially or in parallel +# permissions: +# contents: read -jobs: - # This workflow contains a job to build and submit pipeline scan, you will need to customize the build process accordingly and make sure the artifact you build is used as the file input to the pipeline scan file parameter - sast-scan: - # The type of runner that the job will run on - permissions: - contents: read # for actions/checkout to fetch code - security-events: write # for github/codeql-action/upload-sarif to upload SARIF results - actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status - runs-on: ubuntu-latest - steps: +# jobs: +# # This workflow contains a job to build and submit pipeline scan, you will need to customize the build process accordingly and make sure the artifact you build is used as the file input to the pipeline scan file parameter +# sast-scan: +# # The type of runner that the job will run on +# permissions: +# contents: read # for actions/checkout to fetch code +# security-events: write # for github/codeql-action/upload-sarif to upload SARIF results +# actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status +# runs-on: ubuntu-latest +# steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it and copies all sources into ZIP file for submitting for analysis. Replace this section with your applications build steps - - uses: actions/checkout@v2 - with: - ref: ${{ env.BRANCH_NAME }} +# # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it and copies all sources into ZIP file for submitting for analysis. Replace this section with your applications build steps +# - uses: actions/checkout@v2 +# with: +# ref: ${{ env.BRANCH_NAME }} - - uses: actions/setup-node@v1 - with: - registry-url: ${{ env.NPM_REPOSITORY }} - node-version: 14 - scope: '@nuxeo' +# - uses: actions/setup-node@v1 +# with: +# registry-url: ${{ env.NPM_REPOSITORY }} +# node-version: 14 +# scope: '@nuxeo' - - uses: actions/setup-java@v2 - with: - distribution: 'zulu' - java-version: '11' +# - uses: actions/setup-java@v2 +# with: +# distribution: 'zulu' +# java-version: '11' - - name: Determine nuxeo-elements branch to link - id: pick_nuxeo_elements_branch - run: | - if git ls-remote --exit-code --heads https://github.com/nuxeo/nuxeo-elements ${{ env.BRANCH_NAME }}; then - echo ::set-output name=branch::${{ env.BRANCH_NAME }} - else - echo ::set-output name=branch::${{ env.REFERENCE_BRANCH }} - fi - - name: Install Web UI - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_PACKAGES_TOKEN }} - run: | - npm install - pushd packages/nuxeo-web-ui-ftest - npm install - popd - - name: Checkout the nuxeo-elements repo - uses: actions/checkout@v2 - with: - repository: nuxeo/nuxeo-elements - path: nuxeo-elements - fetch-depth: 1 - ref: ${{ steps.pick_nuxeo_elements_branch.outputs.branch }} +# - name: Determine nuxeo-elements branch to link +# id: pick_nuxeo_elements_branch +# run: | +# if git ls-remote --exit-code --heads https://github.com/nuxeo/nuxeo-elements ${{ env.BRANCH_NAME }}; then +# echo ::set-output name=branch::${{ env.BRANCH_NAME }} +# else +# echo ::set-output name=branch::${{ env.REFERENCE_BRANCH }} +# fi +# - name: Install Web UI +# env: +# NODE_AUTH_TOKEN: ${{ secrets.NPM_PACKAGES_TOKEN }} +# run: | +# npm install +# pushd packages/nuxeo-web-ui-ftest +# npm install +# popd +# - name: Checkout the nuxeo-elements repo +# uses: actions/checkout@v2 +# with: +# repository: nuxeo/nuxeo-elements +# path: nuxeo-elements +# fetch-depth: 1 +# ref: ${{ steps.pick_nuxeo_elements_branch.outputs.branch }} - - name: Pack Elements modules - run: | - pushd nuxeo-elements - pushd core - echo "ELEMENTS_CORE=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV - popd - pushd ui - echo "ELEMENTS_UI=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV - popd - pushd dataviz - echo "ELEMENTS_DATAVIZ=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV - popd - pushd testing-helpers - echo "ELEMENTS_HELPERS=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV - popd - popd - - name: Link elements to Web UI - run: | - npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/core/${ELEMENTS_CORE} - npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/ui/${ELEMENTS_UI} - npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/dataviz/${ELEMENTS_DATAVIZ} - npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/testing-helpers/${ELEMENTS_HELPERS} - - name: 'Update settings.xml with server configuration' - run: | - echo ' - - - maven-internal - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} - - - ' > ~/.m2/settings.xml - - name: Nuxeo package build - run: mvn install -DskipInstall - - name: Archive packages - uses: actions/upload-artifact@v2 - with: - name: packages - path: | - plugin/web-ui/marketplace/target/nuxeo-web-ui-marketplace-*.zip +# - name: Pack Elements modules +# run: | +# pushd nuxeo-elements +# pushd core +# echo "ELEMENTS_CORE=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV +# popd +# pushd ui +# echo "ELEMENTS_UI=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV +# popd +# pushd dataviz +# echo "ELEMENTS_DATAVIZ=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV +# popd +# pushd testing-helpers +# echo "ELEMENTS_HELPERS=$(npm pack 2>&1 | tail -1)" >> $GITHUB_ENV +# popd +# popd +# - name: Link elements to Web UI +# run: | +# npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/core/${ELEMENTS_CORE} +# npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/ui/${ELEMENTS_UI} +# npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/dataviz/${ELEMENTS_DATAVIZ} +# npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/testing-helpers/${ELEMENTS_HELPERS} +# - name: 'Update settings.xml with server configuration' +# run: | +# echo ' +# +# +# maven-internal +# ${{ secrets.PACKAGES_AUTH_USER }} +# ${{ secrets.PACKAGES_AUTH_TOKEN }} +# +# +# ' > ~/.m2/settings.xml +# - name: Nuxeo package build +# run: mvn install -DskipInstall +# - name: Archive packages +# uses: actions/upload-artifact@v2 +# with: +# name: packages +# path: | +# plugin/web-ui/marketplace/target/nuxeo-web-ui-marketplace-*.zip - # download the Veracode Static Analysis Pipeline scan jar - - run: curl --silent --show-error --fail -O https://downloads.veracode.com/securityscan/pipeline-scan-LATEST.zip - - run: unzip -o pipeline-scan-LATEST.zip - - name: Code Scanning - id: code_scanning - run: java -jar pipeline-scan.jar --veracode_api_id "${{secrets.VERACODE_API_ID}}" --veracode_api_key "${{secrets.VERACODE_API_KEY}}" --fail_on_severity="Very High, High" --summary_output=true --file plugin/web-ui/marketplace/target/nuxeo-web-ui-marketplace-*.zip - continue-on-error: true - - name: Convert pipeline scan output to SARIF format - id: convert - uses: Veracode/veracode-pipeline-scan-results-to-sarif@v1.0.5 - with: - pipeline-results-json: results.json - output-results-sarif: veracode-results.sarif - finding-rule-level: "4:3:0" - - name: Upload SARIF file to repository - uses: github/codeql-action/upload-sarif@v2 - with: - # Path to SARIF file relative to the root of the repository - sarif_file: veracode-results.sarif - - name: Slack notification - if: (github.event_name == 'pull_request' || github.event_name == 'schedule') - uses: slackapi/slack-github-action@v1.23.0 - env: - REPO_URL: ${{ github.server_url }}/${{ github.repository }} - SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} - SLACK_CHANNEL_ID: ${{ secrets.SLACK_CHANNEL_ID }} - with: - channel-id: ${{ env.SLACK_CHANNEL_ID }} - payload: | - { - "text": "<${{ env.REPO_URL }}/actions/runs/${{ github.run_id }}|Code scanning> ${{ steps.code_scanning.outcome }} in nuxeo/nuxeo-web-ui <${{ env.REPO_URL }}/commit/${{ github.sha }}|${{ github.ref_name }}>", - "blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "<${{ env.REPO_URL }}/actions/runs/${{ github.run_id }}|Code scanning> ${{ job.status }} in nuxeo/nuxeo-WEB-UI <${{ env.REPO_URL }}/commit/${{ github.sha }}|${{ github.ref_name }}>" - } - } - ] - } - - name: Send scan result summary to slack - uses: crederauk/slack-workflow-summary@v1.2.2 - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }} - - name: Send scan result file to slack - uses: adrey/slack-file-upload-action@master - with: - token: ${{ secrets.SLACK_BOT_TOKEN }} - path: results.txt - channel: ${{ secrets.SLACK_CHANNEL_ID }} +# # download the Veracode Static Analysis Pipeline scan jar +# - run: curl --silent --show-error --fail -O https://downloads.veracode.com/securityscan/pipeline-scan-LATEST.zip +# - run: unzip -o pipeline-scan-LATEST.zip +# - name: Code Scanning +# id: code_scanning +# run: java -jar pipeline-scan.jar --veracode_api_id "${{secrets.VERACODE_API_ID}}" --veracode_api_key "${{secrets.VERACODE_API_KEY}}" --fail_on_severity="Very High, High" --summary_output=true --file plugin/web-ui/marketplace/target/nuxeo-web-ui-marketplace-*.zip +# continue-on-error: true +# - name: Convert pipeline scan output to SARIF format +# id: convert +# uses: Veracode/veracode-pipeline-scan-results-to-sarif@v1.0.5 +# with: +# pipeline-results-json: results.json +# output-results-sarif: veracode-results.sarif +# finding-rule-level: "4:3:0" +# - name: Upload SARIF file to repository +# uses: github/codeql-action/upload-sarif@v2 +# with: +# # Path to SARIF file relative to the root of the repository +# sarif_file: veracode-results.sarif +# - name: Slack notification +# if: (github.event_name == 'pull_request' || github.event_name == 'schedule') +# uses: slackapi/slack-github-action@v1.23.0 +# env: +# REPO_URL: ${{ github.server_url }}/${{ github.repository }} +# SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} +# SLACK_CHANNEL_ID: ${{ secrets.SLACK_CHANNEL_ID }} +# with: +# channel-id: ${{ env.SLACK_CHANNEL_ID }} +# payload: | +# { +# "text": "<${{ env.REPO_URL }}/actions/runs/${{ github.run_id }}|Code scanning> ${{ steps.code_scanning.outcome }} in nuxeo/nuxeo-web-ui <${{ env.REPO_URL }}/commit/${{ github.sha }}|${{ github.ref_name }}>", +# "blocks": [ +# { +# "type": "section", +# "text": { +# "type": "mrkdwn", +# "text": "<${{ env.REPO_URL }}/actions/runs/${{ github.run_id }}|Code scanning> ${{ job.status }} in nuxeo/nuxeo-WEB-UI <${{ env.REPO_URL }}/commit/${{ github.sha }}|${{ github.ref_name }}>" +# } +# } +# ] +# } +# - name: Send scan result summary to slack +# uses: crederauk/slack-workflow-summary@v1.2.2 +# with: +# github-token: ${{ secrets.GITHUB_TOKEN }} +# slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }} +# - name: Send scan result file to slack +# uses: adrey/slack-file-upload-action@master +# with: +# token: ${{ secrets.SLACK_BOT_TOKEN }} +# path: results.txt +# channel: ${{ secrets.SLACK_CHANNEL_ID }} diff --git a/package.json b/package.json index 7895ed5d38..9ce81a49d4 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "license": "Apache-2.0", "vendor": "Nuxeo", "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" }, "devDependencies": { "@cucumber/cucumber": "^7.0.0", diff --git a/packages/nuxeo-web-ui-ftest/package.json b/packages/nuxeo-web-ui-ftest/package.json index 6d38af0dc4..9e885f0401 100644 --- a/packages/nuxeo-web-ui-ftest/package.json +++ b/packages/nuxeo-web-ui-ftest/package.json @@ -11,7 +11,7 @@ }, "license": "Apache-2.0", "engines": { - "node": ">=10.23.0 <15.0.0" + "node": ">=18" }, "dependencies": { "@babel/core": "^7.15.0", From f3fabf6c64e223bef48b9745f84a4363d90020ad Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Thu, 21 Dec 2023 11:54:35 +0530 Subject: [PATCH 2/7] test --- package.json | 17 ++++++++++------- packages/nuxeo-web-ui-ftest/package.json | 23 ++++++++++------------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/package.json b/package.json index 9ce81a49d4..839a2164c1 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,11 @@ "engines": { "node": ">=18.0.0" }, + "config": { + "workboxCli": "3.6.3" + }, "devDependencies": { - "@cucumber/cucumber": "^7.0.0", + "@cucumber/cucumber": "^9.5.1", "@nuxeo/nuxeo-web-ui-ftest": "file:./packages/nuxeo-web-ui-ftest", "@nuxeo/testing-helpers": "~3.0.30-rc.0", "@open-wc/eslint-config": "^0.3.0", @@ -55,9 +58,9 @@ "style-loader": "^2.0.0", "url-loader": "^4.1.1", "vm-browserify": "^1.1.2", - "wdio-chromedriver-service": "^8.0.0", + "wdio-chromedriver-service": "^8.1.1", "wdio-cucumber-reporter": "0.0.2", - "wdio-json-reporter": "^2.0.0", + "wdio-json-reporter": "^3.0.0", "webpack": "^5.3.0", "webpack-bundle-analyzer": "^3.9.0", "webpack-cli": "^4.1.0", @@ -74,7 +77,7 @@ "prebuild": "npm-run-all prepare:*", "prepare:tmp": "rm -rf .tmp", "prepare:i18n": "node scripts/merge-messages.js", - "prepare:workbox": "workbox copyLibraries .tmp && mv .tmp/workbox-v$npm_package_devDependencies_workbox_cli .tmp/workbox", + "prepare:workbox": "workbox copyLibraries .tmp && mv .tmp/workbox-v${npm_package_config_workboxCli} .tmp/workbox", "build": "webpack --env production", "postbuild": "npm-run-all fix:*", "fix:preview": "replace 'elements/' '${window.location.pathname}/' dist/index.html", @@ -174,7 +177,7 @@ "@polymer/paper-toolbar": "^3.0.1", "@polymer/paper-tooltip": "^3.0.1", "@polymer/polymer": "^3.5.1", - "@wdio/allure-reporter": "^7.2.0", + "@wdio/allure-reporter": "^7.32.0", "@webcomponents/html-imports": "^1.2.0", "aws-sdk": "^2.420.0", "dotenv": "^8.0.0", @@ -190,7 +193,7 @@ "three": "~0.125.0", "uuid": "^3.3.2", "web-animations-js": "^2.3.1", - "webdriverio": "^7.16.16" + "webdriverio": "^8.20.4" }, "husky": { "hooks": { @@ -203,4 +206,4 @@ "eslint --fix" ] } -} +} \ No newline at end of file diff --git a/packages/nuxeo-web-ui-ftest/package.json b/packages/nuxeo-web-ui-ftest/package.json index 9e885f0401..297073f352 100644 --- a/packages/nuxeo-web-ui-ftest/package.json +++ b/packages/nuxeo-web-ui-ftest/package.json @@ -11,20 +11,17 @@ }, "license": "Apache-2.0", "engines": { - "node": ">=18" + "node": ">=18.0.0" }, "dependencies": { "@babel/core": "^7.15.0", "@babel/preset-env": "^7.15.0", "@babel/register": "^7.14.5", - "@cucumber/cucumber": "^7.0.0", "@cucumber/tag-expressions": "^2.0.4", - "@wdio/cli": "7.20.5", - "@wdio/cucumber-framework": "^7.20.3", - "@wdio/local-runner": "^7.2.0", - "@wdio/selenium-standalone-service": "7.2.0", - "@wdio/spec-reporter": "^7.2.0", - "@wdio/sync": "^7.2.0", + "@wdio/cli": "^8.16.11", + "@wdio/cucumber-framework": "^8.16.11", + "@wdio/local-runner": "^8.16.11", + "@wdio/spec-reporter": "^8.16.9", "babel-plugin-transform-rename-import": "^2.3.0", "babel-preset-env": "^1.7.0", "babel-register": "^6.26.0", @@ -36,12 +33,12 @@ "fs-finder": "^1.8.1", "minimist": "^1.2.0", "mkdirp": "^0.5.1", - "moment": "^2.22.0", + "moment": "^2.29.4", "multiple-cucumber-html-reporter": "^1.18.0", "node-fetch": "^2.6.1", "nuxeo": "^4.0.3", - "wdio-chromedriver-service": "^7.0.0", - "wdio-cucumberjs-json-reporter": "^2.0.3", - "webdriverio": "^7.2.0" + "wdio-chromedriver-service": "^8.1.1", + "wdio-cucumberjs-json-reporter": "^5.1.7", + "webdriverio": "8.20.4" } -} +} \ No newline at end of file From 4e36e5e3255eaa6cfad36752b7d9ca37ea94bed5 Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Thu, 21 Dec 2023 11:55:41 +0530 Subject: [PATCH 3/7] uninstall chrome --- .github/workflows/ftest.yaml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/ftest.yaml b/.github/workflows/ftest.yaml index 7e136b0dae..65c7768b86 100644 --- a/.github/workflows/ftest.yaml +++ b/.github/workflows/ftest.yaml @@ -51,11 +51,6 @@ jobs: scope: '@nuxeo' node-version: 18 - - name: Install google chrome - run: | - wget -q https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_114.0.5735.90-1_amd64.deb - apt install -y --allow-downgrades ./google-chrome-stable_114.0.5735.90-1_amd64.deb - - name: Determine nuxeo-elements branch to link id: pick_nuxeo_elements_branch run: | From cb42efd0719bf35a7fba85535c86e6acd7f97fcb Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Thu, 21 Dec 2023 17:31:34 +0530 Subject: [PATCH 4/7] node 18 --- .github/workflows/ftest.yaml | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ftest.yaml b/.github/workflows/ftest.yaml index 65c7768b86..a848b19521 100644 --- a/.github/workflows/ftest.yaml +++ b/.github/workflows/ftest.yaml @@ -37,20 +37,15 @@ jobs: - uses: actions/setup-node@v3 with: - registry-url: ${{ env.NPM_REPOSITORY }} + registry-url: 'https://packages.nuxeo.com/repository/npm-public/' scope: '@nuxeo' + node-version: 18 - uses: actions/setup-java@v2 with: distribution: 'zulu' java-version: '11' - - uses: actions/setup-node@v3 - with: - registry-url: 'https://packages.nuxeo.com/repository/npm-public/' - scope: '@nuxeo' - node-version: 18 - - name: Determine nuxeo-elements branch to link id: pick_nuxeo_elements_branch run: | @@ -113,8 +108,8 @@ jobs: maven-internal - ${{ secrets.PACKAGES_AUTH_USER }} - ${{ secrets.PACKAGES_AUTH_TOKEN }} + ${{ secrets.PACKAGES_AUTH_USER_1 }} + ${{ secrets.PACKAGES_AUTH_TOKEN_1 }} ' > ~/.m2/settings.xml From 6c112216598ef9d7a3c2107c72f4a86400fd94a0 Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Fri, 22 Dec 2023 12:07:52 +0530 Subject: [PATCH 5/7] list config --- .github/workflows/ftest.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ftest.yaml b/.github/workflows/ftest.yaml index a848b19521..7714e1a28d 100644 --- a/.github/workflows/ftest.yaml +++ b/.github/workflows/ftest.yaml @@ -39,7 +39,7 @@ jobs: with: registry-url: 'https://packages.nuxeo.com/repository/npm-public/' scope: '@nuxeo' - node-version: 18 + node-version: 14 - uses: actions/setup-java@v2 with: @@ -95,6 +95,10 @@ jobs: popd popd + - name: List npm config + run: | + npm config ls -l + - name: Link elements to Web UI run: | npm install --no-package-lock --@nuxeo:registry="${{ env.NPM_REPOSITORY }}" nuxeo-elements/core/${ELEMENTS_CORE} From 50cb70b639c5abd044a100d6ffd756f3d69edf97 Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Fri, 22 Dec 2023 12:09:08 +0530 Subject: [PATCH 6/7] node 14 --- package.json | 2 +- packages/nuxeo-web-ui-ftest/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 839a2164c1..0f8c6eff58 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "license": "Apache-2.0", "vendor": "Nuxeo", "engines": { - "node": ">=18.0.0" + "node": ">=14.0.0" }, "config": { "workboxCli": "3.6.3" diff --git a/packages/nuxeo-web-ui-ftest/package.json b/packages/nuxeo-web-ui-ftest/package.json index 297073f352..a2d390a01e 100644 --- a/packages/nuxeo-web-ui-ftest/package.json +++ b/packages/nuxeo-web-ui-ftest/package.json @@ -11,7 +11,7 @@ }, "license": "Apache-2.0", "engines": { - "node": ">=18.0.0" + "node": ">=14.0.0" }, "dependencies": { "@babel/core": "^7.15.0", From df82ff02cd29ffc7585d2b209506235badb34452 Mon Sep 17 00:00:00 2001 From: rakeshkumar1019 Date: Fri, 22 Dec 2023 12:10:06 +0530 Subject: [PATCH 7/7] node 14 --- .github/workflows/ftest.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/ftest.yaml b/.github/workflows/ftest.yaml index 7714e1a28d..a2a5490471 100644 --- a/.github/workflows/ftest.yaml +++ b/.github/workflows/ftest.yaml @@ -39,7 +39,6 @@ jobs: with: registry-url: 'https://packages.nuxeo.com/repository/npm-public/' scope: '@nuxeo' - node-version: 14 - uses: actions/setup-java@v2 with: