From 34f102bdeb379570fb0f6432f11716c15ed02f82 Mon Sep 17 00:00:00 2001 From: Jeff Pihach Date: Wed, 18 Jan 2023 16:22:25 -0600 Subject: [PATCH] Enable building teleport with the new UI location (#20361) * Changes for merging webapps into teleport. --- .drone.yml | 135 ++++-------------- .github/workflows/doc-tests.yaml | 2 +- .gitignore | 4 + .gitmodules | 3 - Makefile | 63 ++++---- build.assets/Makefile | 19 ++- build.assets/webapps/README.md | 25 ---- .../webapps/update-teleport-webassets.sh | 86 ----------- build.assets/webapps/webapps-version.ps1 | 18 --- build.assets/webapps/webapps-version.sh | 23 --- dronegen/mac.go | 20 +-- dronegen/push.go | 28 +--- dronegen/tag.go | 32 +---- dronegen/windows.go | 18 +-- e | 2 +- package.json | 37 +++++ web/package.json | 9 +- web/packages/build/webpack/webpack.base.js | 4 +- .../src/mainProcess/runtimeSettings.ts | 4 +- web/packages/webapps.e | 1 - web/tsconfig.json | 6 +- webassets | 1 - web/yarn.lock => yarn.lock | 52 ++++++- 23 files changed, 184 insertions(+), 408 deletions(-) delete mode 100644 build.assets/webapps/README.md delete mode 100755 build.assets/webapps/update-teleport-webassets.sh delete mode 100644 build.assets/webapps/webapps-version.ps1 delete mode 100755 build.assets/webapps/webapps-version.sh create mode 100644 package.json delete mode 160000 web/packages/webapps.e delete mode 160000 webassets rename web/yarn.lock => yarn.lock (99%) diff --git a/.drone.yml b/.drone.yml index 99369d7b6eee7..d984ca92d0119 100644 --- a/.drone.yml +++ b/.drone.yml @@ -62,25 +62,17 @@ steps: - name: Check out code image: docker:git commands: - - mkdir -p /go/src/github.com/gravitational/webapps - mkdir -pv "/go/src/github.com/gravitational/teleport" - cd "/go/src/github.com/gravitational/teleport" - git init - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - - cd /go/src/github.com/gravitational/webapps - - git clone https://github.com/gravitational/webapps.git . - - git checkout "$(/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)" - - git submodule update --init packages/webapps.e - - cd - - rm -f /root/.ssh/id_rsa environment: GITHUB_PRIVATE_KEY: @@ -181,12 +173,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa environment: @@ -286,12 +276,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa - if [[ "${DRONE_TAG}" != "" ]]; then echo "${DRONE_TAG##v}" > /go/.version.txt; @@ -395,12 +383,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa environment: @@ -510,17 +496,8 @@ steps: && chmod 600 $WORKSPACE_DIR/.ssh/id_rsa - ssh-keyscan -H github.com > $WORKSPACE_DIR/.ssh/known_hosts 2>/dev/null - chmod 600 $WORKSPACE_DIR/.ssh/known_hosts - - mkdir -p $WORKSPACE_DIR/go/src/github.com/gravitational/webapps - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps - - git clone https://github.com/gravitational/webapps.git . - - git checkout $($WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh) - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init packages/webapps.e - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init --recursive webassets || true - rm -rf $WORKSPACE_DIR/.ssh - mkdir -p $WORKSPACE_DIR/go/cache environment: @@ -594,7 +571,7 @@ steps: - security find-identity -v - export CSC_NAME=0FFD3E3413AB4C599C53FBB1D8CA690915E33D83 - export CONNECT_TSH_BIN_PATH=$WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build/tsh - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps + - cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport - yarn install && yarn build-term && yarn package-term -c.extraMetadata.version=$VERSION environment: APPLE_PASSWORD: @@ -689,17 +666,12 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - $TeleportRev = if ($Env:DRONE_TAG -ne $null) { $Env:DRONE_TAG } else { $Env:DRONE_COMMIT } - New-Item -Path $TeleportSrc -ItemType Directory | Out-Null - cd $TeleportSrc - git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git . - git checkout $TeleportRev - - New-Item -Path $WebappsSrc -ItemType Directory | Out-Null - - cd $WebappsSrc - - git clone https://github.com/gravitational/webapps.git . - - git checkout $(& $TeleportSrc/build.assets/webapps/webapps-version.ps1) environment: WORKSPACE_DIR: C:/Drone/Workspace/push-build-native-windows-amd64 - name: Checkout Submodules @@ -707,14 +679,10 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - . "$TeleportSrc/build.assets/windows/build.ps1" - Enable-Git -Workspace $Workspace -PrivateKey $Env:GITHUB_PRIVATE_KEY - cd $TeleportSrc - git submodule update --init e - - git submodule update --init --recursive webassets - - cd $WebappsSrc - - git submodule update --init packages/webapps.e - Reset-Git -Workspace $Workspace environment: GITHUB_PRIVATE_KEY: @@ -782,13 +750,10 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - . "$TeleportSrc/build.assets/windows/build.ps1" - Enable-Node -ToolchainDir "$Workspace/toolchains" - Push-Location $TeleportSrc - $TeleportVersion=$(make print-version).Trim() - - Pop-Location - - cd $WebappsSrc - $Env:CONNECT_TSH_BIN_PATH="$TeleportSrc\build\tsh.exe" - yarn install --frozen-lockfile - yarn build-term @@ -978,17 +943,12 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - $TeleportRev = if ($Env:DRONE_TAG -ne $null) { $Env:DRONE_TAG } else { $Env:DRONE_COMMIT } - New-Item -Path $TeleportSrc -ItemType Directory | Out-Null - cd $TeleportSrc - git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git . - git checkout $TeleportRev - - New-Item -Path $WebappsSrc -ItemType Directory | Out-Null - - cd $WebappsSrc - - git clone https://github.com/gravitational/webapps.git . - - git checkout $(& $TeleportSrc/build.assets/webapps/webapps-version.ps1) environment: WORKSPACE_DIR: C:/Drone/Workspace/build-native-windows-amd64 - name: Checkout Submodules @@ -996,14 +956,10 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - . "$TeleportSrc/build.assets/windows/build.ps1" - Enable-Git -Workspace $Workspace -PrivateKey $Env:GITHUB_PRIVATE_KEY - cd $TeleportSrc - git submodule update --init e - - git submodule update --init --recursive webassets - - cd $WebappsSrc - - git submodule update --init packages/webapps.e - Reset-Git -Workspace $Workspace environment: GITHUB_PRIVATE_KEY: @@ -1071,13 +1027,10 @@ steps: - $ErrorActionPreference = 'Stop' - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - . "$TeleportSrc/build.assets/windows/build.ps1" - Enable-Node -ToolchainDir "$Workspace/toolchains" - Push-Location $TeleportSrc - $TeleportVersion=$(make print-version).Trim() - - Pop-Location - - cd $WebappsSrc - $Env:CONNECT_TSH_BIN_PATH="$TeleportSrc\build\tsh.exe" - yarn install --frozen-lockfile - yarn build-term @@ -1110,13 +1063,12 @@ steps: commands: - $Workspace = "$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER" - $TeleportSrc = "$Workspace/go/src/github.com/gravitational/teleport" - - $WebappsSrc = "$Workspace/go/src/github.com/gravitational/webapps" - $TeleportVersion=$Env:DRONE_TAG.TrimStart('v') - $AwsSharedCredentialsFile = "$Workspace/credentials" - $OutputsDir="$Workspace/outputs" - New-Item -Path "$OutputsDir" -ItemType 'Directory' | Out-Null - - Get-ChildItem "$WebappsSrc/packages/teleterm/build/release - - Copy-Item -Path "$WebappsSrc/packages/teleterm/build/release/Teleport Connect + - Get-ChildItem "$TeleportSrc/web/packages/teleterm/build/release + - Copy-Item -Path "$TeleportSrc/web/packages/teleterm/build/release/Teleport Connect Setup*.exe" -Destination $OutputsDir - . "$TeleportSrc/build.assets/windows/build.ps1" - Format-FileHashes -PathGlob "$OutputsDir/*.exe" @@ -1199,12 +1151,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa environment: @@ -1304,12 +1254,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa environment: @@ -1627,7 +1575,7 @@ steps: - name: Download chart repo contents image: amazon/aws-cli environment: - AWS_REGION: us-west-2 + AWS_REGION: us-west-2 AWS_S3_BUCKET: from_secret: PRODUCTION_CHARTS_AWS_S3_BUCKET volumes: @@ -1722,7 +1670,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -1911,7 +1858,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -2091,7 +2037,6 @@ steps: - name: Check out code image: docker:git commands: - - mkdir -p /go/src/github.com/gravitational/webapps - mkdir -p /go/src/github.com/gravitational/teleport - cd /go/src/github.com/gravitational/teleport - git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git . @@ -2100,12 +2045,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - - cd /go/src/github.com/gravitational/webapps - - git clone https://github.com/gravitational/webapps.git . - - git checkout "$(/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)" - - git submodule update --init packages/webapps.e - - cd - - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -2152,7 +2091,7 @@ steps: \; - find e/ -maxdepth 1 -iname "teleport*.tar.gz" -print -exec cp {} /go/artifacts \; - - find /go/src/github.com/gravitational/webapps/packages/teleterm/build/release + - find /go/src/github.com/gravitational/teleport/web/packages/teleterm/build/release -maxdepth 1 \( -iname "teleport-connect*.tar.gz" -o -iname "teleport-connect*.rpm" -o -iname "teleport-connect*.deb" \) -print -exec cp {} /go/artifacts/ \; - cd /go/artifacts && for FILE in teleport*.tar.gz; do sha256sum $FILE > $FILE.sha256; @@ -2300,7 +2239,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -2484,7 +2422,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -2748,7 +2685,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -3001,7 +2937,6 @@ steps: - name: Check out code image: docker:git commands: - - mkdir -p /go/src/github.com/gravitational/webapps - mkdir -p /go/src/github.com/gravitational/teleport - cd /go/src/github.com/gravitational/teleport - git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git . @@ -3010,12 +2945,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - - cd /go/src/github.com/gravitational/webapps - - git clone https://github.com/gravitational/webapps.git . - - git checkout "$(/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)" - - git submodule update --init packages/webapps.e - - cd - - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -3265,7 +3194,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -3514,7 +3442,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -3698,7 +3625,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -3962,7 +3888,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -4226,8 +4151,6 @@ steps: - chmod 600 $WORKSPACE_DIR/.ssh/known_hosts - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init --recursive webassets || true - rm -rf $WORKSPACE_DIR/.ssh - mkdir -p $WORKSPACE_DIR/go/cache - mkdir -p $WORKSPACE_DIR/go/artifacts @@ -4259,11 +4182,32 @@ steps: - rustup toolchain install $RUST_VERSION environment: WORKSPACE_DIR: /tmp/build-darwin-amd64 +- name: Install Node Toolchain + commands: + - set -u + - export NODE_VERSION=$(make -C $WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets + print-node-version) + - export TOOLCHAIN_DIR=/tmp/build-$DRONE_BUILD_NUMBER-$DRONE_BUILD_CREATED/toolchains + - export NODE_DIR=$TOOLCHAIN_DIR/node-v$NODE_VERSION-darwin-x64 + - mkdir -p $TOOLCHAIN_DIR + - curl --silent -O https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-darwin-x64.tar.gz + - tar -C $TOOLCHAIN_DIR -xzf node-v$NODE_VERSION-darwin-x64.tar.gz + - rm -f node-v$NODE_VERSION-darwin-x64.tar.gz + - export PATH=$NODE_DIR/bin:$PATH + - corepack enable yarn + - echo Node reporting version $(node --version) + - echo Yarn reporting version $(yarn --version) + environment: + WORKSPACE_DIR: /tmp/build-darwin-amd64 - name: Build Mac artifacts (binaries) commands: - set -u - export HOME=/Users/$(whoami) - export TOOLCHAIN_DIR=/tmp/build-$DRONE_BUILD_NUMBER-$DRONE_BUILD_CREATED/toolchains + - export NODE_VERSION=$(make -C $WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets + print-node-version) + - export NODE_HOME=$TOOLCHAIN_DIR/node-v$NODE_VERSION-darwin-x64 + - export PATH=$NODE_HOME/bin:$PATH - export RUST_VERSION=$(make -C $WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets print-rust-version) - export CARGO_HOME=/tmp/build-$DRONE_BUILD_NUMBER-$DRONE_BUILD_CREATED/toolchains/cargo @@ -4459,8 +4403,6 @@ steps: - chmod 600 $WORKSPACE_DIR/.ssh/known_hosts - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init --recursive webassets || true - rm -rf $WORKSPACE_DIR/.ssh - mkdir -p $WORKSPACE_DIR/go/cache - mkdir -p $WORKSPACE_DIR/go/artifacts @@ -4660,8 +4602,6 @@ steps: - chmod 600 $WORKSPACE_DIR/.ssh/known_hosts - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init --recursive webassets || true - rm -rf $WORKSPACE_DIR/.ssh - mkdir -p $WORKSPACE_DIR/go/cache - mkdir -p $WORKSPACE_DIR/go/artifacts @@ -4849,7 +4789,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -5033,12 +4972,10 @@ steps: - git remote add origin ${DRONE_REMOTE_URL} - git fetch origin --tags - git checkout -qf "${DRONE_COMMIT_SHA}" - - git submodule update --init webassets || true - mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - mkdir -pv /go/cache - rm -f /root/.ssh/id_rsa environment: @@ -5094,7 +5031,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -5344,7 +5280,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -5594,7 +5529,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -5858,7 +5792,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -6124,7 +6057,6 @@ steps: && chmod 600 /root/.ssh/id_rsa - ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts - git submodule update --init e - - git submodule update --init --recursive webassets || true - rm -f /root/.ssh/id_rsa - mkdir -p /go/cache /go/artifacts - |- @@ -7814,17 +7746,8 @@ steps: && chmod 600 $WORKSPACE_DIR/.ssh/id_rsa - ssh-keyscan -H github.com > $WORKSPACE_DIR/.ssh/known_hosts 2>/dev/null - chmod 600 $WORKSPACE_DIR/.ssh/known_hosts - - mkdir -p $WORKSPACE_DIR/go/src/github.com/gravitational/webapps - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps - - git clone https://github.com/gravitational/webapps.git . - - git checkout $($WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh) - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init packages/webapps.e - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e - - GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts - -F /dev/null' git submodule update --init --recursive webassets || true - rm -rf $WORKSPACE_DIR/.ssh - mkdir -p $WORKSPACE_DIR/go/cache - mkdir -p $WORKSPACE_DIR/go/artifacts @@ -7904,7 +7827,7 @@ steps: - cd $WORKSPACE_DIR/go/src/github.com/gravitational - pkgutil --expand-full tsh-$${VERSION}.pkg tsh - export CONNECT_TSH_APP_PATH=$WORKSPACE_DIR/go/src/github.com/gravitational/tsh/Payload/tsh.app - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps + - cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport - yarn install && yarn build-term && yarn package-term -c.extraMetadata.version=$VERSION environment: APPLE_PASSWORD: @@ -7921,7 +7844,7 @@ steps: - name: Copy dmg artifact commands: - set -u - - cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps/packages/teleterm/build/release + - cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport/web/packages/teleterm/build/release - cp *.dmg $WORKSPACE_DIR/go/artifacts - cd $WORKSPACE_DIR/go/artifacts && for FILE in *.dmg; do shasum -a 256 "$FILE" > "$FILE.sha256"; done && ls -l @@ -18273,6 +18196,6 @@ volumes: temp: {} --- kind: signature -hmac: df00b73f447e6ab65125e08794a80e6ec48bdbfbd6dafdc0449ab2f87c4ecdee +hmac: f7f0c96cbbabe4305e224c72cd5f9f322b6a54325a890f1537500a5f3eb0e303 ... diff --git a/.github/workflows/doc-tests.yaml b/.github/workflows/doc-tests.yaml index dfec62298f8db..03273bf5a18ca 100644 --- a/.github/workflows/doc-tests.yaml +++ b/.github/workflows/doc-tests.yaml @@ -26,4 +26,4 @@ jobs: uses: actions/checkout@v3 - name: Run tests - run: cd /src/content && yarn markdown-lint + run: cd /src && yarn markdown-lint diff --git a/.gitignore b/.gitignore index 4c68aa28d3fac..7358fc1f45ddb 100644 --- a/.gitignore +++ b/.gitignore @@ -82,3 +82,7 @@ go.work.sum # Buf side-effects /github.com +node_modules + +.air.toml +webassets/ diff --git a/.gitmodules b/.gitmodules index 20a220b3f5155..d795eac24c845 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,3 @@ [submodule "e"] path = e url = git@github.com:gravitational/teleport.e.git -[submodule "webassets"] - path = webassets - url = https://github.com/gravitational/webassets.git diff --git a/Makefile b/Makefile index 05c4b443b8c68..811fd66ab7614 100644 --- a/Makefile +++ b/Makefile @@ -271,10 +271,10 @@ CGOFLAG_TSH ?= $(CGOFLAG) # # 'make all' builds all 3 executables and places them in the current directory. # -# IMPORTANT: the binaries will not contain the web UI assets and `teleport` -# won't start without setting the environment variable DEBUG=1 -# This is the default build target for convenience of working on -# a web UI. +# IMPORTANT: +# Unless called with the `WEBASSETS_TAG` env variable set to "webassets_embed" +# the binaries will not contain the web UI assets and `teleport` won't start +# without setting the environment variable DEBUG=1. .PHONY: all all: version @echo "---> Building OSS binaries." @@ -378,7 +378,7 @@ endif # make full-ent - Builds Teleport enterprise binaries # .PHONY:full-ent -full-ent: +full-ent: ensure-webassets-e ifneq ("$(OS)", "windows") @if [ -f e/Makefile ]; then $(MAKE) -C e full; fi endif @@ -387,7 +387,7 @@ endif # make clean - Removes all build artifacts. # .PHONY: clean -clean: +clean: clean-ui @echo "---> Cleaning up OSS build artifacts." rm -rf $(BUILDDIR) # Check if the variable is set to prevent calling remove on the root directory. @@ -404,13 +404,18 @@ endif rm -f gitref.go rm -rf build.assets/tooling/bin +.PHONY: clean-ui +clean-ui: + rm -rf webassets/* + find . -type d -name node_modules -prune -exec rm -rf {} \; + # # make release - Produces a binary release tarball. # .PHONY: export release: - @echo "---> $(RELEASE_MESSAGE)" + @echo "---> OSS $(RELEASE_MESSAGE)" ifeq ("$(OS)", "windows") $(MAKE) --no-print-directory release-windows else ifeq ("$(OS)", "darwin") @@ -600,8 +605,9 @@ helmunit/installed: # The CI environment is responsible for setting HELM_PLUGINS to a directory where # quintish/helm-unittest is installed. # -# The unittest plugin changed in teleport12, if the tests are failing, please ensure -# you are using https://github.com/quintush/helm-unittest and not the vbehar fork. +# Github Actions build uses /workspace as homedir and Helm can't pick up plugins by default there, +# so override the plugin location via environemnt variable when running in CI. Github Actions provide CI=true +# environment variable. .PHONY: test-helm test-helm: helmunit/installed helm unittest -3 examples/chart/teleport-cluster @@ -1197,37 +1203,20 @@ test-compat: .PHONY: ensure-webassets ensure-webassets: @if [ ! -d $(shell pwd)/webassets/teleport/ ]; then \ - $(MAKE) init-webapps-submodules; \ + $(MAKE) build-ui; \ fi; .PHONY: ensure-webassets-e ensure-webassets-e: @if [ ! -d $(shell pwd)/webassets/e/teleport ]; then \ - $(MAKE) init-webapps-submodules-e; \ + $(MAKE) build-ui-e; \ fi; -.PHONY: init-webapps-submodules -init-webapps-submodules: - echo "init webassets submodule" - git submodule update --init webassets - -.PHONY: init-webapps-submodules-e -init-webapps-submodules-e: - echo "init webassets oss and enterprise submodules" - git submodule update --init --recursive webassets - .PHONY: init-submodules-e -init-submodules-e: init-webapps-submodules-e +init-submodules-e: git submodule init e git submodule update -# update-webassets creates a PR in the teleport repo to update webassets submodule. -.PHONY: update-webassets -update-webassets: WEBASSETS_BRANCH ?= 'master' -update-webassets: TELEPORT_BRANCH ?= 'master' -update-webassets: - build.assets/webapps/update-teleport-webassets.sh -w $(WEBASSETS_BRANCH) -t $(TELEPORT_BRANCH) - # dronegen generates .drone.yml config # # Usage: @@ -1245,3 +1234,19 @@ dronegen: .PHONY: backport backport: (cd ./assets/backport && go run main.go -pr=$(PR) -to=$(TO)) + +.PHONY: ensure-js-deps +ensure-js-deps: + yarn install --ignore-scripts + +.PHONY: build-ui +build-ui: ensure-js-deps + yarn build-ui-oss + +.PHONY: build-ui-e +build-ui-e: ensure-js-deps + yarn build-ui-e + +.PHONY: docker-ui +docker-ui: + $(MAKE) -C build.assets ui diff --git a/build.assets/Makefile b/build.assets/Makefile index 10272f5d79c12..7b02d9ddaf65c 100644 --- a/build.assets/Makefile +++ b/build.assets/Makefile @@ -10,10 +10,6 @@ GOMODCACHE ?= /tmp/gomodcache # TODO(hugoShaka) remove HELM_PLUGINS with teleport13 buildbox DOCKERFLAGS := --rm=true -v "$$(pwd)/../":$(SRCDIR) -v /tmp:/tmp -w $(SRCDIR) -h $(HOSTNAME) -e GOMODCACHE=$(GOMODCACHE) -e HELM_PLUGINS=/home/ci/.local/share/helm/plugins-new -# delete after webapps migration to teleport -WEBAPPSSRCDIR=/go/src/github.com/gravitational/webapps -WEBAPPSDOCKERFLAGS := $(DOCKERFLAGS) -v "$$(pwd)/../../webapps":$(WEBAPPSSRCDIR) - ADDFLAGS ?= BATSFLAGS := NOROOT=-u $$(id -u):$$(id -g) @@ -239,7 +235,6 @@ buildbox-teleterm: buildbox --cache-from $(BUILDBOX_TELETERM) \ --tag $(BUILDBOX_TELETERM) -f Dockerfile-teleterm . - CONNECT_VERSION ?= $(VERSION) ifeq ($(CONNECT_VERSION),) CONNECT_VERSION := $(BUILDBOX_VERSION)-dev @@ -248,14 +243,15 @@ endif # # Builds Teleport Connect inside the buildbox-teleterm container. # -# Note: this assumes that gravitational/webapps already exists on the filesystem -# and is a sibling directory to Teleport. This is temporary and will be -# resolved when the webapps code is moved into this repository. -# .PHONY:teleterm teleterm: buildbox-teleterm - docker run $(WEBAPPSDOCKERFLAGS) $(NOROOT) $(BUILDBOX_TELETERM) \ - bash -c "cd ../webapps && export CONNECT_TSH_BIN_PATH=\$$PWD/../teleport/build/tsh && yarn install --frozen-lockfile && yarn build-term && yarn package-term -c.extraMetadata.version=$(CONNECT_VERSION)" + docker run $(DOCKERFLAGS) $(NOROOT) $(BUILDBOX_TELETERM) \ + bash -c "cd $(SRCDIR) && export CONNECT_TSH_BIN_PATH=\$$PWD/../teleport/build/tsh && yarn install --frozen-lockfile && yarn build-term && yarn package-term -c.extraMetadata.version=$(CONNECT_VERSION)" + +.PHONY:ui +ui: buildbox + docker run -v "$$(pwd)/../":/teleport $(BUILDBOX) \ + bash -c "cd ../teleport && yarn install --frozen-lockfile && yarn build-ui" # grpc generates GRPC stubs from inside the buildbox .PHONY: grpc @@ -396,6 +392,7 @@ enter/teleterm: buildbox-teleterm # .PHONY:release release: buildbox + @echo "Build Assets Release" docker run $(DOCKERFLAGS) $(NOROOT) $(BUILDBOX_NAME) \ /usr/bin/make release -e ADDFLAGS="$(ADDFLAGS)" OS=$(OS) ARCH=$(ARCH) RUNTIME=$(GOLANG_VERSION) FIDO2=$(FIDO2) PIV=$(PIV) REPRODUCIBLE=yes diff --git a/build.assets/webapps/README.md b/build.assets/webapps/README.md deleted file mode 100644 index bda9adcc21e2e..0000000000000 --- a/build.assets/webapps/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# webapps jobs - -## update-teleport-webassets.sh - -This script: - -- clones the `teleport` repo -- checks out the provided named branch (after checking that it exists) -- raises a PR against the `teleport` repo to update the submodule commit references - -The `webassets` repo is automatically updated for each commit merged to `webapps`. - -Run using a command like: - -`./update-teleport-webassets.sh -w teleport-v10 -t branch/v10` - -| Argument | Description | -| - | - | -| `-w` | `webassets` source branch name to pull `webassets` from (often `master`) | -| `-t` | `teleport` target branch name to raise a PR against (often `master`) | - -### Extra notes - -You will need to have the `gh` utility installed on your system for the script to work. You can download it from https://github.com/cli/cli/releases/latest - diff --git a/build.assets/webapps/update-teleport-webassets.sh b/build.assets/webapps/update-teleport-webassets.sh deleted file mode 100755 index b385ea37f7e1f..0000000000000 --- a/build.assets/webapps/update-teleport-webassets.sh +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/bash -set -euo pipefail - -usage() { echo "Usage: $(basename $0) [-w ] [-t ]" 1>&2; exit 1; } -while getopts ":w:t:" o; do - case "${o}" in - w) - w=${OPTARG} - ;; - t) - t=${OPTARG} - ;; - *) - usage - ;; - esac -done -shift $((OPTIND-1)) - -if [ -z "${w}" ] || [ -z "${t}" ]; then - usage -fi - -WEBASSETS_BRANCH=${w} -TELEPORT_BRANCH=${t} - -# check if gh is installed -if ! type gh >/dev/null 2>&1; then - echo "The 'gh' utility must be installed to run this script." - echo "You can download it from https://github.com/cli/cli/releases/latest" - exit 1 -fi - -# run 'gh auth status' to check if gh config already exists -if ! gh auth status; then - # log into github via gh tool - echo "You're not logged into 'gh' - you will need to complete a Github OAuth flow." - echo "Choose 'Login with a web browser' if prompted and follow the instructions." - echo "Choose 'HTTPS' for 'default git protocol' if prompted." - gh auth login --hostname github.com --web - fi - -# check that the specified remote branches exist -if ! git ls-remote --heads --exit-code git@github.com:gravitational/webassets.git ${WEBASSETS_BRANCH}; then - echo "Cannot find ${WEBASSETS_BRANCH} in the webassets repo." - exit 1 -fi -if ! git ls-remote --heads --exit-code git@github.com:gravitational/teleport.git ${TELEPORT_BRANCH}; then - echo "Cannot find ${TELEPORT_BRANCH} in the teleport repo." - exit 1 -fi - -# keep all the clones in a temp directory -TEMP_DIR="$(mktemp -d)" -pushd $TEMP_DIR - -# clone teleport repo -git clone git@github.com:gravitational/teleport.git teleport -pushd teleport - -# try to create target branch -# if it exists, check it out instead -git checkout --track origin/${TELEPORT_BRANCH} || git checkout ${TELEPORT_BRANCH} - -# update git submodules (webassets/webassets.e) -git fetch --recurse-submodules && git submodule update --init webassets - -AUTO_BRANCH_NAME="webassets-auto-pr-$(date +%s)" -git switch -c ${AUTO_BRANCH_NAME} - -pushd webassets -git switch ${WEBASSETS_BRANCH} -git pull -popd - -git add webassets -git commit -am "[auto] Update webassets in teleport/${TELEPORT_BRANCH} from webassets/${WEBASSETS_BRANCH}" --allow-empty -git push --set-upstream origin ${AUTO_BRANCH_NAME} - -# run 'gh' to raise a PR to merge this automatic branch into the target branch -gh pr create --base ${TELEPORT_BRANCH} --fill --label automated,webassets -popd - -# clean up all the cloned repos -popd -rm -rf $TEMP_DIR diff --git a/build.assets/webapps/webapps-version.ps1 b/build.assets/webapps/webapps-version.ps1 deleted file mode 100644 index 3dea6b3f48f50..0000000000000 --- a/build.assets/webapps/webapps-version.ps1 +++ /dev/null @@ -1,18 +0,0 @@ -# If this build was triggered from a tag on the teleport repo, -# then assume we can use the same tag for the webapps repo. -if (Test-Path Env:DRONE_TAG) { - Write-Output $Env:DRONE_TAG - exit 0 -} - -# If this build is on one of the teleport release branches, -# map to the equivalent release branch in webapps. -# -# branch/v10 ==> teleport-v10 -if ($Env:DRONE_TARGET_BRANCH -match '^branch/(.*)$') { - Write-Output "teleport-$($Matches[1])" - exit 0 -} - -# Otherwise, use master. -Write-Output "master" \ No newline at end of file diff --git a/build.assets/webapps/webapps-version.sh b/build.assets/webapps/webapps-version.sh deleted file mode 100755 index 93f0e1e5d191c..0000000000000 --- a/build.assets/webapps/webapps-version.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -# If this build was triggered from a tag on the teleport repo, -# then assume we can use the same tag for the webapps repo. -if [ -n "$DRONE_TAG" ] -then - echo "$DRONE_TAG" - exit 0 -fi - -# If this build is on one of the teleport release branches, -# map to the equivalent release branch in webapps. -# -# branch/v10 ==> teleport-v10 -if echo "$DRONE_TARGET_BRANCH" | grep '^branch/' >/dev/null; -then - TRIMMED=$(echo $DRONE_TARGET_BRANCH | cut -c8-) - echo "teleport-$TRIMMED" - exit 0 -fi - -# Otherwise, use master. -echo "master" diff --git a/dronegen/mac.go b/dronegen/mac.go index 15909f21b3175..2b85fe45a2473 100644 --- a/dronegen/mac.go +++ b/dronegen/mac.go @@ -177,7 +177,7 @@ func darwinTagPipeline() pipeline { arch: "amd64", os: "darwin", } - toolchainConfig := toolchainConfig{golang: true, rust: true} + toolchainConfig := toolchainConfig{golang: true, rust: true, nodejs: true} artifactConfig := onlyBinaries p := newDarwinPipeline("build-darwin-amd64") @@ -256,23 +256,9 @@ func pushCheckoutCommandsDarwin(artifactConfig darwinArtifactConfig) []string { `chmod 600 $WORKSPACE_DIR/.ssh/known_hosts`, } - // clone github.com/gravitational/webapps for the Teleport Connect source code - if artifactConfig == binariesWithConnect || artifactConfig == onlyConnectWithBundledTshApp { - commands = append(commands, - `mkdir -p $WORKSPACE_DIR/go/src/github.com/gravitational/webapps`, - `cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps`, - `git clone https://github.com/gravitational/webapps.git .`, - `git checkout $($WORKSPACE_DIR/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)`, - `GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init packages/webapps.e`, - `cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport`, - ) - } - commands = append(commands, // fetch enterprise submodules `GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init e`, - // this is allowed to fail because pre-4.3 Teleport versions don't use the webassets submodule - `GIT_SSH_COMMAND='ssh -i $WORKSPACE_DIR/.ssh/id_rsa -o UserKnownHostsFile=$WORKSPACE_DIR/.ssh/known_hosts -F /dev/null' git submodule update --init --recursive webassets || true`, `rm -rf $WORKSPACE_DIR/.ssh`, `mkdir -p $WORKSPACE_DIR/go/cache`, ) @@ -578,7 +564,7 @@ func darwinBuildCommands(toolchainConfig toolchainConfig, artifactConfig darwinA commands = append(commands, // Build and package Connect - `cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps`, + `cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport`, // c.extraMetadata.version overwrites the version property from package.json to $VERSION // https://www.electron.build/configuration/configuration.html#Configuration-extraMetadata `yarn install && yarn build-term && yarn package-term -c.extraMetadata.version=$VERSION`, @@ -606,7 +592,7 @@ func darwinConnectCopyDmgArtifactCommands() []string { commands := []string{ `set -u`, // copy dmg to artifact directory - `cd $WORKSPACE_DIR/go/src/github.com/gravitational/webapps/packages/teleterm/build/release`, + `cd $WORKSPACE_DIR/go/src/github.com/gravitational/teleport/web/packages/teleterm/build/release`, `cp *.dmg $WORKSPACE_DIR/go/artifacts`, // generate checksums `cd $WORKSPACE_DIR/go/artifacts && for FILE in *.dmg; do shasum -a 256 "$FILE" > "$FILE.sha256"; done && ls -l`, diff --git a/dronegen/push.go b/dronegen/push.go index c9eebee87e7ab..566f20a639fea 100644 --- a/dronegen/push.go +++ b/dronegen/push.go @@ -19,40 +19,14 @@ import "fmt" // pushCheckoutCommands builds a list of commands for Drone to check out a git commit on a push build func pushCheckoutCommands(b buildType) []string { cloneDirectory := "/go/src/github.com/gravitational/teleport" - var commands []string - - if b.hasTeleportConnect() { - // TODO(zmb3): remove /go/src/github.com/gravitational/webapps after webapps->teleport migration - commands = append(commands, `mkdir -p /go/src/github.com/gravitational/webapps`) - } + var commands []string commands = append(commands, cloneRepoCommands(cloneDirectory, "${DRONE_COMMIT_SHA}")...) - commands = append(commands, - // this is allowed to fail because pre-4.3 Teleport versions don't use the webassets submodule - `git submodule update --init webassets || true`, `mkdir -m 0700 /root/.ssh && echo "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa`, `ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts`, `git submodule update --init e`, - // do a recursive submodule checkout to get both webassets and webassets/e - // this is allowed to fail because pre-4.3 Teleport versions don't use the webassets submodule - `git submodule update --init --recursive webassets || true`, `mkdir -pv /go/cache`, - ) - - if b.hasTeleportConnect() { - // TODO(zmb3): this can be removed after webapps migration - // clone webapps for the Teleport Connect Source code - commands = append(commands, - `cd /go/src/github.com/gravitational/webapps`, - `git clone https://github.com/gravitational/webapps.git .`, - `git checkout "$(/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)"`, - `git submodule update --init packages/webapps.e`, - `cd -`, - ) - } - - commands = append(commands, `rm -f /root/.ssh/id_rsa`, ) diff --git a/dronegen/tag.go b/dronegen/tag.go index 36dfd34739eaa..d361fdfb7745b 100644 --- a/dronegen/tag.go +++ b/dronegen/tag.go @@ -34,14 +34,7 @@ const releasesHost = "https://releases-prod.platform.teleport.sh" // tagCheckoutCommands builds a list of commands for Drone to check out a git commit on a tag build func tagCheckoutCommands(b buildType) []string { - var commands []string - - if b.hasTeleportConnect() { - // TODO(zmb3): remove /go/src/github.com/gravitational/webapps after webapps->teleport migration - commands = append(commands, `mkdir -p /go/src/github.com/gravitational/webapps`) - } - - commands = append(commands, + return []string{ `mkdir -p /go/src/github.com/gravitational/teleport`, `cd /go/src/github.com/gravitational/teleport`, `git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git .`, @@ -50,23 +43,6 @@ func tagCheckoutCommands(b buildType) []string { `mkdir -m 0700 /root/.ssh && echo -n "$GITHUB_PRIVATE_KEY" > /root/.ssh/id_rsa && chmod 600 /root/.ssh/id_rsa`, `ssh-keyscan -H github.com > /root/.ssh/known_hosts 2>/dev/null && chmod 600 /root/.ssh/known_hosts`, `git submodule update --init e`, - // this is allowed to fail because pre-4.3 Teleport versions don't use the webassets submodule - `git submodule update --init --recursive webassets || true`, - ) - - if b.hasTeleportConnect() { - // TODO(zmb3): this can be removed after webapps migration - // clone webapps for the Teleport Connect Source code - commands = append(commands, - `cd /go/src/github.com/gravitational/webapps`, - `git clone https://github.com/gravitational/webapps.git .`, - `git checkout "$(/go/src/github.com/gravitational/teleport/build.assets/webapps/webapps-version.sh)"`, - `git submodule update --init packages/webapps.e`, - `cd -`, - ) - } - - commands = append(commands, `rm -f /root/.ssh/id_rsa`, // create necessary directories `mkdir -p /go/cache /go/artifacts`, @@ -77,8 +53,7 @@ if [ "$$VERSION" != "${DRONE_TAG##v}" ]; then exit 1 fi echo "$$VERSION" > /go/.version.txt`, - ) - return commands + } } // tagBuildCommands generates a list of commands for Drone to build an artifact as part of a tag build @@ -114,7 +89,6 @@ func tagBuildCommands(b buildType) []string { case "linux": commands = append(commands, `make -C build.assets teleterm`) } - } if b.os == "windows" { @@ -175,7 +149,7 @@ func tagCopyArtifactCommands(b buildType) []string { if b.hasTeleportConnect() { commands = append(commands, - `find /go/src/github.com/gravitational/webapps/packages/teleterm/build/release -maxdepth 1 \( -iname "teleport-connect*.tar.gz" -o -iname "teleport-connect*.rpm" -o -iname "teleport-connect*.deb" \) -print -exec cp {} /go/artifacts/ \;`, + `find /go/src/github.com/gravitational/teleport/web/packages/teleterm/build/release -maxdepth 1 \( -iname "teleport-connect*.tar.gz" -o -iname "teleport-connect*.rpm" -o -iname "teleport-connect*.deb" \) -print -exec cp {} /go/artifacts/ \;`, ) } diff --git a/dronegen/windows.go b/dronegen/windows.go index a1b88f51859a4..883979e658a08 100644 --- a/dronegen/windows.go +++ b/dronegen/windows.go @@ -22,7 +22,6 @@ const ( perBuildWorkspace = `$Env:WORKSPACE_DIR/$Env:DRONE_BUILD_NUMBER` toolchainDir = `/toolchains` teleportSrc = `/go/src/github.com/gravitational/teleport` - webappsSrc = `/go/src/github.com/gravitational/webapps` relcliURL = `https://cdn.teleport.dev/relcli-v1.1.76-windows.exe` relcliSha256 = `56dfdd9d1a09aac892fcd48eba035072dc6c151eaa2e1b21cf54786bb3c09520` @@ -82,13 +81,12 @@ func windowsTagPipeline() pipeline { Commands: []string{ `$Workspace = "` + perBuildWorkspace + `"`, `$TeleportSrc = "$Workspace` + teleportSrc + `"`, - `$WebappsSrc = "$Workspace` + webappsSrc + `"`, `$TeleportVersion=$Env:DRONE_TAG.TrimStart('v')`, `$AwsSharedCredentialsFile = "$Workspace/credentials"`, `$OutputsDir="$Workspace/outputs"`, `New-Item -Path "$OutputsDir" -ItemType 'Directory' | Out-Null`, - `Get-ChildItem "$WebappsSrc/packages/teleterm/build/release`, - `Copy-Item -Path "$WebappsSrc/packages/teleterm/build/release/Teleport Connect Setup*.exe" -Destination $OutputsDir`, + `Get-ChildItem "$TeleportSrc/web/packages/teleterm/build/release`, + `Copy-Item -Path "$TeleportSrc/web/packages/teleterm/build/release/Teleport Connect Setup*.exe" -Destination $OutputsDir`, `. "$TeleportSrc/build.assets/windows/build.ps1"`, `Format-FileHashes -PathGlob "$OutputsDir/*.exe"`, `Copy-Artifacts -ProfileLocation $AwsSharedCredentialsFile -Path $OutputsDir -Bucket $Env:AWS_S3_BUCKET -DstRoot "/teleport/tag/$TeleportVersion"`, @@ -146,16 +144,11 @@ func cloneWindowsRepositoriesStep(workspace string) step { `$ErrorActionPreference = 'Stop'`, `$Workspace = "` + perBuildWorkspace + `"`, `$TeleportSrc = "$Workspace` + teleportSrc + `"`, - `$WebappsSrc = "$Workspace` + webappsSrc + `"`, `$TeleportRev = if ($Env:DRONE_TAG -ne $null) { $Env:DRONE_TAG } else { $Env:DRONE_COMMIT }`, `New-Item -Path $TeleportSrc -ItemType Directory | Out-Null`, `cd $TeleportSrc`, `git clone https://github.com/gravitational/${DRONE_REPO_NAME}.git .`, `git checkout $TeleportRev`, - `New-Item -Path $WebappsSrc -ItemType Directory | Out-Null`, - `cd $WebappsSrc`, - `git clone https://github.com/gravitational/webapps.git .`, - `git checkout $(& $TeleportSrc/build.assets/webapps/webapps-version.ps1)`, }, } } @@ -171,14 +164,10 @@ func updateWindowsSubreposStep(workspace string) step { `$ErrorActionPreference = 'Stop'`, `$Workspace = "` + perBuildWorkspace + `"`, `$TeleportSrc = "$Workspace` + teleportSrc + `"`, - `$WebappsSrc = "$Workspace` + webappsSrc + `"`, `. "$TeleportSrc/build.assets/windows/build.ps1"`, `Enable-Git -Workspace $Workspace -PrivateKey $Env:GITHUB_PRIVATE_KEY`, `cd $TeleportSrc`, `git submodule update --init e`, - `git submodule update --init --recursive webassets`, - `cd $WebappsSrc`, - `git submodule update --init packages/webapps.e`, `Reset-Git -Workspace $Workspace`, }, } @@ -272,13 +261,10 @@ func buildWindowsTeleportConnectStep(workspace string) step { `$ErrorActionPreference = 'Stop'`, `$Workspace = "` + perBuildWorkspace + `"`, `$TeleportSrc = "$Workspace` + teleportSrc + `"`, - `$WebappsSrc = "$Workspace` + webappsSrc + `"`, `. "$TeleportSrc/build.assets/windows/build.ps1"`, `Enable-Node -ToolchainDir "$Workspace` + toolchainDir + `"`, `Push-Location $TeleportSrc`, `$TeleportVersion=$(make print-version).Trim()`, - `Pop-Location`, - `cd $WebappsSrc`, `$Env:CONNECT_TSH_BIN_PATH="$TeleportSrc\build\tsh.exe"`, `yarn install --frozen-lockfile`, `yarn build-term`, diff --git a/e b/e index be51e901cba82..e6f2db803eceb 160000 --- a/e +++ b/e @@ -1 +1 @@ -Subproject commit be51e901cba82d54ba2a7ff6f6a340d8b85118b1 +Subproject commit e6f2db803ecebce8e3c297f0d887c3e2027c3cf3 diff --git a/package.json b/package.json new file mode 100644 index 0000000000000..47cd0bd77680a --- /dev/null +++ b/package.json @@ -0,0 +1,37 @@ +{ + "name": "teleport-ui", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "build-ui": "yarn build-ui-oss && yarn build-ui-e", + "build-ui-oss": "yarn workspace @gravitational/teleport build --output-path=../../../webassets/teleport/app", + "build-ui-e": "yarn workspace @gravitational/teleport.e build --output-path=../../../webassets/e/teleport/app", + "build-teleport": "yarn workspace @gravitational/namespaces build-teleport", + "start-teleport": "yarn workspace @gravitational/namespaces start-teleport", + "build-term": "yarn workspace @gravitational/namespaces build-term", + "start-term": "yarn workspace @gravitational/namespaces start-term", + "package-term": "yarn workspace @gravitational/namespaces package-term", + "build-native-deps-for-term": "yarn workspace @gravitational/namespaces build-native-deps-for-term", + "build-and-package-term-ci": "yarn workspace @gravitational/namespaces build-and-package-term-ci", + "test": "yarn workspace @gravitational/namespaces test", + "type-check": "yarn workspace @gravitational/namespaces type-check" + }, + "private": true, + "resolutions": { + "react": "16.14.0", + "**/minimist": "^1.2.5", + "**/@types/react": "^16.8.19" + }, + "workspaces": { + "packages": [ + "web", + "web/packages/build/**", + "web/packages/design/**", + "web/packages/shared/**", + "web/packages/teleport", + "web/packages/teleterm", + "e/web/**" + ] + } + +} \ No newline at end of file diff --git a/web/package.json b/web/package.json index 87f5b395b02ca..5334caa3aaff4 100644 --- a/web/package.json +++ b/web/package.json @@ -1,5 +1,5 @@ { - "name": "namespaces", + "name": "@gravitational/namespaces", "version": "1.0.0", "main": "index.js", "license": "Apache-2.0", @@ -19,8 +19,8 @@ "start-teleport": "yarn workspace @gravitational/teleport start", "start-teleport-e": "yarn workspace @gravitational/teleport.e start", "build-teleport": "yarn build-teleport-oss && yarn build-teleport-e", - "build-teleport-oss": "yarn workspace @gravitational/teleport build --output-path=../../dist/teleport/app", - "build-teleport-e": "yarn workspace @gravitational/teleport.e build --output-path=../../../dist/e/teleport/app", + "build-teleport-oss": "yarn workspace @gravitational/teleport build --output-path=../../../webassets/teleport/app", + "build-teleport-e": "yarn workspace @gravitational/teleport.e build --output-path=../../../webassets/e/teleport/app", "build-oss": "yarn build-teleport-oss", "build-e": "yarn build-teleport-e", "lint": "yarn prettier-check && yarn eslint", @@ -32,6 +32,7 @@ }, "private": true, "resolutions": { + "react": "16.14.0", "**/minimist": "^1.2.5", "**/@types/react": "^16.8.19" }, @@ -41,7 +42,7 @@ "packages/design/**", "packages/shared/**", "packages/teleport", - "packages/webapps*/**", + "../e/web/**", "packages/teleterm" ] } diff --git a/web/packages/build/webpack/webpack.base.js b/web/packages/build/webpack/webpack.base.js index 7f7bdeb3ef78c..0f662d00b162c 100644 --- a/web/packages/build/webpack/webpack.base.js +++ b/web/packages/build/webpack/webpack.base.js @@ -150,8 +150,8 @@ function createDefaultConfig() { alias: { teleterm: path.join(__dirname, '/../../teleterm/src'), teleport: path.join(__dirname, '/../../teleport/src'), - 'e-teleport': path.join(__dirname, '/../../webapps.e/teleport/src'), - 'e-teleterm': path.join(__dirname, '/../../webapps.e/teleterm/src'), + 'e-teleport': path.join(__dirname, '/../../../../e/web/teleport/src'), + 'e-teleterm': path.join(__dirname, '/../../../../e/web/teleterm/src'), design: path.join(__dirname, '/../../design/src'), shared: path.join(__dirname, '/../../shared'), }, diff --git a/web/packages/teleterm/src/mainProcess/runtimeSettings.ts b/web/packages/teleterm/src/mainProcess/runtimeSettings.ts index 2c0c017ec37b5..e5673d603100b 100644 --- a/web/packages/teleterm/src/mainProcess/runtimeSettings.ts +++ b/web/packages/teleterm/src/mainProcess/runtimeSettings.ts @@ -20,7 +20,9 @@ const TSH_BIN_ENV_VAR = 'CONNECT_TSH_BIN_PATH'; // We default to webapps/../teleport/build/tsh. // prettier-ignore const TSH_BIN_DEFAULT_PATH_FOR_DEV = path.resolve( - __dirname, '..', '..', '..', '..', '..', '..', '..', 'teleport', 'build', 'tsh', + __dirname, + '..', '..', '..', '..', '..', '..', '..', '..', + 'teleport', 'build', 'tsh', ); const dev = env.NODE_ENV === 'development' || env.DEBUG_PROD === 'true'; diff --git a/web/packages/webapps.e b/web/packages/webapps.e deleted file mode 160000 index 52ff5ff172aa4..0000000000000 --- a/web/packages/webapps.e +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 52ff5ff172aa46bcdf27cac52e0771499a0d7820 diff --git a/web/tsconfig.json b/web/tsconfig.json index 89f18b6426116..b3988ba3afbb3 100644 --- a/web/tsconfig.json +++ b/web/tsconfig.json @@ -25,7 +25,7 @@ ], "paths": { "grpc": [ - "node_modules/@grpc/grpc-js" + "../node_modules/@grpc/grpc-js" ], // generator still uses "grpc" package that has been deprecated in favor of "@grpc/grpc-js" "shared/*": [ "packages/shared/*" @@ -46,10 +46,10 @@ "packages/teleterm/src/*" ], "e-teleport/*": [ - "packages/webapps.e/teleport/src/*" + "../e/web/teleport/src/*" ], "e-teleterm/*": [ - "packages/webapps.e/teleterm/src/*" + "../e/web/teleterm/src/*" ] } }, diff --git a/webassets b/webassets deleted file mode 160000 index 4c7b99d0e2ee2..0000000000000 --- a/webassets +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4c7b99d0e2ee2b32c1fa8039b1182219c0dd15ea diff --git a/web/yarn.lock b/yarn.lock similarity index 99% rename from web/yarn.lock rename to yarn.lock index 84a6121af07bf..0b4c39de1a264 100644 --- a/web/yarn.lock +++ b/yarn.lock @@ -1116,6 +1116,13 @@ dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.16.0", "@babel/runtime@^7.6.2": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.7.tgz#fcb41a5a70550e04a7b708037c7c32f7f356d8fd" + integrity sha512-UF0tvkUtxwAgZ5W/KrkHf0Rn0fdnLDU9ScxBrEVNUprE/MzirjK4MJUX1/BVDv00Sv8cljtukVK1aky++X1SjQ== + dependencies: + regenerator-runtime "^0.13.11" + "@babel/runtime@^7.16.3": version "7.18.9" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.9.tgz#b4fcfce55db3d2e5e080d2490f608a3b9f407f4a" @@ -4852,6 +4859,17 @@ braces@^3.0.1, braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" +broadcast-channel@4.18.1: + version "4.18.1" + resolved "https://registry.yarnpkg.com/broadcast-channel/-/broadcast-channel-4.18.1.tgz#23361e531a7af3589e184f65ac89cd387bb263be" + integrity sha512-eV1srWgt6H4hbtGqD7THn60me66WA5l0LogpssuX9jK6NK26HzIZr+VsrlD7Obe0BtYnwoo/a4v4z5gfty04DA== + dependencies: + "@babel/runtime" "^7.16.0" + oblivious-set "1.1.1" + p-queue "6.6.2" + rimraf "3.0.2" + unload "2.3.1" + brorand@^1.0.1, brorand@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" @@ -11490,6 +11508,11 @@ objectorarray@^1.0.5: resolved "https://registry.yarnpkg.com/objectorarray/-/objectorarray-1.0.5.tgz#2c05248bbefabd8f43ad13b41085951aac5e68a5" integrity sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg== +oblivious-set@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/oblivious-set/-/oblivious-set-1.1.1.tgz#d9d38e9491d51f27a5c3ec1681d2ba40aa81e98b" + integrity sha512-Oh+8fK09mgGmAshFdH6hSVco6KZmd1tTwNFWj35OvzdmJTMZtAkbn05zar2iG3v6sDs1JLEtOiBGNb6BHwkb2w== + obuf@^1.0.0, obuf@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" @@ -11728,6 +11751,14 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" +p-queue@6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + eventemitter3 "^4.0.4" + p-timeout "^3.2.0" + p-retry@^4.5.0: version "4.6.1" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.1.tgz#8fcddd5cdf7a67a0911a9cf2ef0e5df7f602316c" @@ -12810,7 +12841,7 @@ react-transition-group@^4.3.0, react-transition-group@^4.4.2: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^16.8.4: +react@16.14.0, react@^16.8.4: version "16.14.0" resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g== @@ -12938,6 +12969,11 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== +regenerator-runtime@^0.13.11: + version "0.13.11" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" + integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== + regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: version "0.13.9" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" @@ -14951,6 +14987,14 @@ universalify@^2.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== +unload@2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/unload/-/unload-2.3.1.tgz#9d16862d372a5ce5cb630ad1309c2fd6e35dacfe" + integrity sha512-MUZEiDqvAN9AIDRbbBnVYVvfcR6DrjCqeU2YQMmliFZl9uaBUjTkhuDQkBiyAy8ad5bx1TXVbqZ3gg7namsWjA== + dependencies: + "@babel/runtime" "^7.6.2" + detect-node "2.1.0" + unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -15744,9 +15788,9 @@ xterm@^4.15.0: integrity sha512-Ik1GoSq1yqKZQ2LF37RPS01kX9t4TP8gpamUYblD09yvWX5mEYuMK4CcqH6+plgiNEZduhTz/UrcaWs97gOlOw== xterm@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.0.0.tgz#0af50509b33d0dc62fde7a4ec17750b8e453cc5c" - integrity sha512-tmVsKzZovAYNDIaUinfz+VDclraQpPUnAME+JawosgWRMphInDded/PuY0xmU5dOhyeYZsI0nz5yd8dPYsdLTA== + version "5.1.0" + resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.1.0.tgz#3e160d60e6801c864b55adf19171c49d2ff2b4fc" + integrity sha512-LovENH4WDzpwynj+OTkLyZgJPeDom9Gra4DMlGAgz6pZhIDCQ+YuO7yfwanY+gVbn/mmZIStNOnVRU/ikQuAEQ== y18n@^4.0.0: version "4.0.3"