alexevanczuk / packs

A pure Rust implementation of packwerk, a gradual modularization tool for Ruby
MIT License
70 stars 7 forks source link

Update ci to generate a dotslash file #199

Closed perryqh closed 4 months ago

perryqh commented 4 months ago

What

We started using dotslash to launch pks. We named the dotslash file pks and put it in the Rails bin directory. We now launch pks with bin/pks.

The reason we decided to take this approach was to ensure that the correct version of pks is always used and to provided a consistent installation for both mac and linux.

How

This PR use the facebook/dotslash-publish-release@v1 github action to create and upload a dotslash file into the release assets. The file is simply named pks.

I also broke out a separate upload-mac-binary job that is run in parallel with upload-linux-bin

Test

https://github.com/perryqh/packs-ci/releases/tag/v0.2.8

perryqh commented 4 months ago

@alexevanczuk we're already using it our monolith. We manually created the dotslash file and saved it to bin/pks. Our precommit hooks are bin/pks check and bin/pks validate. CI is also using bin/pks to run its checks.

This PR generates the dotslash file so we don't need to do it manually.

Users just need to have the dotslash cli installed.

Thanks to @ethankhall for the dotslash idea and a reference for how to use it.

alexevanczuk commented 4 months ago

Cool thanks for the info @perryqh !! Awesome to hear.