Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GitHub Actions workflow to Rails #36893

Open
wants to merge 1 commit into
base: master
from

Conversation

@eileencodes
Copy link
Member

eileencodes commented Aug 8, 2019

This PR adds the necessary workflow to use GitHub Actions on the
Rails repo. There are a couple of things missing but the majority of
tests are passing for Linux. 馃帀

The changes to ActionPack and Railties are due to other CI's pretending
they are a tty, but Actions doesn't act as a tty so we need to handle
these differently.

Co-Authored-By: John Hawthorn john@hawthorn.email
Co-Authored-By: Aaron Patterson aaron.patterson@gmail.com
Co-Authored-By: Edward Thomson ethomson@edwardthomson.com

@rafaelfranca

This comment has been minimized.

Copy link
Member

rafaelfranca commented Aug 8, 2019

What advantages does it brings over buildkite? Can we parallelize builds across multiple machines easily?

@eileencodes eileencodes force-pushed the add-github-actions-to-rails branch 2 times, most recently from a0ae624 to d2396d1 Aug 8, 2019
@eileencodes

This comment has been minimized.

Copy link
Member Author

eileencodes commented Aug 8, 2019

We don't yet have everything we'd need to switch over. I wanted to get this running so we can see how it feels, figure out the pros/cons, and potentially make our CI a bit more robust with windows and/or macos testing. I've opened this as a starting point for discussion. 馃槃 We can always start on a smaller project under the Rails name as well.

This PR adds the necessary workflow to use GitHub Actions on the
Rails repo. There are a couple of things missing but the majority of
tests are passing for Linux. 馃帀

The changes to ActionPack and Railties are due to other CI's pretending
they are a tty, but Actions doesn't act as a tty so we need to handle
these differently.

Co-Authored-By: John Hawthorn <john@hawthorn.email>
Co-Authored-By: Aaron Patterson <aaron.patterson@gmail.com>
Co-Authored-By: Edward Thomson <ethomson@edwardthomson.com>
@eileencodes eileencodes force-pushed the add-github-actions-to-rails branch from d2396d1 to ba9415d Aug 8, 2019
@rafaelfranca

This comment has been minimized.

Copy link
Member

rafaelfranca commented Aug 8, 2019

馃憤 I do think without a way to parallelize tests between machines we will slow down our suite but running it on mac os and windows and keeping buildkite to run our linux tests would be great.

@yahonda

This comment has been minimized.

Copy link
Contributor

yahonda commented Aug 20, 2019

Would you consider to implement RuboCop check for pull requests? We may not have to wait for CodeClimate releases newer version of channels like rubocop-0-74.

- name: Install dependencies
run: |
sudo gem install bundler -v '1.17.3'
bundle install -j8

This comment has been minimized.

Copy link
@morgoth

morgoth Sep 16, 2019

Member

@eileencodes Do you know what would be the solution to cache gems between builds using GH actions? If I'm not wrong every build has to fetch all the gems even when there were no changes to Gemfile.lock

This comment has been minimized.

Copy link
@ethomson

ethomson Sep 19, 2019

We're working on adding caching to GitHub Actions - we should have it available soon, in the meantime you're right that this is fetching all gems.

This comment has been minimized.

Copy link
@rmacklin

rmacklin Nov 5, 2019

Contributor

For anyone following along, caching dependencies is now supported:
https://github.blog/changelog/2019-11-04-github-actions-adds-dependency-caching/
馃帀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
7 participants
You can鈥檛 perform that action at this time.