Bump golang.org/x/net from 0.49.0 to 0.50.0 #3394
This file contains hidden or 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: | |
| check-assets: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Restore Geodat Cache | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: resources | |
| key: xray-geodat- | |
| - name: Restore Wintun Cache | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: resources | |
| key: xray-wintun- | |
| - name: Check Assets Existence | |
| id: check-assets | |
| run: | | |
| [ -d 'resources' ] || mkdir resources | |
| LIST=('geoip.dat' 'geosite.dat') | |
| for FILE_NAME in "${LIST[@]}" | |
| do | |
| echo -e "Checking ${FILE_NAME}..." | |
| if [ -s "./resources/${FILE_NAME}" ]; then | |
| echo -e "${FILE_NAME} exists." | |
| else | |
| echo -e "${FILE_NAME} does not exist." | |
| echo "missing=true" >> $GITHUB_OUTPUT | |
| break | |
| fi | |
| done | |
| LIST=('amd64' 'x86') | |
| for ARCHITECTURE in "${LIST[@]}" | |
| do | |
| echo -e "Checking wintun.dll for ${ARCHITECTURE}..." | |
| if [ -s "./resources/wintun/bin/${ARCHITECTURE}/wintun.dll" ]; then | |
| echo -e "wintun.dll for ${ARCHITECTURE} exists." | |
| else | |
| echo -e "wintun.dll for ${ARCHITECTURE} is missing." | |
| echo "missing=true" >> $GITHUB_OUTPUT | |
| break | |
| fi | |
| done | |
| - name: Sleep for 90 seconds if Assets Missing | |
| if: steps.check-assets.outputs.missing == 'true' | |
| run: sleep 90 | |
| build: | |
| needs: check-assets | |
| 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@v6 | |
| - 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@v6 | |
| 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 -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" 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 -gcflags="all=-l=4" -ldflags="-X github.com/xtls/xray-core/core.build=${COMMID} -s -w -buildid=" -v ./main | |
| # 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 -gcflags="all=-l=4" -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@v5 | |
| with: | |
| path: resources | |
| key: xray-geodat- | |
| - name: Restore Wintun Cache | |
| uses: actions/cache/restore@v5 | |
| with: | |
| path: resources | |
| key: xray-wintun- | |
| - name: Add additional assets into package | |
| run: | | |
| mv -f resources/geo* build_assets/ | |
| if [[ ${GOOS} == 'windows' ]]; then | |
| 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 | |
| if [[ ${GOARCH} == 'amd64' ]]; then | |
| mv resources/wintun/bin/amd64/wintun.dll build_assets/ | |
| fi | |
| if [[ ${GOARCH} == '386' ]]; then | |
| mv resources/wintun/bin/x86/wintun.dll build_assets/ | |
| fi | |
| mv resources/wintun/LICENSE.txt build_assets/LICENSE-wintun.txt | |
| fi | |
| - name: Copy README.md & LICENSE | |
| run: | | |
| 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: 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 | |
| - name: Upload files to Artifacts | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: Xray-${{ env.ASSET_NAME }} | |
| path: | | |
| ./build_assets/* |