Commit Graph

13 Commits

Author SHA1 Message Date
Piotr Galar
4a101f40bb
ci: deprecate circle ci in favour of github actions (#11786) 2024-05-16 13:55:35 +02:00
Piotr Galar
2a0d8970e8
ci: ci: migrate the release workflow to github actions (#11785)
* ci: rename install ubuntu deps to install system dependencies

* ci: migrate the release workflow to github actions

* ci: set permissions required by the newly added workflows explicitly

* ci: prevent duplicate release and docker publishing

* ci: trigger docker workflow on push to master

* ci: do not pass tokens to goreleaser on dry release runs

* ci: specify higher permissions on a job level
2024-04-02 14:22:09 +01:00
Ian Davis
93d12e1642 Add v prefix to .tar.gz file names 2022-12-13 16:16:09 -08:00
Ian Davis
f8754d91f7 Switch release name template from "Release vX.X.X" to "vX.X.X":wq 2022-12-05 15:23:40 +00:00
Ian Davis
d48b6a0535 Add binary name to goreleaser build configs
Without this name, it assumes all binaries share the name of the project
(i.e. lotus), which causes them all to get renamed and collide when
generating the archive.
2022-11-18 16:34:49 +00:00
Ian Davis
33805a14b9 Forgot to include linux binaries in goreleaser 2022-11-16 19:48:05 +00:00
Ian Davis
75f9f72147 Skip homebrew release on prereleases (i.e. *-rc) 2022-11-07 16:18:01 +00:00
Ian Davis
ecef0b6361 Fix goreleaser release workflow 2022-11-07 16:17:22 +00:00
Ian Davis
568cd38b0f Rebuild pipeline using goreleaser prebuilt binaries
This builds three separate binaries (darwin/amd64, darwin/arm64,
linux/amd64), and then combines them into single release (including a
universal darwin binary) using goreleaser.

Also removes build-ntwk-{calibration,butterfly}
2022-11-07 16:16:19 +00:00
Ian Davis
0ad2fba4d2 Remove unneeded homebrew deps
We don't use these homebrew deps when installing a prebuilt binary.

Additionally, the bzr package was disabled
2022-10-27 10:37:29 +01:00
Ian Davis
3717795652 Switches goreleaser notes back to default (keep-existing) 2022-08-03 13:45:29 -07:00
Ian Davis
c759211032 Switch to filecoin-project from personal fork 2022-07-28 21:03:12 -07:00
Ian Davis
7f1b4dc438 Use goreleaser to build universal darwin binaries
This is a small refactor of our workflow to test out goreleaser, a yaml
based tool for building, packaging, and releasing go binaries on
multiple platforms. It supports building binaries for to most of the platforms we
care about, including linux and  macos, and also supports publishing
those binaries automatically as releases in Github, homebrew, snap, and
even apt / deb.

If this trial goes well, I think we should eventually replace the entire
release workflow with goreleaser. For now, this test is more tightly
scoped to only automated the MacOS release process, since that is the
one we have the most issues with. This PRi / commit:
- Builds darwin-amd64 and darwin-arm64 binaries of lotus, lotus-miner,
  and lotus-worker
- Packages them into a universal darwin binary
- Publishes those to a release in Github based on the current tag
- Uses the binaries in the release to auto-publish and updated homebrew
  configuration to filecoin-project/homebrew-lotus
- Does a `dry-run` build to produce a snapshot on release branches with
  no tag
- Manually generate and upload checksums after goreleaser
2022-07-28 20:37:42 -07:00