Bump lukechampine.com/blake3 from 1.3.0 to 1.4.0 (#4439) #462
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and Release for Windows 7 | |
on: | |
workflow_dispatch: | |
release: | |
types: [published] | |
push: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
jobs: | |
build: | |
permissions: | |
contents: write | |
strategy: | |
matrix: | |
include: | |
# BEGIN Windows 7 | |
- goos: windows | |
goarch: amd64 | |
assetname: win7-64 | |
- goos: windows | |
goarch: 386 | |
assetname: win7-32 | |
# END Windows 7 | |
fail-fast: false | |
runs-on: ubuntu-latest | |
env: | |
GOOS: ${{ matrix.goos}} | |
GOARCH: ${{ matrix.goarch }} | |
CGO_ENABLED: 0 | |
steps: | |
- name: Checkout codebase | |
uses: actions/checkout@v4 | |
- name: Show workflow information | |
run: | | |
_NAME=${{ matrix.assetname }} | |
echo "GOOS: ${{ matrix.goos }}, GOARCH: ${{ matrix.goarch }}, RELEASE_NAME: $_NAME" | |
echo "ASSET_NAME=$_NAME" >> $GITHUB_ENV | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: go.mod | |
check-latest: true | |
- name: Setup patched builder | |
run: | | |
GOSDK=$(go env GOROOT) | |
rm -r $GOSDK/* | |
cd $GOSDK | |
curl -O -L https://github.com/XTLS/go-win7/releases/latest/download/go-for-win7-linux-amd64.zip | |
unzip ./go-for-win7-linux-amd64.zip -d $GOSDK | |
rm ./go-for-win7-linux-amd64.zip | |
- name: Get project dependencies | |
run: go mod download | |
- name: Build Xray | |
run: | | |
mkdir -p build_assets | |
COMMID=$(git describe --always --dirty) | |
echo 'Building Xray for Windows 7...' | |
go build -o build_assets/xray.exe -trimpath -buildvcs=false -ldflags="-X github.com/xtls/xray-core/core.build=${COMMID} -s -w -buildid=" -v ./main | |
echo 'CreateObject("Wscript.Shell").Run "xray.exe -config config.json",0' > build_assets/xray_no_window.vbs | |
echo 'Start-Process -FilePath ".\xray.exe" -ArgumentList "-config .\config.json" -WindowStyle Hidden' > build_assets/xray_no_window.ps1 | |
# The line below is for without running conhost.exe version. Commented for not being used. Provided for reference. | |
# go build -o build_assets/wxray.exe -trimpath -buildvcs=false -ldflags="-H windowsgui -X github.com/xtls/xray-core/core.build=${COMMID} -s -w -buildid=" -v ./main | |
- name: Restore Geodat Cache | |
uses: actions/cache/restore@v4 | |
with: | |
path: resources | |
key: xray-geodat- | |
- name: Copy README.md & LICENSE | |
run: | | |
mv -f resources/* build_assets | |
cp ${GITHUB_WORKSPACE}/README.md ./build_assets/README.md | |
cp ${GITHUB_WORKSPACE}/LICENSE ./build_assets/LICENSE | |
- name: Create ZIP archive | |
if: github.event_name == 'release' | |
shell: bash | |
run: | | |
pushd build_assets || exit 1 | |
touch -mt $(date +%Y01010000) * | |
zip -9vr ../Xray-${{ env.ASSET_NAME }}.zip . | |
popd || exit 1 | |
FILE=./Xray-${{ env.ASSET_NAME }}.zip | |
DGST=$FILE.dgst | |
for METHOD in {"md5","sha1","sha256","sha512"} | |
do | |
openssl dgst -$METHOD $FILE | sed 's/([^)]*)//g' >>$DGST | |
done | |
- name: Change the name | |
run: | | |
mv build_assets Xray-${{ env.ASSET_NAME }} | |
- name: Upload files to Artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Xray-${{ env.ASSET_NAME }} | |
path: | | |
./Xray-${{ env.ASSET_NAME }}/* | |
- name: Upload binaries to release | |
uses: svenstaro/upload-release-action@v2 | |
if: github.event_name == 'release' | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
file: ./Xray-${{ env.ASSET_NAME }}.zip* | |
tag: ${{ github.ref }} | |
file_glob: true |