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

Mac CI fixes #29

Merged
merged 2 commits into from
Apr 18, 2024
Merged

Mac CI fixes #29

merged 2 commits into from
Apr 18, 2024

Conversation

danra
Copy link
Contributor

@danra danra commented Apr 17, 2024

No description provided.

@Arcnor
Copy link
Collaborator

Arcnor commented Apr 17, 2024

Hey, thanks for the PR!

There have been other changes in the meantime, so at least part of your PR won't work as is anymore (brew is now used on main due to another Mac PR being merged). Regarding the artifact name, that's great, but mac artifacts are still not being pulled either way, bigger changes are needed there.

And finally, is there a particular reason you want to have ninja specifically for macOS?

@Arcnor Arcnor self-assigned this Apr 17, 2024
@danra
Copy link
Contributor Author

danra commented Apr 17, 2024

There have been other changes in the meantime

Rebased

Regarding the artifact name, that's great, but mac artifacts are still not being pulled either way, bigger changes are needed there.

How so? Worked fine yesterday in the branch CI https://github.com/kevinbentley/Descent3/actions/runs/8715829209

And finally, is there a particular reason you want to have ninja specifically for macOS?

Just that it's faster than Xcode (which could also work)

@Arcnor
Copy link
Collaborator

Arcnor commented Apr 17, 2024

Regarding the artifact name, that's great, but mac artifacts are still not being pulled either way, bigger changes are needed there.

How so? Worked fine yesterday in the branch CI https://github.com/kevinbentley/Descent3/actions/runs/8715829209

Not sure what changed there then, but even in the case of that previous build I don't think the artifacts are complete, it's missing the dylib for the scripts for example, although I suspect those should be static instead of shared, but we'll see.

And finally, is there a particular reason you want to have ninja specifically for macOS?

Just that it's faster than Xcode (which could also work)

Well, the current build is failing because of it, but besides that, the build seems to be fast enough as it is (it might be using make instead of xcodebuild, not sure). Can you remove the Ninja step for now, just to have a few less moving parts? We can add that at a later date I think.

@danra
Copy link
Contributor Author

danra commented Apr 17, 2024

Well, the current build is failing because of it, but besides that, the build seems to be fast enough as it is (it might be using make instead of xcodebuild, not sure). Can you remove the Ninja step for now, just to have a few less moving parts? We can add that at a later date I think.

We need some multi-config generator (without changing the CI further). Make isn't one, and is the default. So we need to set a different a generator anyway. The only remaining delta between xcode and Ninja Multi-Config generators is the extra brew dependency, doesn't seem significant.

@Arcnor
Copy link
Collaborator

Arcnor commented Apr 17, 2024

Well, the current build is failing because of it, but besides that, the build seems to be fast enough as it is (it might be using make instead of xcodebuild, not sure). Can you remove the Ninja step for now, just to have a few less moving parts? We can add that at a later date I think.

We need some multi-config generator (without changing the CI further). Make isn't one, and is the default. So we need to set a different a generator anyway. The only remaining delta between xcode and Ninja Multi-Config generators is the extra brew dependency, doesn't seem significant.

I'm not sure we need a multi-config generator at all. The build runs in parallel in different agents, so having multi config is useless in this scenario.

@danra
Copy link
Contributor Author

danra commented Apr 17, 2024

I'm not sure we need a multi-config generator at all. The build runs in parallel in different agents, so having multi config is useless in this scenario.

You're right, it's actually probably better to configure once (using a multi-build config), and build both configs, avoiding a matrix for Debug/Release in the first place.

Anyway, uploading the artifacts is set up (was set up also before I added macOS CI) to work with folder structure matching multi-config.

This works so let's merge it in. Can further tweak later.

@JeodC JeodC added this to the All platforms building milestone Apr 17, 2024
@JeodC JeodC added the workflow Modifications to the github workflows label Apr 17, 2024
danra added 2 commits April 17, 2024 16:20
Specifically Ninja Multi-Config (it's fast)

Fixes CI not actually building multiple configs, as well as artifacts not found in expected locations
@Arcnor Arcnor merged commit 623cafc into DescentDevelopers:main Apr 18, 2024
4 checks passed
JeodC pushed a commit that referenced this pull request Apr 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
workflow Modifications to the github workflows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants