S
Silk.NET3y ago
Aqua

CI discussion

I need to look up what CI is
13 Replies
Perksey
Perksey3y ago
you open your PR and all of the jobs start building the project, and in 3.0's case runs project tests to make sure you haven't broken anything. and also in 3.0's case it does all of it within seconds
Aqua
AquaOP3y ago
Huh That seems Incredibly useful
Perksey
Perksey3y ago
at the end of it, it reports a green or red light to say whether everything's hunky dory we also use continuous deployment (CD, but we tend to just call it CI anyways seeing as it uses the same system) to automatically push all of our packages e.g. whenever a commit to main is made, we pack all the projects and push it to the experimental feed automatically
Aqua
AquaOP3y ago
Damn
Perksey
Perksey3y ago
and likewise when a tag is made it's automatically packed & pushed to nuget
Aqua
AquaOP3y ago
oh my god I need this ignoring the fact that I can't seem to work out how to package native DLLs with nuget this sounds so useful to just automate everything
Perksey
Perksey3y ago
here's a screenshot from a 3.0 PR
No description
Perksey
Perksey3y ago
just copy the projects in src/Native tbh we spent ages figuring out how best to do it all of the CI config is just YAML. see: 2.X: https://github.com/dotnet/Silk.NET/tree/main/.github/workflows 3.0: https://github.com/dotnet/Silk.NET/tree/develop/3.0/.github/workflows
Aqua
AquaOP3y ago
I'll take a look Cause yeah I spent like 12 hours total and it would break either publishing to nuget or using the package directly
Perksey
Perksey3y ago
oh and GitHub gives all projects unlimited CI time for free
Aqua
AquaOP3y ago
Nice Yeah this sounds awesome
Perksey
Perksey3y ago
ftr given you're writing scripts that are running on a machine you don't control, it's very common when you're writing a new CI script that you have like 50 commits that all say "Update ci.yml" because that's the only way you can validate whether your changes have worked haha
Aqua
AquaOP3y ago
I see lol
Want results from more Discord servers?
Add your server