bufbuild / buf-setup-action Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
Not just only with buf-push action.
To be able to run the following command: buf generate buf.build/<org>/<repo>
.
Node 16 has reached its end of life, prompting us to initiate its deprecation process for GitHub Actions.
From https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20:
What you need to do
For Actions maintainers
Modify your actions to run on Node 20 instead of Node 16. For guidance, refer to the Actions configuration settings.
#9 added support for ARM environments, but no download exists for buf with the format buf-Linux-arm64
. One does exist for buf-Linux-aarch64
which is probably what should be downloaded.
From my github action:
Run bufbuild/buf-setup-action@v1
with:
buf_user: ***
buf_api_token: ***
github_token: ***
version: 1.29.0-1
buf_domain: buf.build
env:
GOPRIVATE: buf.build/gen/go
Setting up buf version "1.29.0-1"
Resolving the download URL for the current platform...
Error: Not Found - https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name
Hey, folks! Ran into a weird bug today with this action. On a PR, v0.41.0 of buf was configured to be run against but we received the following error:
Run bufbuild/[email protected]
Setting up buf version "0.41.0"
Resolving the download URL for the current platform...
Error: Unable to find Buf version "0.41.0" for platform "Linux" and architecture "x86_64".
The release does exist, and has a Linux/x86_64 version available to download, and there are currently no incidents on the GH APIs. Looking into the action's definition further, the List Releases endpoint is called, but without pagination. This causes the API to default to 30 results per page, and as of the release of v1.0.0-rc8 two hours ago, v0.41.0 became the 31st release.
We encountered this on v0.1.0 of the Action, but this affects all versions through latest.
Currently only linux
and x64
is supported as platform and architecture. We should add support for Windows and ARM platforms and architectures.
See
Lines 63 to 85 in d9a911b
It's idiomatic to create major version tags so users can use them in their actions reducing code churn to get the latest compatible version e.g.
bufbuild/buf-setup-action@v1
Could you add the creation of:
v<major>
You can see this in practice actions/checkout.
It would nice if the default version could be discovered from the repo's go.mod
version if present in the same vane as go-version-file for action/setup-go
steps:
- uses: actions/checkout@v2
# Installs version 1.26.0
- uses: bufbuild/[email protected]
with:
go-version-file: go.mod
The Octokit client in this action uses unauthenticated mode to perform GitHub API requests, however this means the action can fail due to rate limits being exceeded:
Support supplying a token as outlined in the documentation: https://github.com/actions/toolkit/blob/main/packages/github/README.md#usage
Currently we are missing the action for the new 1.10.0 release.
ref. #84
The problem is the repo(bufbuild/buf), doesn't publish Linux-arm64 package.
When going though their build script, I stumbled upon this changes.
https://github.com/bufbuild/buf/pull/323/files
Looks like for Linux-arm64 package, it instead builds Linux-aarch64 package.
And the setup action also will need to make similar change in the code base if this is to work.
Can you please clarify what scopes
the token needs?
It would be very helpful if the release would contain a change log. This would make updating the action way easier and avoid unexpected changes from being applied and breaking pipelines.
Hi, I'm trying to use github action Setup buf.
I couldn't find document for the github action except of https://github.com/marketplace/actions/setup-buf
If you have a document for it, please let me know.
Anyway, I tried wizhi/setup-buf@v1 without with.version
option.
- uses: wizhi/setup-buf@v1 # no specify with.version option
- run: buf --version
I expect to use latest version of buf. (current latest version is 0.41.0)
But, I got output 0.18.0
, not 0.41.0
0.18.0
even doesn't contain build command. So, I think it's too low version as default version.
So I want to suggest that use latest buf when use the github action without with.version option
Assuming that latest version is 0.41.0
, these below github action workflows should print same output. (0.41.0
)
- uses: wizhi/setup-buf@v1
- run: buf --version
- uses: wizhi/setup-buf@v1
with:
version: 0.41.0
- run: buf --version
The C-based gRPC protoc plugins still require protoc and not only buf's compiler, thus this Action should support installing protoc or at least have a documented way to do so.
I'm using https://github.com/arduino/setup-protoc
Users will also probably need the gRPC plugins, so installing gRPC seems equally important.
Setting up buf version "1.31.0"
Resolving the download URL for the current platform...
Error: Connect Timeout Error
Possible root cause and the solution is:
peter-evans/create-pull-request#2867
The current Makefile
setup isn't complete - new users need a variety of tools already installed in order to use it, and running make
won't automatically install the dependencies you need. This is prone to version mismatch bugs on different developer machines, and causes a lot of headache to get started with our GitHub action development (this also applies to buf-{lint,breaking,push}-action
).
Additionally, we should verify that make build
doesn't produce a diff in CI, similar to what we do for make generate
in our other repositories.
These are tasks that should have been done from the very beginning, but were left as an afterthought and repeatedly forgotten about.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.