Skip to content

Commit

Permalink
revert test code
Browse files Browse the repository at this point in the history
  • Loading branch information
nbaztec committed Jan 31, 2025
1 parent 8d45e89 commit 0c7746e
Showing 1 changed file with 179 additions and 179 deletions.
358 changes: 179 additions & 179 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,200 +98,200 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

# release:
# permissions:
# id-token: write
# contents: write
# attestations: write
# name: ${{ matrix.target }} (${{ matrix.runner }})
# runs-on: ${{ matrix.runner }}
# timeout-minutes: 240
# needs: prepare
# strategy:
# fail-fast: false
# matrix:
# include:
# # `runner`: GHA runner label
# # `target`: Rust build target triple
# # `platform` and `arch`: Used in tarball names
# # `svm`: target platform to use for the Solc binary: https://github.com/roynalnaruto/svm-rs/blob/84cbe0ac705becabdc13168bae28a45ad2299749/svm-builds/build.rs#L4-L24
# - runner: ubuntu-24.04-github-hosted-16core
# target: x86_64-unknown-linux-gnu
# svm_target_platform: linux-amd64
# platform: linux
# arch: amd64
# - runner: ubuntu-24.04-github-hosted-16core
# target: aarch64-unknown-linux-gnu
# svm_target_platform: linux-aarch64
# platform: linux
# arch: arm64
# - runner: macos-latest
# target: x86_64-apple-darwin
# svm_target_platform: macosx-amd64
# platform: darwin
# arch: amd64
# - runner: macos-latest
# target: aarch64-apple-darwin
# svm_target_platform: macosx-aarch64
# platform: darwin
# arch: arm64
# steps:
# - uses: actions/checkout@v4
# with:
# ref: ${{ inputs.tag || '' }}
release:
permissions:
id-token: write
contents: write
attestations: write
name: ${{ matrix.target }} (${{ matrix.runner }})
runs-on: ${{ matrix.runner }}
timeout-minutes: 240
needs: prepare
strategy:
fail-fast: false
matrix:
include:
# `runner`: GHA runner label
# `target`: Rust build target triple
# `platform` and `arch`: Used in tarball names
# `svm`: target platform to use for the Solc binary: https://github.com/roynalnaruto/svm-rs/blob/84cbe0ac705becabdc13168bae28a45ad2299749/svm-builds/build.rs#L4-L24
- runner: ubuntu-24.04-github-hosted-16core
target: x86_64-unknown-linux-gnu
svm_target_platform: linux-amd64
platform: linux
arch: amd64
- runner: ubuntu-24.04-github-hosted-16core
target: aarch64-unknown-linux-gnu
svm_target_platform: linux-aarch64
platform: linux
arch: arm64
- runner: macos-latest
target: x86_64-apple-darwin
svm_target_platform: macosx-amd64
platform: darwin
arch: amd64
- runner: macos-latest
target: aarch64-apple-darwin
svm_target_platform: macosx-aarch64
platform: darwin
arch: arm64
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.tag || '' }}

# - uses: Swatinem/rust-cache@v2
# with:
# key: ${{ matrix.target }}
# cache-on-failure: true
- uses: Swatinem/rust-cache@v2
with:
key: ${{ matrix.target }}
cache-on-failure: true

# - name: Install required Rust targets
# run: rustup target add ${{ matrix.target }}
- name: Install required Rust targets
run: rustup target add ${{ matrix.target }}

# - uses: dtolnay/rust-toolchain@stable
# with:
# targets: ${{ matrix.target }}
- uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}

# - name: Install cross v0.2.5 from source
# run: cargo install cross --git https://github.com/cross-rs/cross --tag v0.2.5
- name: Install cross v0.2.5 from source
run: cargo install cross --git https://github.com/cross-rs/cross --tag v0.2.5

