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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

flyci: Test CI service with M2 instance #752

Merged
merged 1 commit into from
Feb 9, 2024
Merged

Conversation

jdemel
Copy link
Contributor

@jdemel jdemel commented Jan 30, 2024

Assuming their app has access to our git repo etc. This might be a viable option for the time being to get some more stability into the Apple Silicon support effort. It worked on my personal account:
https://github.com/jdemel/volk/actions/runs/7717048987/job/21035255427

This might be a viable option for the time being to get some more
stability into the Apple Silicon support effort.

Signed-off-by: Johannes Demel <[email protected]>
@kgantchev
Copy link

kgantchev commented Feb 2, 2024

Hi @jdemel,

Thank you for giving FlyCI a try. We're in early public Beta so please keep in mind that we're still ironing out some kinks. However, our team is always ready to respond should you run into any issues.

We would be really thankful if you could share a few words about your experience with FlyCI's M2 runners. How has your experience been so far?

Best Regards,
Kiril Gantchev

Discord: FlyCI | Twitter: flyciapp | LinkedIn: FlyCI

@jdemel
Copy link
Contributor Author

jdemel commented Feb 9, 2024

@kgantchev The setup was easy. The runnner is fast. We need to collect some more experience to tell you more.

@jdemel jdemel merged commit 77c73c6 into gnuradio:main Feb 9, 2024
34 checks passed
@jdemel
Copy link
Contributor Author

jdemel commented Feb 9, 2024

The MacOS install in this commit lacks liborc and thus, ORC is untested. This is actually the problematic part on Apple Silicon. Still, I'm happy this PR is merged, we can add ORC later.

@argilo
Copy link
Member

argilo commented Feb 9, 2024

The MacOS install in this commit lacks liborc and thus, ORC is untested.

I tested this on my fork by adding the following step:

    - name: Install ORC
      run: brew install orc

Unfortunately I was unable to reproduce the test failure that the Homebrew folks saw.

@kgantchev
Copy link

Hi @jdemel and @argilo,

Sorry if I'm being a pest here, but we would love to get your feedback and add it to our case studies section. This will highlight your project to our visitors and it will help us grow our community.

I have a few quick questions:

  • What motivated your choice to use FlyCI's MacOS runners, and what key benefits have you observed? (Performance, compatibility, etc.)
  • What has been your experience with the FlyCI runners so far?
  • What improvements have you noticed since integrating FlyCI's MacOS runners? (e.g., performance enhancements, reduced build times, developer productivity, cost savings)

@jdemel jdemel deleted the test-flyci branch March 30, 2024 22:13
@jdemel
Copy link
Contributor Author

jdemel commented Mar 30, 2024

Hi @kgantchev

I understand that you want to show success stories for FlyCI. I feel like it would need some more time to add VOLK as a success story though.

* **What motivated your choice to use FlyCI's MacOS runners, and what key benefits have you observed?** (Performance, compatibility, etc.)

It was the only MacOS/ARM choice I know of. The MacOS/ARM builds break randomly otherwise, or at least in unpredictable ways.

* **What has been your experience with the FlyCI runners so far?**

The build and test is very fast. Further, the FlyCI team is very helpful and responsive. They even suggested fixes to unrelated issues that we encountered with their runner first.

$ pip3 install mako
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
...
* **What improvements have you noticed since integrating FlyCI's MacOS runners?** (e.g., performance enhancements, reduced build times, developer productivity, cost savings)

Finally a CI pipeline for MacOS/ARM. We hope to improve stability with this.

@kgantchev
Copy link

kgantchev commented Mar 31, 2024

Hi @jdemel

We looked at the workflow and it looks like the issue is with the Python setup stage. The macos-latest label uses an Intel-based mac where the Python setup is different from the Python setup for ARM64. We recommend that you use setup-python as the initial step before installing any Python dependencies. This will also resolve the need for you to use the --break-system-packages flag.

For reference purposes, I forked your repo and made a PR with the changes in my fork. The dependency install on ARM64 now completes correctly and the tests pass.

Please give this solution a try and let me know if you're happy with the result. The solution should also apply to PR-761.

@kgantchev
Copy link

Hi @jdemel, have you had an opportunity to look over this solution to the issue you mentioned above?

@kgantchev
Copy link

Hi @jdemel, did you get a chance to look at the solution we recommended last week?

@jdemel
Copy link
Contributor Author

jdemel commented Apr 8, 2024

@kgantchev thanks for your suggestions. I appreciate it. I had a look at it.

I'd like to use the system install as much as possible to learn about the peculiarities of the specific system. I assume the issue was unrelated to the FlyCI runner. Thanks for pointing out an alternative approach.

@kgantchev
Copy link

I'd like to use the system install as much as possible to learn about the peculiarities of the specific system. I assume the issue was unrelated to the FlyCI runner.

I'm happy that the issue was resolved. Thank you for updating your answers too! Do you still feel that you need to evaluate our runners a bit more before we add VOLK to our case studies or is it OK for us to publish the feedback you've provided so far?

Alesha72003 pushed a commit to Alesha72003/volk that referenced this pull request May 15, 2024
flyci: Test CI service with M2 instance
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants