SkinChangerMod

SkinChangerMod

4.2k Downloads

Make CI automatically build and distribute the mod JAR file

boomboompower opened this issue ยท 3 comments

commented

As the name suggests, we want to implement a CI which automatically runs on each pull request, and on each push to the actual main branch of the mod.

Being a CI, all tasks listed below will be entirely automated.

Build operating systems

  • Windows
  • macOS
  • Linux

Each operating system should run a few major tasks

  1. Setting up the workspace
  2. Run gradlew setupCIWorkspace - We use setupCIWorkspace instead of setupDecompWorkspace because it sets up the bare minumum required to build the jar
  3. Run gradlew build

Additional tasks

The Linux job will require additional options. After the completion of gradlew build the CI should send the built JAR file along with the source to Github Releases.

commented

Note:

Here's a list of all CI commits as of now. The ones at the top are the first, and the ones at the end are the most recent.

CI Commits

73c5469 - Create gradle.yml
e842a2f - Update gradle.yml
a9f2009 - Update gradle.yml
af51b0f - Update gradle.yml
624b947 - Remove debug attribute
fdd7bc3 - Update ForgeGradle.yml
9417ca0 - Update ForgeGradle.yml
be61bd1 - Update ForgeGradle.yml
900ec30 - Force delete on workflow
8ab4d03 - For fun
a778a2d - Try with windows?
86c29e3 - Update and rename ForgeGradle.yml to ForgeGradleCI.yml
373a6a2 - Getting bored of this now
b361a61 - change to linux
8d10c24 - Don't bother obfuscating jar
d8b38a8 - Finally get CI working and add documentation
49b67ea - Fix documentation spelling
40effa1 - add windows
8cf86ca - Add macOS to CI
07b24fc - Add chmod to macOS
ccd6bc1 - artifacts
882461b - Update ForgeGradleCI.yml
1c5c52f - Beta CI
b94f89d - Fix Mixin's breaking the gradle build command
f1231d5 - Try adding run id?
d0f7b85 - Put sources in 1 jar
3acea1f - Revert previous commit & add deobfuscated sources to github

commented

Although this is marked as closed, there is more work which can be done on this in the future so I'll leave the in progress tag on the issue. Any new commits which relate to the CI will be referenced here as well.

commented

1.7.10 does not build sources and therefore has a slightly modified build script (pushed in e047ee9)

This should be noted for those wanting the 1.7.10 sources.