# # We diverge from upstream and build with cross as we're building static binaries
# - name: Build binaries
# env:
# SVM_TARGET_PLATFORM: ${{ matrix.svm_target_platform }}
# shell: bash
# run: |
# set -eo pipefail
# target="${{ matrix.target }}"
# flags=()
# We diverge from upstream and build with cross as we're building static binaries
- name: Build binaries
env:
SVM_TARGET_PLATFORM: ${{ matrix.svm_target_platform }}
shell: bash
run: |
set -eo pipefail
target="${{ matrix.target }}"
flags=()
# # Disable asm-keccak, see https://github.com/alloy-rs/core/issues/711
# # # Remove jemalloc, only keep `asm-keccak` if applicable
# # if [[ "$target" != *msvc* && "$target" != "aarch64-unknown-linux-gnu" ]]; then
# # flags+=(--features asm-keccak)
# # fi
# Disable asm-keccak, see https://github.com/alloy-rs/core/issues/711
# # Remove jemalloc, only keep `asm-keccak` if applicable
# if [[ "$target" != *msvc* && "$target" != "aarch64-unknown-linux-gnu" ]]; then
# flags+=(--features asm-keccak)
# fi
# RUSTFLAGS='-C target-feature=+crt-static' OPENSSL_STATIC=1 cross build --release --bin forge --bin cast --target "$target" "${flags[@]}"
RUSTFLAGS='-C target-feature=+crt-static' OPENSSL_STATIC=1 cross build --release --bin forge --bin cast --target "$target" "${flags[@]}"
# bins=(cast forge)
# for name in "${bins[@]}"; do
# bin=./target/$target/release/$name
# file "$bin" || true
# ldd "$bin" || true
# $bin --version || true
# echo "${name}_bin_path=${bin}" >> $GITHUB_ENV
# done
bins=(cast forge)
for name in "${bins[@]}"; do
bin=./target/$target/release/$name
file "$bin" || true
ldd "$bin" || true
$bin --version || true
echo "${name}_bin_path=${bin}" >> $GITHUB_ENV
done
# - name: Archive binaries
# id: artifacts
# env:
# PLATFORM_NAME: ${{ matrix.platform }}
# TARGET: ${{ matrix.target }}
# ARCH: ${{ matrix.arch }}
# VERSION_NAME: ${{ needs.prepare.outputs.version_name }}
# shell: bash
# run: |
# if [ "$PLATFORM_NAME" == "linux" ]; then
# tar -czvf "foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" -C ./target/${TARGET}/release forge cast
# echo "file_name=foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" >> $GITHUB_OUTPUT
# elif [ "$PLATFORM_NAME" == "darwin" ]; then
# # We need to use gtar here otherwise the archive is corrupt.
# # See: https://github.com/actions/virtual-environments/issues/2619
# gtar -czvf "foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" -C ./target/${TARGET}/release forge cast
# echo "file_name=foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" >> $GITHUB_OUTPUT
# fi
- name: Archive binaries
id: artifacts
env:
PLATFORM_NAME: ${{ matrix.platform }}
TARGET: ${{ matrix.target }}
ARCH: ${{ matrix.arch }}
VERSION_NAME: ${{ needs.prepare.outputs.version_name }}
shell: bash
run: |
if [ "$PLATFORM_NAME" == "linux" ]; then
tar -czvf "foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" -C ./target/${TARGET}/release forge cast
echo "file_name=foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" >> $GITHUB_OUTPUT
elif [ "$PLATFORM_NAME" == "darwin" ]; then
# We need to use gtar here otherwise the archive is corrupt.
# See: https://github.com/actions/virtual-environments/issues/2619
gtar -czvf "foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" -C ./target/${TARGET}/release forge cast
echo "file_name=foundry_zksync_${VERSION_NAME}_${PLATFORM_NAME}_${ARCH}.tar.gz" >> $GITHUB_OUTPUT
fi
# - name: Build man page
# id: man
# if: matrix.target == 'x86_64-unknown-linux-gnu'
# env:
# PLATFORM_NAME: ${{ matrix.platform }}
# TARGET: ${{ matrix.target }}
# VERSION_NAME: ${{ needs.prepare.outputs.version_name }}
# shell: bash
# run: |
# sudo apt-get -y install help2man
# help2man -N ./target/${TARGET}/release/forge > forge.1
# help2man -N ./target/${TARGET}/release/cast > cast.1
# gzip forge.1
# gzip cast.1
# tar -czvf "foundry_man_${VERSION_NAME}.tar.gz" forge.1.gz cast.1.gz
# echo "foundry_man=foundry_man_${VERSION_NAME}.tar.gz" >> $GITHUB_OUTPUT
- name: Build man page
id: man
if: matrix.target == 'x86_64-unknown-linux-gnu'
env:
PLATFORM_NAME: ${{ matrix.platform }}
TARGET: ${{ matrix.target }}
VERSION_NAME: ${{ needs.prepare.outputs.version_name }}
shell: bash
run: |
sudo apt-get -y install help2man
help2man -N ./target/${TARGET}/release/forge > forge.1
help2man -N ./target/${TARGET}/release/cast > cast.1
gzip forge.1
gzip cast.1
tar -czvf "foundry_man_${VERSION_NAME}.tar.gz" forge.1.gz cast.1.gz
echo "foundry_man=foundry_man_${VERSION_NAME}.tar.gz" >> $GITHUB_OUTPUT
# # Creates the release for this specific version
# - name: Create release
# if: ${{ inputs.tag == '' }}
# uses: softprops/action-gh-release@v2
# with:
# name: ${{ needs.prepare.outputs.release_name }}
# tag_name: ${{ needs.prepare.outputs.tag_name }}
# prerelease: ${{ needs.prepare.outputs.prerelease }}
# body: ${{ needs.prepare.outputs.changelog }}
# files: |
# ${{ steps.artifacts.outputs.file_name }}
# ${{ steps.man.outputs.foundry_man }}
# Creates the release for this specific version
- name: Create release
if: ${{ inputs.tag == '' }}
uses: softprops/action-gh-release@v2
with:
name: ${{ needs.prepare.outputs.release_name }}
tag_name: ${{ needs.prepare.outputs.tag_name }}
prerelease: ${{ needs.prepare.outputs.prerelease }}
body: ${{ needs.prepare.outputs.changelog }}
files: |
${{ steps.artifacts.outputs.file_name }}
${{ steps.man.outputs.foundry_man }}
# - name: Update release-please release artifacts
# if: ${{ inputs.tag != '' }}
# uses: softprops/action-gh-release@v2
# with:
# tag_name: ${{ inputs.tag }}
# files: |
# ${{ steps.artifacts.outputs.file_name }}
# ${{ steps.man.outputs.foundry_man }}
- name: Update release-please release artifacts
if: ${{ inputs.tag != '' }}
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ inputs.tag }}
files: |
${{ steps.artifacts.outputs.file_name }}
${{ steps.man.outputs.foundry_man }}
# - name: Binaries attestation
# uses: actions/attest-build-provenance@v2
# with:
# subject-path: |
# ${{ env.cast_bin_path }}
# ${{ env.forge_bin_path }}
- name: Binaries attestation
uses: actions/attest-build-provenance@v2
with:
subject-path: |
${{ env.cast_bin_path }}
${{ env.forge_bin_path }}
# # If this is a nightly release, it also updates the release
# # tagged `nightly` for compatibility with `foundryup`
# - name: Update nightly release
# if: ${{ env.IS_NIGHTLY == 'true' }}
# uses: softprops/action-gh-release@v2
# with:
# name: "Nightly foundry-zksync"
# tag_name: "nightly"
# prerelease: true
# body: ${{ needs.prepare.outputs.changelog }}
# files: |
# ${{ steps.artifacts.outputs.file_name }}
# ${{ steps.man.outputs.foundry_man }}
# If this is a nightly release, it also updates the release
# tagged `nightly` for compatibility with `foundryup`
- name: Update nightly release
if: ${{ env.IS_NIGHTLY == 'true' }}
uses: softprops/action-gh-release@v2
with:
name: "Nightly foundry-zksync"
tag_name: "nightly"
prerelease: true
body: ${{ needs.prepare.outputs.changelog }}
files: |
${{ steps.artifacts.outputs.file_name }}
${{ steps.man.outputs.foundry_man }}
# retry-on-failure:
# if: failure() && fromJSON(github.run_attempt) < 3
# needs: [release]
# runs-on: ubuntu-latest
# steps:
# - env:
# GH_REPO: ${{ github.repository }}
# GH_TOKEN: ${{ github.token }}
# run: gh workflow run retry.yml -F run_id=${{ github.run_id }}
retry-on-failure:
if: failure() && fromJSON(github.run_attempt) < 3
needs: [release]
runs-on: ubuntu-latest
steps:
- env:
GH_REPO: ${{ github.repository }}
GH_TOKEN: ${{ github.token }}
run: gh workflow run retry.yml -F run_id=${{ github.run_id }}

