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

Add MSVC build #9740

Merged
merged 3 commits into from
May 5, 2020
Merged

Add MSVC build #9740

merged 3 commits into from
May 5, 2020

Conversation

adrido
Copy link
Contributor

@adrido adrido commented Apr 24, 2020

This adds MSVC builds to GitHub actions including x86, x64, portable and installer

To do

This PR is Ready for Review.

How to test

Wait until build completes, go to Actions download artifact and try it.

Copy link
Member

@nerzhul nerzhul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Except the packaging fine to me

.github/workflows/build.yml Outdated Show resolved Hide resolved
.github/workflows/build.yml Show resolved Hide resolved
@nerzhul nerzhul added @ Build CMake, build scripts, official builds, compiler and linker errors Windows labels Apr 24, 2020
generator: "-G'Visual Studio 16 2019' -A x64",
vcpkg_triplet: x64-windows
}
type: [portable, installer]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

portable is pretty much guaranteed to work, it's enough if these jobs test only the installer

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Someone still have to do it. If there is a change, that cant be tested by simply compiling it, users have to either compile the changes by themself or they can now just download the package and and try it without the need of compiling.

It runs parallel, its already implemented, why not use it?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Someone still have to do it.

The Gitlab pipeline already tests ZIP package generation.

If there is a change, that cant be tested by simply compiling it, users have to either compile the changes by themself or they can now just download the package and and try it without the need of compiling.

I am not saying artifacts should be removed.

It runs parallel, its already implemented, why not use it?

I don't really like have the CI waste time even if it's "free".

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remember that we can run 10 jobs in parallel in the free version here, but we may just run this on master, it's less runs that on each pull request, and is more reasonable no ? :)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's only 10 jobs in parallel? Then this definitely does make a difference.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh yeah it's 20, we are fine then

Yeah skip the installer variant then.

😂 Keep it as its currently is, or skip the installer?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still propose having just portable builds since that fulfills both the "test compiling with MSVC" and "produce usable artifact".

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you produce installer builds on tagged commits?

Copy link
Contributor Author

@adrido adrido Apr 30, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you produce installer builds on tagged commits?

could be possible https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idif But it depends on how does the if work in combination with the matrix

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you produce installer builds on tagged commits?

could be possible https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idif But it depends on how does the if work in combination with the matrix

Sadly it isn't possible yet https://github.community/t5/GitHub-Actions/Matrix-cannot-be-used-in-jobs-level-if/td-p/41048

I would suggest to create a build-release.yml that is doing the full job (including minetest game) if a tag is pushed. But I think that will be better done in a separate PR

I currently disabled the installer builds. If someone is working on the installer he can simply enable them.

@sfan5
Copy link
Member

sfan5 commented May 2, 2020

I don't know if Github's documentation is wrong or whatever, but here you can see 10 jobs running and one waiting to be ran. This implies there are not 20 but 10 concurrent jobs.
Bildschirmfoto_2020-05-02_12-55-40

@adrido
Copy link
Contributor Author

adrido commented May 4, 2020

grafik
11 Jobs running, a few seconds later there were 13 running 1 one finished.
So I couldn't reproduce it, did you report it to GitHub?

Copy link
Member

@sfan5 sfan5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

64-bit build crashes in Wine, 32-bit works ¯\_(ツ)_/¯

@nerzhul nerzhul merged commit f34c62c into minetest:master May 5, 2020
@nerzhul
Copy link
Member

nerzhul commented May 5, 2020

merged, thanks for your time. Maybe someone can provide a macosx one after that ? (don't know if we have mac osx users yet)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
@ Build CMake, build scripts, official builds, compiler and linker errors >= Two approvals ✅ ✅ Windows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants