Skip to content

Commit e450553

Browse files
authored
add spacedock stuff
1 parent ae36a89 commit e450553

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

.github/workflows/release.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
name: Upload release
2+
env:
3+
MOD_ID: 3484
4+
KSP2_ID: 22407
25

36
on:
47
release:
@@ -24,10 +27,13 @@ jobs:
2427
run: |
2528
version=$(jq -r '.version' plugin_template/swinfo.json)
2629
echo "Version is $version"
30+
echo "version=$version" >> $GITHUB_ENV
2731
dotnet build "CommunityResources.sln" -c Release
2832
echo "release_filename=CommunityResources-$version.zip" >> $GITHUB_ENV
2933
echo "zip=$(ls -1 dist/CommunityResources-*.zip | head -n 1)" >> $GITHUB_ENV
3034
echo "upload_url=$(wget -qO- https://api.github.com/repos/$GITHUB_REPOSITORY/releases | jq '.[0].upload_url' | tr -d \")" >> $GITHUB_ENV
35+
echo "changelog=$(wget -qO- https://api.github.com/repos/$GITHUB_REPOSITORY/releases | jq '.[0].body' | tr -d \")" >> $GITHUB_ENV
36+
echo "${{ env.changelog }}" > ./changelog.md
3137
3238
- name: Upload zip to release
3339
uses: shogo82148/actions-upload-release-asset@v1.7.2
@@ -38,3 +44,32 @@ jobs:
3844
asset_path: ${{ env.zip }}
3945
asset_name: ${{ env.release_filename }}
4046
asset_content_type: application/zip
47+
48+
- name: Add Mask
49+
run: echo "::add-mask::${{ secrets.SPACEDOCK_PASSWORD }}"
50+
51+
- name: Log in to spacedock
52+
run: |
53+
login_response=$(curl -F username=${{ secrets.SPACEDOCK_USER }} -F password=${{ secrets.SPACEDOCK_PASSWORD }} -c ./cookies "https://spacedock.info/api/login")
54+
login_errored=$(echo $login_response | jq .error)
55+
if [ "$login_errored" == "true" ]; then
56+
echo "Login to space dock errored: $(echo $login_response | jq .reason)"
57+
exit 1
58+
else
59+
echo "Login to space dock successful"
60+
fi
61+
62+
- name: Query latest game version
63+
run: |
64+
echo "LATEST_GAME_VERSION=$(curl 'https://spacedock.info/api/${{ env.KSP2_ID }}/versions' | jq '.[0].friendly_version' | tr -d \")" >> $GITHUB_ENV
65+
66+
- name: Update mod on spacedock
67+
run: |
68+
result=$(curl -b ./cookies -F "version=${{ env.version }}" -F "changelog=@./changelog.md" -F "game-version=${{ env.LATEST_GAME_VERSION }}" -F "notify-followers=yes" -F "zipball=@${{ env.zip }}" "https://spacedock.info/api/mod/${{ env.MOD_ID }}/update")
69+
errored=$(echo $result | jq .error)
70+
if [ "$errored" == "true" ]; then
71+
echo "Upload to space dock errored: $(echo $result | jq .reason)"
72+
exit 1
73+
else
74+
echo "Upload to space dock successful"
75+
fi

0 commit comments

Comments
 (0)