# cleanup:
# name: Release cleanup
# runs-on: ubuntu-latest
# timeout-minutes: 30
# needs: release
# if: always()
# steps:
# - uses: actions/checkout@v4
cleanup:
name: Release cleanup
runs-on: ubuntu-latest
timeout-minutes: 30
needs: release
if: always()
steps:
- uses: actions/checkout@v4

# # Moves the `nightly` tag to `HEAD`
# - name: Move nightly tag
# if: ${{ env.IS_NIGHTLY == 'true' }}
# uses: actions/github-script@v7
# with:
# script: |
# const moveTag = require('./.github/scripts/move-tag.js')
# await moveTag({ github, context }, 'nightly')
# Moves the `nightly` tag to `HEAD`
- name: Move nightly tag
if: ${{ env.IS_NIGHTLY == 'true' }}
uses: actions/github-script@v7
with:
script: |
const moveTag = require('./.github/scripts/move-tag.js')
await moveTag({ github, context }, 'nightly')
# - name: Delete old nightlies
# uses: actions/github-script@v7
# with:
# script: |
# const prunePrereleases = require('./.github/scripts/prune-prereleases.js')
# await prunePrereleases({github, context})
- name: Delete old nightlies
uses: actions/github-script@v7
with:
script: |
const prunePrereleases = require('./.github/scripts/prune-prereleases.js')
await prunePrereleases({github, context})

0 comments on commit 0c7746e

Please sign in to comment.