mirror of
https://github.com/VSCodium/vscodium.git
synced 2026-04-14 04:38:18 +10:00
(experiment) cleanup and move linux builds to GHA
This commit is contained in:
120
.github/workflows/linux.yml
vendored
Normal file
120
.github/workflows/linux.yml
vendored
Normal file
@@ -0,0 +1,120 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
arch: [x64, arm64, arm]
|
||||
env:
|
||||
OS_NAME: 'linux'
|
||||
BUILDARCH: ${{ matrix.arch }}
|
||||
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: Install build deps
|
||||
run: |
|
||||
triplet=
|
||||
case $BUILDARCH in
|
||||
arm)
|
||||
arch=armhf
|
||||
triplet=arm-linux-gnueabihf
|
||||
;;
|
||||
|
||||
arm64)
|
||||
arch=arm64
|
||||
triplet=aarch64-linux-gnu
|
||||
;;
|
||||
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
|
||||
pushd 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
|
||||
popd
|
||||
echo "::set-env name=CC::/usr/bin/$triplet-gcc"
|
||||
echo "::set-env name=CXX::/usr/bin/$triplet-g++"
|
||||
echo "::set-env name=CC_host::/usr/bin/gcc"
|
||||
echo "::set-env name=CXX_host::/usr/bin/g++"
|
||||
echo "::set-env name=PKG_CONFIG_LIBDIR::/usr/lib/$triplet/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig"
|
||||
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 update
|
||||
sudo apt-get install libx11-dev
|
||||
fi
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
npm_config_arch: ${{ matrix.arch }}
|
||||
npm_config_target_arch: ${{ matrix.arch }}
|
||||
run: ./build.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Zip release
|
||||
run: |
|
||||
cd VSCode-linux-${BUILDARCH}
|
||||
tar czf ../VSCodium-linux-${BUILDARCH}-${LATEST_MS_TAG}.tar.gz .
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Generate shasums
|
||||
run: ./sum.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
with:
|
||||
tag_name: ${{ env.LATEST_MS_TAG }}
|
||||
files: |
|
||||
./*.sha256
|
||||
./*.zip
|
||||
./*.tar.gz
|
||||
./*.deb
|
||||
./*.rpm
|
||||
./*.AppImage
|
||||
./*.AppImage.zsync
|
||||
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 }}
|
||||
|
||||
33
.github/workflows/macos.yml
vendored
33
.github/workflows/macos.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: CI
|
||||
name: macos_build
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
build:
|
||||
runs-on: macOS-latest
|
||||
env:
|
||||
TRAVIS_OS_NAME: "osx"
|
||||
OS_NAME: "osx"
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
@@ -35,22 +35,45 @@ jobs:
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: ./build.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- 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 }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
run: |
|
||||
if [ -d "VSCode-darwin" ]; then # just in case the build failed
|
||||
cd VSCode-darwin
|
||||
export CERTIFICATE_P12=VSCodium.p12
|
||||
echo $CERTIFICATE_OSX_P12 | base64 --decode > $CERTIFICATE_P12
|
||||
export KEYCHAIN=build.keychain
|
||||
security create-keychain -p mysecretpassword $KEYCHAIN
|
||||
security default-keychain -s $KEYCHAIN
|
||||
security unlock-keychain -p mysecretpassword $KEYCHAIN
|
||||
security import $CERTIFICATE_P12 -k $KEYCHAIN -P $CERTIFICATE_OSX_PASSWORD -T /usr/bin/codesign
|
||||
security set-key-partition-list -S apple-tool:,apple: -s -k mysecretpassword $KEYCHAIN
|
||||
codesign --deep --force --verbose --sign "$CERTIFICATE_OSX_ID" VSCodium.app
|
||||
fi
|
||||
|
||||
- name: Zip release
|
||||
run: ./create_zip.sh
|
||||
run: |
|
||||
cd VSCode-darwin
|
||||
zip -r -X -y ../VSCodium-darwin-${LATEST_MS_TAG}.zip ./*.app
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: DMG the release
|
||||
run: ./create_dmg.sh
|
||||
run: |
|
||||
pushd VSCode-darwin
|
||||
npx create-dmg VSCodium.app ..
|
||||
mv "../VSCodium ${LATEST_MS_TAG}.dmg" "../VSCodium.${LATEST_MS_TAG}.dmg"
|
||||
popd
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Generate shasums
|
||||
run: ./sum.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
|
||||
Reference in New Issue
Block a user