I believe the issue has been solved. https://github.com/cli/cli/issues/6599#issuecomment-1357765073
210 lines
9.0 KiB
YAML
210 lines
9.0 KiB
YAML
name: Release Cromite CI
|
|
permissions:
|
|
contents: write
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
sha:
|
|
description: 'uazo/cromite SHA'
|
|
required: true
|
|
default: ''
|
|
type:
|
|
description: 'runner? [dev/ci]'
|
|
required: true
|
|
default: 'ci'
|
|
draft:
|
|
description: 'draft? [true/false]'
|
|
required: true
|
|
default: 'false'
|
|
|
|
env:
|
|
CROMITE_SHA: ${{ github.event.inputs.sha }}
|
|
REMOVEDOCKERSUPPORT: true
|
|
USELOCALIMAGE: true
|
|
|
|
jobs:
|
|
release:
|
|
runs-on: ${{ github.event.inputs.type }}
|
|
env:
|
|
IS_DRAFT: ${{ github.event.inputs.draft }}
|
|
OUTPUTFILE_ARM: /storage/images/${{ github.event.inputs.sha }}/android/false/arm/
|
|
OUTPUTFILE_ARM64: /storage/images/${{ github.event.inputs.sha }}/android/false/arm64/
|
|
OUTPUTFILE_X64: /storage/images/${{ github.event.inputs.sha }}/android/false/x64/
|
|
OUTPUTFILE_WIN: /storage/images/${{ github.event.inputs.sha }}/win/x64/
|
|
OUTPUTFILE_LIN: /storage/images/${{ github.event.inputs.sha }}/linux/false/lin64/
|
|
|
|
steps:
|
|
- name: Login to Docker Hub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
|
|
- name: Prepare container
|
|
run: |
|
|
wget https://github.com/ericchiang/pup/releases/download/v0.4.0/pup_v0.4.0_linux_amd64.zip
|
|
unzip pup_v0.4.0_linux_amd64.zip && rm pup_v0.4.0_linux_amd64.zip
|
|
BRANCH=$(curl https://github.com/uazo/cromite/branch_commits/$CROMITE_SHA | ./pup -p li.branch:last-child a text{} | xargs)
|
|
echo "BRANCH=$BRANCH" >> $GITHUB_ENV
|
|
|
|
wget https://github.com/cli/cli/releases/download/v2.18.1/gh_2.18.1_linux_amd64.tar.gz
|
|
tar xfz gh_2.18.1_linux_amd64.tar.gz
|
|
|
|
- name: Checkout 'uazo/cromite'
|
|
uses: actions/checkout@v2
|
|
with:
|
|
repository: 'uazo/cromite'
|
|
path: 'cromite'
|
|
fetch-depth: 1
|
|
|
|
- name: Create release
|
|
shell: bash
|
|
run: |
|
|
VERSION=v$(cat ${{ env.OUTPUTFILE_ARM64 }}/RELEASE)
|
|
|
|
cd cromite/tools
|
|
|
|
GH=gh_2.21.1_linux_amd64/bin/gh
|
|
wget https://github.com/cli/cli/releases/download/v2.21.1/gh_2.21.1_linux_amd64.tar.gz
|
|
tar xfz gh_2.21.1_linux_amd64.tar.gz
|
|
|
|
echo ${{ secrets.GITHUB_TOKEN }} | $GH auth login --with-token
|
|
|
|
echo "\`\`\`" >note
|
|
# echo "this is not the official release of bromite but a test version." >>note
|
|
# echo "you can try it at your own risk." >>note
|
|
echo "\`\`\`" >>note
|
|
|
|
$GH release create $VERSION-$CROMITE_SHA --notes-file note -d
|
|
|
|
# android arm
|
|
echo "::group::-------- android arm"
|
|
sudo cp ${{ env.OUTPUTFILE_ARM }}/apks/ChromePublic.apk arm_ChromePublic.apk
|
|
sudo chown runner arm_ChromePublic.apk
|
|
echo Uploading arm_ChromePublic
|
|
$GH release upload $VERSION-$CROMITE_SHA arm_ChromePublic.apk
|
|
echo "::endgroup::"
|
|
|
|
# android arm64
|
|
echo "::group::-------- android arm64"
|
|
sudo cp ${{ env.OUTPUTFILE_ARM64 }}/apks/ChromePublic.apk arm64_ChromePublic.apk
|
|
sudo chown runner arm64_ChromePublic.apk
|
|
echo Uploading arm64_ChromePublic
|
|
$GH release upload $VERSION-$CROMITE_SHA arm64_ChromePublic.apk
|
|
echo "::endgroup::"
|
|
|
|
# android x64
|
|
echo "::group::-------- android x64"
|
|
sudo cp ${{ env.OUTPUTFILE_X64 }}/apks/ChromePublic.apk x64_ChromePublic.apk
|
|
sudo chown runner x64_ChromePublic.apk
|
|
echo Uploading x64_ChromePublic
|
|
$GH release upload $VERSION-$CROMITE_SHA x64_ChromePublic.apk
|
|
echo "::endgroup::"
|
|
|
|
echo "::group::-------- chrome.size"
|
|
test $VERSION-$CROMITE_SHA $OUTPUTFILE_ARM64/chrome.size && \
|
|
$GH release upload $VERSION-$CROMITE_SHA $OUTPUTFILE_ARM64/chrome.size
|
|
echo "::endgroup::"
|
|
|
|
echo "::group::-------- ChromePublic.apk.mapping"
|
|
sudo cp ${{ env.OUTPUTFILE_ARM64 }}/apks/ChromePublic.apk.mapping arm64_ChromePublic.apk.mapping
|
|
$GH release upload $VERSION-$CROMITE_SHA arm64_ChromePublic.apk.mapping
|
|
sudo cp ${{ env.OUTPUTFILE_X64 }}/apks/ChromePublic.apk.mapping x64_ChromePublic.apk.mapping
|
|
$GH release upload $VERSION-$CROMITE_SHA x64_ChromePublic.apk.mapping
|
|
echo "::endgroup::"
|
|
|
|
echo "::group::-------- Uploading arm64_ninja_log_trace.html"
|
|
test $OUTPUTFILE_ARM64/ninja_log_trace.html && \
|
|
cp $OUTPUTFILE_ARM64/ninja_log_trace.html arm64_ninja_log_trace.html && \
|
|
$GH release upload $VERSION-$CROMITE_SHA arm64_ninja_log_trace.html
|
|
echo "::endgroup::"
|
|
|
|
# windows x64
|
|
echo "::group::-------- windows x64"
|
|
mkdir chrome-win/
|
|
cp $OUTPUTFILE_WIN/*.manifest chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome.exe chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_100_percent.pak chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_200_percent.pak chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_elf.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_proxy.exe chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_pwa_launcher.exe chrome-win/
|
|
cp $OUTPUTFILE_WIN/chrome_wer.dll chrome-win/
|
|
cp "/win_sdk/10.0.22621.0/Windows Kits/10/Redist/D3D/x64/d3dcompiler_47.dll" chrome-win/
|
|
cp $OUTPUTFILE_WIN/elevation_service.exe chrome-win/
|
|
cp "$OUTPUTFILE_WIN/First Run" chrome-win/
|
|
cp $OUTPUTFILE_WIN/headless_lib_data.pak chrome-win/
|
|
cp $OUTPUTFILE_WIN/icudtl.dat chrome-win/
|
|
cp $OUTPUTFILE_WIN/libEGL.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/libGLESv2.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/Logo.png chrome-win/
|
|
cp $OUTPUTFILE_WIN/mojo_core.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/notification_helper.exe chrome-win/
|
|
cp $OUTPUTFILE_WIN/resources.pak chrome-win/
|
|
cp $OUTPUTFILE_WIN/SmallLogo.png chrome-win/
|
|
cp $OUTPUTFILE_WIN/snapshot_blob.bin chrome-win/
|
|
cp $OUTPUTFILE_WIN/VkICD_mock_icd.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/VkLayer_khronos_validation.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/vk_swiftshader.dll chrome-win/
|
|
cp $OUTPUTFILE_WIN/vulkan-1.dll chrome-win/
|
|
cp -r $OUTPUTFILE_WIN/locales chrome-win/locales
|
|
|
|
#test chrome-win.zip && rm chrome-win.zip
|
|
zip -r chrome-win.zip chrome-win/
|
|
|
|
echo Uploading chrome-win.zip
|
|
$GH release upload $VERSION-$CROMITE_SHA chrome-win.zip
|
|
echo "::endgroup::"
|
|
|
|
## linux
|
|
echo "::group::-------- linux x64"
|
|
mkdir chrome-lin/
|
|
cp $OUTPUTFILE_LIN/chrome chrome-lin/
|
|
cp $OUTPUTFILE_LIN/chrome_100_percent.pak chrome-lin/
|
|
cp $OUTPUTFILE_LIN/chrome_200_percent.pak chrome-lin/
|
|
cp $OUTPUTFILE_LIN/chrome_crashpad_handler chrome-lin/
|
|
cp $OUTPUTFILE_LIN/chrome-wrapper chrome-lin/
|
|
cp $OUTPUTFILE_LIN/icudtl.dat chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libEGL.so chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libGLESv2.so chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libvulkan.so.1 chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libqt5_shim.so chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libqt6_shim.so chrome-lin/
|
|
cp $OUTPUTFILE_LIN/libvk_swiftshader.so chrome-lin/
|
|
cp -r $OUTPUTFILE_LIN/locales/ chrome-lin/locales
|
|
cp $OUTPUTFILE_LIN/product_logo_48.png chrome-lin/
|
|
cp $OUTPUTFILE_LIN/resources.pak chrome-lin/
|
|
cp $OUTPUTFILE_LIN/snapshot_blob.bin chrome-lin/
|
|
cp $OUTPUTFILE_LIN/xdg-mime chrome-lin/
|
|
cp $OUTPUTFILE_LIN/xdg-settings chrome-lin/
|
|
|
|
tar -czvf chrome-lin64.tar.gz chrome-lin/
|
|
|
|
echo Uploading chrome-lin64.tar.gz
|
|
$GH release upload $VERSION-$CROMITE_SHA chrome-lin64.tar.gz
|
|
echo "::endgroup::"
|
|
|
|
echo "::group::-------- arm64 symbols"
|
|
zip arm64_symbols.zip ${{ env.OUTPUTFILE_ARM64 }}/dump_syms \
|
|
${{ env.OUTPUTFILE_ARM64 }}/minidump_stackwalk \
|
|
${{ env.OUTPUTFILE_ARM64 }}/libchrome.so
|
|
$GH release upload $VERSION-$CROMITE_SHA arm64_symbols.zip
|
|
echo "::endgroup::"
|
|
|
|
TIMESTAMP=$(date +%s -r chrome-win.zip)
|
|
echo >updateurl.txt "browser=chromium;os=windows;architecture=64-bit;timestamp=$TIMESTAMP;editor=uazo;channel=stable;repository=https://github.com/uazo/cromite/releases;download=https://github.com/uazo/cromite/releases/latest/download/chrome-win.zip;version=$(cat $OUTPUTFILE_WIN/RELEASE);revision=1;commit=$CROMITE_SHA"
|
|
$GH release upload $VERSION-$CROMITE_SHA updateurl.txt
|
|
|
|
$GH release edit $VERSION-$CROMITE_SHA -t $VERSION-$CROMITE_SHA
|
|
|
|
if [ $IS_DRAFT == "false" ]; then
|
|
$GH release edit $VERSION-$CROMITE_SHA --draft=false
|
|
fi
|
|
|
|
VERSION=$(cat ${{ env.OUTPUTFILE_ARM64 }}/RELEASE)
|
|
docker push uazo/cromite:$VERSION-$CROMITE_SHA
|
|
docker push uazo/cromite-build:$VERSION-$CROMITE_SHA
|
|
|