|
19 | 19 | - 'release' |
20 | 20 | - 'beta' |
21 | 21 | - 'alpha' |
22 | | - publish-cf-mr: |
23 | | - description: Publish to CF / MR |
| 22 | + publish-cf: |
| 23 | + description: Publish to CF |
| 24 | + default: true |
| 25 | + type: boolean |
| 26 | + publish-mr: |
| 27 | + description: Publish to MR |
24 | 28 | default: true |
25 | 29 | type: boolean |
26 | 30 | publish-gh: |
|
37 | 41 | required: true |
38 | 42 | type: boolean |
39 | 43 |
|
| 44 | +env: |
| 45 | + CHANGELOG_LOCATION: "build/gh_changelog.md" |
| 46 | + |
40 | 47 | jobs: |
41 | 48 | build: |
42 | 49 | runs-on: ubuntu-latest |
|
68 | 75 | fi |
69 | 76 | echo "publish-gh=${{ inputs.publish-gh }}" >> $GITHUB_ENV |
70 | 77 | else |
71 | | - if [ "${{ inputs.publish-cf-mr }}" == "true" ]; then |
| 78 | + if [ "${{ inputs.publish-cf }}" == "true" ] || [ "${{ inputs.publish-mr }}" == "true" ]; then |
72 | 79 | echo "publish-gh=true" >> $GITHUB_ENV |
73 | 80 | else |
74 | 81 | echo "publish-gh=${{ inputs.publish-gh }}" >> $GITHUB_ENV |
|
77 | 84 |
|
78 | 85 | - name: Set version |
79 | 86 | if: env.UPDATED == 'false' # only change new version if it's not already updated |
80 | | - run: sed -i "s/mod_version.*=.*/mod_version = ${{ github.event.inputs.version }}/g" gradle.properties |
| 87 | + run: sed -i "s/modVersion.*=.*/modVersion = ${{ github.event.inputs.version }}/g" gradle.properties |
81 | 88 |
|
82 | 89 | - name: Commit and push gradle.properties |
83 | 90 | if: env.UPDATED == 'false' # only push new version if it's not already updated |
@@ -126,46 +133,38 @@ jobs: |
126 | 133 | RELEASE_JSON=$(curl -sSL $RELEASE_URL) |
127 | 134 | CHANGELOG="$(echo $RELEASE_JSON | jq -r '.body')" |
128 | 135 | if [ "$CHANGELOG" == "null" ]; then |
129 | | - echo "No changelog found" > build/changelog.md |
| 136 | + echo "No changelog found" > $CHANGELOG_LOCATION |
130 | 137 | else |
131 | | - echo "$CHANGELOG" > build/changelog.md |
| 138 | + echo "$CHANGELOG" > $CHANGELOG_LOCATION |
132 | 139 | fi |
133 | 140 |
|
134 | | - - name: Publish Minecraft Mods |
135 | | - if: ${{ inputs.publish-cf-mr }} |
136 | | - uses: Kir-Antipov/mc-publish@v3.2 |
| 141 | + - name: Publish to Curseforge |
| 142 | + if: env.publish-cf == 'true' |
| 143 | + uses: gradle/gradle-build-action@v2 |
| 144 | + env: |
| 145 | + CURSEFORGE_API_KEY: "${{ secrets.CURSEFORGE_TOKEN }}" |
| 146 | + CHANGELOG_LOCATION: $CHANGELOG_LOCATION |
| 147 | + RELEASE_TYPE: "${{ inputs.release-type }}" |
| 148 | + with: |
| 149 | + arguments: 'curseforge' |
| 150 | + generate-job-summary: false |
| 151 | + |
| 152 | + - name: Publish to Modrinth |
| 153 | + if: env.publish-mr == 'true' |
| 154 | + uses: gradle/gradle-build-action@v2 |
| 155 | + env: |
| 156 | + MODRINTH_API_KEY: "${{ secrets.MODRINTH_TOKEN }}" |
| 157 | + CHANGELOG_LOCATION: $CHANGELOG_LOCATION |
| 158 | + RELEASE_TYPE: "${{ inputs.release-type }}" |
137 | 159 | with: |
138 | | - curseforge-id: 624243 |
139 | | - curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }} |
140 | | - |
141 | | - modrinth-id: Ecvd12QC |
142 | | - modrinth-featured: true |
143 | | - modrinth-token: ${{ secrets.MODRINTH_TOKEN }} |
144 | | - |
145 | | - files-primary: build/libs/!(*-@(dev|sources|javadoc)).jar |
146 | | - files-secondary: build/libs/*-@(dev|sources|javadoc).jar |
147 | | - name: "${GITHUB_REPOSITORY#*/}-${{ github.event.inputs.version }}" |
148 | | - version: ${{ github.event.inputs.version }} |
149 | | - version-type: ${{ github.event.inputs.release-type }} |
150 | | - changelog-file: build/changelog.md |
151 | | - loaders: | |
152 | | - forge |
153 | | - game-versions: | |
154 | | - 1.12.2 |
155 | | - dependencies: | |
156 | | - mixin-booter@8.3(required) |
157 | | - jei(optional) |
158 | | - hei(optional) |
159 | | - blur(optional) |
160 | | - java: | |
161 | | - 8 |
162 | | - retry-attempts: 2 |
| 160 | + arguments: 'modrinth' |
| 161 | + generate-job-summary: false |
163 | 162 |
|
164 | 163 | - name: Publish to maven |
165 | 164 | if: ${{ inputs.publish-maven }} |
166 | 165 | uses: gradle/gradle-build-action@v2 |
167 | 166 | with: |
168 | 167 | arguments: publish |
169 | 168 | env: |
170 | | - MAVEN_USERNAME: ${{ secrets.MAVEN_NAME }} |
| 169 | + MAVEN_USER: ${{ secrets.MAVEN_NAME }} |
171 | 170 | MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} |
0 commit comments