Merge pull request #506 from stripedpajamas/fix-mac-build

Fix Mac build + cleanup
This commit is contained in:
Peter Squicciarini 2020-09-19 10:32:11 -07:00 committed by GitHub
commit 82fb8829fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 146 additions and 179 deletions

73
.github/workflows/macos.yml vendored Normal file
View File

@ -0,0 +1,73 @@
name: CI
on:
push:
pull_request:
branches: [ master ]
jobs:
build:
runs-on: macOS-latest
env:
TRAVIS_OS_NAME: "osx"
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v1.4.3
with:
node-version: 12.14.1
- name: Clone VSCode repo
run: |
. get_repo.sh
echo "::set-env name=LATEST_MS_TAG::$LATEST_MS_TAG"
echo "::set-env name=LATEST_MS_COMMIT::$LATEST_MS_COMMIT"
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
. check_tags.sh
echo "::set-env name=SHOULD_BUILD::$SHOULD_BUILD"
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./build.sh
- name: Sign binary
run: ./sign_mac_app.sh
env:
CERTIFICATE_OSX_P12: ${{ secrets.CERTIFICATE_OSX_P12 }}
CERTIFICATE_OSX_PASSWORD: ${{ secrets.CERTIFICATE_OSX_PASSWORD }}
CERTIFICATE_OSX_ID: ${{ secrets.CERTIFICATE_OSX_ID }}
- name: Zip release
run: ./create_zip.sh
- name: DMG the release
run: ./create_dmg.sh
- name: Generate shasums
run: ./sum.sh
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == 'yes'
with:
tag_name: ${{ env.LATEST_MS_TAG }}
files: |
./*.zip
./*.dmg
./*.sha256
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

View File

@ -1,23 +1,19 @@
matrix:
jobs:
include:
- os: linux
sudo: required
env: BUILDARCH=x64
dist: trusty
- os: linux
sudo: required
env: BUILDARCH=arm64
dist: trusty
- os: linux
sudo: required
env: BUILDARCH=arm
dist: trusty
# - os: osx
language: node_js
node_js: "12"
node_js: "12.14.1"
before_install:
install:
- curl -o- -L https://yarnpkg.com/install.sh | bash
- export PATH="$HOME/.yarn/bin:$PATH"
- . install_deps.sh
@ -28,9 +24,7 @@ script:
- ./build.sh
before_deploy:
- ./sign_mac_app.sh
- ./create_zip.sh
- ./create_dmg.sh
- ./sum.sh
deploy:
@ -38,13 +32,12 @@ deploy:
skip_cleanup: true
overwrite: true
name: $LATEST_MS_TAG
api_key: $GITHUB_TOKEN
token: $GITHUB_TOKEN
file_glob: true
file:
- ./*.sha256
- ./*.zip
- ./*.tar.gz
- ./*.dmg
- ./*.deb
- ./*.rpm
- ./*.AppImage

View File

@ -1,60 +1,35 @@
#!/bin/bash
function keep_alive_small() {
while true; do
echo .
read -t 60 < /proc/self/fd/1 > /dev/null 2>&1
done
}
function keep_alive() {
while true; do
date
sleep 60
done
}
set -ex
if [[ "$SHOULD_BUILD" == "yes" ]]; then
npm config set scripts-prepend-node-path true
export BUILD_SOURCEVERSION=$LATEST_MS_COMMIT
echo "LATEST_MS_COMMIT: ${LATEST_MS_COMMIT}"
echo "BUILD_SOURCEVERSION: ${BUILD_SOURCEVERSION}"
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
fi
./prepare_vscode.sh
. prepare_vscode.sh
cd vscode || exit
export NODE_ENV=production
# these tasks are very slow, so using a keep alive to keep travis alive
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
keep_alive_small &
else
keep_alive &
fi
KA_PID=$!
yarn monaco-compile-check
yarn valid-layers-check
yarn gulp compile-build
yarn gulp compile-extensions-build
yarn gulp minify-vscode
yarn gulp minify-vscode-reh
yarn gulp minify-vscode-reh-web
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
npm install --global create-dmg
yarn gulp vscode-darwin-min-ci
yarn gulp vscode-reh-darwin-min-ci
yarn gulp vscode-reh-web-darwin-min-ci
elif [[ "$CI_WINDOWS" == "True" ]]; then
cp LICENSE.txt LICENSE.rtf # windows build expects rtf license
yarn gulp "vscode-win32-${BUILDARCH}-min-ci"
yarn gulp "vscode-reh-win32-${BUILDARCH}-min-ci"
yarn gulp "vscode-reh-web-win32-${BUILDARCH}-min-ci"
yarn gulp "vscode-win32-${BUILDARCH}-code-helper"
yarn gulp "vscode-win32-${BUILDARCH}-inno-updater"
yarn gulp "vscode-win32-${BUILDARCH}-archive"
@ -62,8 +37,6 @@ if [[ "$SHOULD_BUILD" == "yes" ]]; then
yarn gulp "vscode-win32-${BUILDARCH}-user-setup"
else # linux
yarn gulp vscode-linux-${BUILDARCH}-min-ci
yarn gulp vscode-reh-linux-${BUILDARCH}-min-ci
yarn gulp vscode-reh-web-linux-${BUILDARCH}-min-ci
yarn gulp "vscode-linux-${BUILDARCH}-build-deb"
if [[ "$BUILDARCH" == "x64" ]]; then
@ -72,7 +45,5 @@ if [[ "$SHOULD_BUILD" == "yes" ]]; then
. ../create_appimage.sh
fi
kill $KA_PID
cd ..
fi

View File

@ -1,10 +1,14 @@
#!/bin/bash
REPOSITORY=${TRAVIS_REPO_SLUG:-"VSCodium/vscodium"}
set -e
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
REPOSITORY=$GITHUB_REPOSITORY
else
REPOSITORY=${TRAVIS_REPO_SLUG:-"VSCodium/vscodium"}
fi
GITHUB_RESPONSE=$(curl -s -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/repos/$REPOSITORY/releases/tags/$LATEST_MS_TAG)
echo "Github response: ${GITHUB_RESPONSE}"
VSCODIUM_ASSETS=$(echo $GITHUB_RESPONSE | jq '.assets')
echo "VSCodium assets: ${VSCODIUM_ASSETS}"
# if we just don't have the github token, get out fast
if [ "$GITHUB_TOKEN" != "" ]; then

View File

@ -1,8 +1,10 @@
#!/bin/bash
set -x
if [[ "$SHOULD_BUILD" == "yes" ]]; then
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
cd VSCode-darwin
create-dmg VSCodium.app ..
npx create-dmg VSCodium.app ..
mv "../VSCodium ${LATEST_MS_TAG}.dmg" "../VSCodium.${LATEST_MS_TAG}.dmg"
fi
cd ..

View File

@ -1,5 +1,7 @@
#!/bin/bash
set -ex
if [[ "$SHOULD_BUILD" == "yes" ]]; then
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
cd VSCode-darwin

View File

@ -1,15 +1,10 @@
#!/bin/bash
if [ -d vscode ]; then
cd vscode
git fetch --all
else
git clone https://github.com/Microsoft/vscode.git
cd vscode
fi
export LATEST_MS_COMMIT=$(git rev-list --tags --max-count=1)
export LATEST_MS_TAG=$(git describe --tags ${LATEST_MS_COMMIT})
# figure out latest tag by calling MS update API
UPDATE_INFO=$(curl https://update.code.visualstudio.com/api/update/darwin/stable/lol)
export LATEST_MS_COMMIT=$(echo $UPDATE_INFO | jq -r '.version')
export LATEST_MS_TAG=$(echo $UPDATE_INFO | jq -r '.name')
echo "Got the latest MS tag: ${LATEST_MS_TAG}"
git checkout $LATEST_MS_TAG
cd ..
git clone https://github.com/Microsoft/vscode.git --branch $LATEST_MS_TAG --depth 1

View File

@ -1,13 +1,9 @@
#!/bin/bash
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
brew update
brew install jq zip
else
sudo apt-get update
sudo apt-get install -y fakeroot jq
triplet=
case $BUILDARCH in
sudo apt-get update
sudo apt-get install -y fakeroot jq
triplet=
case $BUILDARCH in
arm)
arch=armhf
triplet=arm-linux-gnueabihf
@ -17,25 +13,24 @@ else
arch=arm64
triplet=aarch64-linux-gnu
;;
esac
esac
if [[ -n "$triplet" ]]; then
sed 's/^deb /deb [arch=amd64] '/g -i /etc/apt/sources.list
echo "deb [arch=$arch] http://ports.ubuntu.com/ubuntu-ports/ trusty main" | sudo tee -a /etc/apt/sources.list.d/$arch.list >/dev/null
sudo dpkg --add-architecture $arch
sudo apt-get update
sudo apt-get install libc6-dev-$arch-cross gcc-$triplet g++-$triplet `apt-cache search x11proto | grep ^x11proto | cut -f 1 -d ' '` xz-utils pkg-config
mkdir -p dl
cd dl
apt-get download libx11-dev:$arch libx11-6:$arch libxkbfile-dev:$arch libxkbfile1:$arch libxau-dev:$arch libxdmcp-dev:$arch libxcb1-dev:$arch libsecret-1-dev:$arch libsecret-1-0:$arch libpthread-stubs0-dev:$arch libglib2.0-dev:$arch libglib2.0-0:$arch libffi-dev:$arch libffi6:$arch zlib1g:$arch libpcre3-dev:$arch libpcre3:$arch
for i in *.deb; do ar x $i; sudo tar -C / -xf data.tar.*; rm -f data.tar.*; done
cd ..
export CC=/usr/bin/$triplet-gcc
export CXX=/usr/bin/$triplet-g++
export CC_host=/usr/bin/gcc
export CXX_host=/usr/bin/g++
export PKG_CONFIG_LIBDIR=/usr/lib/$triplet/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
else
sudo apt-get install libx11-dev libxkbfile-dev libsecret-1-dev rpm
fi
if [[ -n "$triplet" ]]; then
sed 's/^deb /deb [arch=amd64] '/g -i /etc/apt/sources.list
echo "deb [arch=$arch] http://ports.ubuntu.com/ubuntu-ports/ trusty main" | sudo tee -a /etc/apt/sources.list.d/$arch.list >/dev/null
sudo dpkg --add-architecture $arch
sudo apt-get update
sudo apt-get install libc6-dev-$arch-cross gcc-$triplet g++-$triplet `apt-cache search x11proto | grep ^x11proto | cut -f 1 -d ' '` xz-utils pkg-config
mkdir -p dl
cd dl
apt-get download libx11-dev:$arch libx11-6:$arch libxkbfile-dev:$arch libxkbfile1:$arch libxau-dev:$arch libxdmcp-dev:$arch libxcb1-dev:$arch libsecret-1-dev:$arch libsecret-1-0:$arch libpthread-stubs0-dev:$arch libglib2.0-dev:$arch libglib2.0-0:$arch libffi-dev:$arch libffi6:$arch zlib1g:$arch libpcre3-dev:$arch libpcre3:$arch
for i in *.deb; do ar x $i; sudo tar -C / -xf data.tar.*; rm -f data.tar.*; done
cd ..
export CC=/usr/bin/$triplet-gcc
export CXX=/usr/bin/$triplet-g++
export CC_host=/usr/bin/gcc
export CXX_host=/usr/bin/g++
export PKG_CONFIG_LIBDIR=/usr/lib/$triplet/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
else
sudo apt-get install libx11-dev libxkbfile-dev libsecret-1-dev rpm
fi

View File

@ -1,7 +1,11 @@
#!/bin/bash
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
set -e
if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
fi
cp -rp src/* vscode/
cd vscode || exit
@ -11,8 +15,13 @@ cd vscode || exit
# apply patches
patch -u src/vs/platform/update/electron-main/updateService.win32.ts -i ../patches/update-cache-path.patch
yarn --frozen-lockfile
yarn postinstall
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
CHILD_CONCURRENCY=1 yarn --frozen-lockfile --ignore-optional
npm_config_argv='{"original":["--ignore-optional"]}' yarn postinstall
else
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
yarn postinstall
fi
if [[ "$BUILDARCH" == *"arm"* ]]; then
sed -i -z 's/,\n[^\n]*arm[^\n]*//' node_modules/vscode-sqlite3/binding.gyp
@ -66,3 +75,5 @@ if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
# we need to edit a line in the post install template
sed -i "s/code-oss/codium/" resources/linux/debian/postinst.template
fi
cd ..

