-
Notifications
You must be signed in to change notification settings - Fork 28
[DVT-85] add goreleaser to erigon github actions #3
Conversation
DVT-85 Erigon CI Flow
Create some workflow so that when a new version of erigon is tagged, a new version will be built and pushed to dockerhub: |
builder/files/erigon.service
Outdated
[Service] | ||
Restart=on-failure | ||
RestartSec=5s | ||
ExecStart=/usr/local/bin/erigon \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have to specify the bindir
for nfpm or does it default to this location
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
manually copy erigon binary to this dir in dockerfile.release here: https://github.com/maticnetwork/erigon/pull/3/files#diff-701366a9e47be6026c2b3a9cc9484a02f319b9b8469b28e907ac1237fe2456caR5
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to do some testing of the released artifacts. I think it's going to take some work to support operating systems that aren't using systemd or situations where people want to customize which network they're connecting to. I think for now, it's possible just to remove the service file and ship the binary.
agreed, seems an opportunity for us to setup up an automatic testing system for the releases on various linux distributions.. for now, i've removed the nfpms section / service file and i can file a ticket for this be a follow-on task |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Late LGTM but no deb/rpm packages?
to streamline the release process of new maticnetwork/erigon code changes, we've added a github actions automated workflow with goReleaser to support a wide variety of operating systems and linux distributions
linear ticket: https://linear.app/matic/issue/DVT-85/erigon-ci-flow
leveraging similar goReleaser structure already in place for bor, as seen here
the release process is triggered upon pushing a semantic-versioned tag, for example:
git tag v0.0.3 091ae61
git push origin dan/goreleaser_erigon tag v0.0.3
successful goReleaser github action run logs here: https://github.com/maticnetwork/erigon/runs/7202381340?check_suite_focus=true
further confirmations:
docker run 0xpolygon/erigon:0.0.2-alpha-arm64 --chain=mainnet \ --datadir /var/lib/erigon/data
![image](https://user-images.githubusercontent.com/100106211/177616614-31323469-974b-4944-a662-3c4a50c6304f.png)
- binaries also properly uploaded to github releases, see: https://github.com/maticnetwork/erigon/releases