Remove (unused) release step of build.yml #59
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 Test | |
on: push | |
permissions: read-all | |
# update in build.yml and codeql.yml at same time | |
env: | |
PROTOC_VERSION: "32.0" | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
env: | |
PROTOC: protoc-release/bin/protoc | |
PROTOC_INC: protoc-release/include | |
PROTOC_PLATFORM: linux-x86_64 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
node-version: 20 | |
cache: ${{ !env.ACT && 'npm' || '' }} # cache API not available in ACT | |
- name: Install Protoc | |
run: | | |
echo "Fetching protoc" | |
curl --header 'Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' \ | |
-L https://github.com/protocolbuffers/protobuf/releases/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}-${PROTOC_PLATFORM}.zip \ | |
--output protoc-release.zip | |
unzip protoc-release.zip -d protoc-release | |
rm protoc-release.zip | |
- run: npm ci | |
- run: npm test | |
- run: npm run build | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: js | |
path: | | |
google-protobuf.js | |
package: | |
needs: build | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
# for now I'm disabling linux building as we don't have the tooling to support it | |
# os: [ ubuntu-latest ] | |
# cpu: | |
# - k8 # this build 'linux-x86_64', is currently working but not useful without the other architectures | |
# would need some kind of CROSSTOOL chain to build the other architectures | |
# or we'd have to use the https://github.com/uraimo/run-on-arch-action (which lacks support for x86_32) to build these | |
# - x86_32 | |
# - systemz | |
# - aarch64 | |
# - ppc64 | |
include: | |
# to ensure backwards compatibility as long as possible, use earliest versions of OSs available on Github Actions | |
- os: windows-2022 | |
cpu: x64_windows | |
bazel_target: dist_zip | |
- os: windows-2022 | |
cpu: x64_x86_windows | |
bazel_target: dist_zip | |
- os: macos-14 | |
cpu: darwin_arm64 | |
bazel_target: dist_zip | |
- os: macos-13 | |
cpu: darwin_x86_64 | |
bazel_target: dist_zip | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/download-artifact@v4 | |
if: ${{ !env.ACT }} | |
with: | |
name: js | |
- uses: bazel-contrib/[email protected] | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- run: mkdir out | |
# setup-bazelisk fails when running in ACT because the cache is not available so we need to ignore to let the bazel step run | |
- if: success() || env.ACT && failure() | |
run: bazel build --cpu=${{ matrix.cpu }} ${{ matrix.bazel_target || 'dist_all' }} | |
shell: bash | |
# need to copy to output directory as `bazel-bin` is a symlink and cannot be read by the actions/upload-artifact action | |
- run: cp bazel-bin/protobuf-javascript-* out/ | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release-${{ matrix.os }}-${{ matrix.cpu }} | |
path: out |