View File

@ -1,11 +0,0 @@
{
"type": "typescript",
"sources": [
"examples/company.ts",
"examples/conway.ts",
"examples/employee.ts",
"examples/large.ts",
"examples/small.ts"
]
}

View File

@ -1,3 +0,0 @@
<?xml>
</xml>

View File

@ -1,19 +0,0 @@
<svg width="1024" height="1024" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M508.827 0.772461C224.654 0.772461 0.40625 305.969 0.40625 710.148L229.547 749.213C169.075 696.515 206.161 288.058 508.827 288.058C811.493 288.058 858.584 696.417 797.134 749.213L1023.37 710.148C1023.37 305.969 793.001 0.772461 508.827 0.772461Z" fill="#81DA56"/>
<path d="M1023.39 707.988C1023.39 845.616 861.716 835.104 753.987 874.753C646.259 914.402 544.677 1023.77 511.891 1023.77C476.573 1023.77 323.282 888.651 272.129 874.753C177.65 841.24 0.390625 845.616 0.390625 707.988C0.390625 426.078 229.397 822.803 511.891 822.803C794.384 822.803 1023.39 426.078 1023.39 707.988Z" fill="#81DA56"/>
<path d="M116.646 836.315C199.184 857.711 259.346 867.78 281.722 879.107C442.204 945.968 477.586 1021.56 509.669 1021.56C550.626 1021.56 578.994 843.184 578.994 843.184C465.003 803.607 384.094 670.917 194.953 615.54C194.953 615.54 56.6348 567.484 27.1417 598.443C-5.58102 675.828 -34.9724 794.619 116.646 836.315Z" fill="url(#paint0_linear)"/>
<path d="M732.759 881.38C573.081 963.17 560.416 1015.19 507.22 1022.74C507.22 1022.74 488.789 1020.59 402.516 951.423C362.868 919.636 291.022 883.112 291.022 883.112C497.05 914.559 584.058 679.569 824.424 615.573C824.424 615.573 892.438 799.59 732.759 881.38Z" fill="#81DA56"/>
<defs>
<linearGradient id="paint0_linear" x1="297.596" y1="598.39" x2="420.618" y2="879.08" gradientUnits="userSpaceOnUse">
<stop stop-color="#81DA56"/>
<stop offset="0.233393" stop-color="#77D34A"/>
<stop offset="0.433117" stop-color="#6BCD3C"/>
<stop offset="0.580887" stop-color="#65C139"/>
<stop offset="0.699298" stop-color="#60B338"/>
<stop offset="0.838132" stop-color="#529F2D"/>
<stop offset="0.928389" stop-color="#4B9726"/>
<stop offset="1" stop-color="#3C7E1B"/>
<stop offset="1" stop-color="#438E1F"/>
</linearGradient>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1,19 +0,0 @@
<svg width="1024" height="1024" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M508.827 0.772461C224.654 0.772461 0.40625 305.969 0.40625 710.148L229.547 749.213C169.075 696.515 206.161 288.058 508.827 288.058C811.493 288.058 858.584 696.417 797.134 749.213L1023.37 710.148C1023.37 305.969 793.001 0.772461 508.827 0.772461Z" fill="#81DA56"/>
<path d="M1023.39 707.988C1023.39 845.616 861.716 835.104 753.987 874.753C646.259 914.402 544.677 1023.77 511.891 1023.77C476.573 1023.77 323.282 888.651 272.129 874.753C177.65 841.24 0.390625 845.616 0.390625 707.988C0.390625 426.078 229.397 822.803 511.891 822.803C794.384 822.803 1023.39 426.078 1023.39 707.988Z" fill="#81DA56"/>
<path d="M116.646 836.315C199.184 857.711 259.346 867.78 281.722 879.107C442.204 945.968 477.586 1021.56 509.669 1021.56C550.626 1021.56 578.994 843.184 578.994 843.184C465.003 803.607 384.094 670.917 194.953 615.54C194.953 615.54 56.6348 567.484 27.1417 598.443C-5.58102 675.828 -34.9724 794.619 116.646 836.315Z" fill="url(#paint0_linear)"/>
<path d="M732.759 881.38C573.081 963.17 560.416 1015.19 507.22 1022.74C507.22 1022.74 488.789 1020.59 402.516 951.423C362.868 919.636 291.022 883.112 291.022 883.112C497.05 914.559 584.058 679.569 824.424 615.573C824.424 615.573 892.438 799.59 732.759 881.38Z" fill="#81DA56"/>
<defs>
<linearGradient id="paint0_linear" x1="297.596" y1="598.39" x2="420.618" y2="879.08" gradientUnits="userSpaceOnUse">
<stop stop-color="#81DA56"/>
<stop offset="0.233393" stop-color="#77D34A"/>
<stop offset="0.433117" stop-color="#6BCD3C"/>
<stop offset="0.580887" stop-color="#65C139"/>
<stop offset="0.699298" stop-color="#60B338"/>
<stop offset="0.838132" stop-color="#529F2D"/>
<stop offset="0.928389" stop-color="#4B9726"/>
<stop offset="1" stop-color="#3C7E1B"/>
<stop offset="1" stop-color="#438E1F"/>
</linearGradient>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1,19 +0,0 @@
<svg width="1024" height="1024" viewBox="0 0 1024 1024" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M508.827 0.772461C224.654 0.772461 0.40625 305.969 0.40625 710.148L229.547 749.213C169.075 696.515 206.161 288.058 508.827 288.058C811.493 288.058 858.584 696.417 797.134 749.213L1023.37 710.148C1023.37 305.969 793.001 0.772461 508.827 0.772461Z" fill="#81DA56"/>
<path d="M1023.39 707.988C1023.39 845.616 861.716 835.104 753.987 874.753C646.259 914.402 544.677 1023.77 511.891 1023.77C476.573 1023.77 323.282 888.651 272.129 874.753C177.65 841.24 0.390625 845.616 0.390625 707.988C0.390625 426.078 229.397 822.803 511.891 822.803C794.384 822.803 1023.39 426.078 1023.39 707.988Z" fill="#81DA56"/>
<path d="M116.646 836.315C199.184 857.711 259.346 867.78 281.722 879.107C442.204 945.968 477.586 1021.56 509.669 1021.56C550.626 1021.56 578.994 843.184 578.994 843.184C465.003 803.607 384.094 670.917 194.953 615.54C194.953 615.54 56.6348 567.484 27.1417 598.443C-5.58102 675.828 -34.9724 794.619 116.646 836.315Z" fill="url(#paint0_linear)"/>
<path d="M732.759 881.38C573.081 963.17 560.416 1015.19 507.22 1022.74C507.22 1022.74 488.789 1020.59 402.516 951.423C362.868 919.636 291.022 883.112 291.022 883.112C497.05 914.559 584.058 679.569 824.424 615.573C824.424 615.573 892.438 799.59 732.759 881.38Z" fill="#81DA56"/>
<defs>
<linearGradient id="paint0_linear" x1="297.596" y1="598.39" x2="420.618" y2="879.08" gradientUnits="userSpaceOnUse">
<stop stop-color="#81DA56"/>
<stop offset="0.233393" stop-color="#77D34A"/>
<stop offset="0.433117" stop-color="#6BCD3C"/>
<stop offset="0.580887" stop-color="#65C139"/>
<stop offset="0.699298" stop-color="#60B338"/>
<stop offset="0.838132" stop-color="#529F2D"/>
<stop offset="0.928389" stop-color="#4B9726"/>
<stop offset="1" stop-color="#3C7E1B"/>
<stop offset="1" stop-color="#438E1F"/>
</linearGradient>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -34,7 +34,7 @@ if [[ "$CI_WINDOWS" == "True" ]]; then
git config --global core.autocrlf true
else
# TRAVIS_REPO_SLUG = e.g. VSCodium/vscodium
VERSIONS_REPO=$(echo ${TRAVIS_REPO_SLUG} | awk -F"/" '{ print $1 }')/versions
VERSIONS_REPO=$(echo ${TRAVIS_REPO_SLUG:-${GITHUB_REPOSITORY}} | awk -F"/" '{ print $1 }')/versions
fi
# generateJson <assetName>

View File

@ -1,12 +1,7 @@
steps:
- task: NodeTool@0
inputs:
versionSpec: "12.13.0"
- script: |
choco install jq
displayName: 'install jq from choco'
- task: geeklearningio.gl-vsts-tasks-yarn.yarn-installer-task.YarnInstaller@2
displayName: 'Install Yarn'
versionSpec: "12.14.1"
- task: UsePythonVersion@0
displayName: 'Use Python 2.x'
inputs:
@ -27,9 +22,6 @@ steps:
filePath: 'check_tags.ps1'
env:
MAPPED_GITHUB_TOKEN: $(GITHUB_TOKEN)
- script: |
git -C vscode status
displayName: 'vscode status'
- powershell: |
bash ./build.sh
displayName: 'go build it!'